Como usar 'chown' e 'chmod' para criar um link de “pipe” ou “pass through” no diretório guest para outro lugar

2

Eu quero estender o tamanho da minha partição guest ou descobrir como copiar material da partição guest para o diretório /home normal.

(Devido a alguns outros problemas, só posso executar Xorg como convidado, mas posso fazer login no console virtual como eu ou como root.)

Aqui está a motivação: Eu quero torrar um arquivo grande. É maior que meu sistema de arquivos convidado. Mas eu tenho muito espaço no meu disco real , eu não consigo fazer login graficamente.

Então eu tentei configurar um "pipe" para tirar o arquivo do tmpfs. Eu fiz:

su -u myself 
#catch
mkdir ~/receiver_dir

sudo su
cd /tmp/guest-lkj567UIO/ 
#throw
ln -s mario_pipe /home/myself/receiver_dir
chown -R guest-lkj567UIO /home/myself/receiver_dir
chown -R guest-lkj567UIO /tmp/guest-lkj567UIO/mario_pipe
chmod -R a+rw /home/myself/receiver_dir
chmod -R a+rw /tmp/guest-lkj567UIO/mario_pipe

su -u guest-lkj567UIO
cd /tmp/guest-lkj567UIO
cd mario_pipe
touch something #success!

No entanto, quando tento torrent para /tmp/guest-lkj567UIO/mario_pipe , a Transmission diz que não tenho permissões de gravação. Mas parece que eu acabei de escrever lá? E que todo mundo ( a+rw ) pode escrever de fato?

Talvez isso indique que eu não compreendo chown e chmod , mas nada de suas páginas man aparece.

    
por isomorphismes 25.06.2012 / 03:54

1 resposta

5

Quando você faz o login como convidado, há um perfil apparmor que é carregado para restringir o acesso para bloquear a conta do convidado para que ele não possa gravar fora de seu diretório pessoal, mesmo que as permissões do arquivo forneçam acesso.

Você pode conseguir contornar isso usando uma montagem de bind em vez de um symlink:

mkdir /tmp/guest-lkj567UIO/mario_pipe
mount --bind /home/myself/receiver_dir /tmp/guest-lkj567UIO/mario_pipe
    
por psusi 25.06.2012 / 04:09