Diretório que um usuário pode ler, mas root não pode?

8

Existe um diretório abaixo do meu homedir chamado ".gvfs". Como minha conta de usuário comum, posso lê-la bem:

~ $ ls -lart ~raldi/.gvfs
total 4
dr-x------  2 raldi raldi    0 2009-05-25 22:17 .
drwxr-xr-x 60 raldi raldi 4096 2009-05-25 23:08 ..
~ $ ls -d ~raldi/.gvfs
dr-x------ 2 raldi raldi 0 2009-05-25 22:17 /home/raldi/.gvfs

No entanto, como root, não consigo "ls" ou mesmo "ls -d":

# ls ~raldi/.gvfs
ls: cannot access /home/raldi/.gvfs: Permission denied
# ls -d ~raldi/.gvfs
ls: cannot access /home/raldi/.gvfs: Permission denied

E só para ter certeza:

# echo $UID $EUID
0 0

Esta é apenas uma instalação simples do Ubuntu 8.10, sem NFS ou algo assim. Vejo que o diretório está marcado como não legível para o mundo (e não para o mundo x), mas achei que nada disso fosse aplicado quando você é root. Por exemplo, posso criar um diretório mode-000 em / tmp e distribuí-lo para um usuário não-root, e o root não tem dificuldade em lê-lo, escrevê-lo, seja o que for.

Alguma ideia do que está acontecendo?

    
por raldi 26.05.2009 / 08:17

3 respostas

20

De: link

This is all unfortunate, but its a decision that has been taken by the fuse people at the kernel level (user others than the one who mounted the fs can't access it, including root) and there is nothing we can do about it.

Veja também: link

A solução parece ser atualizar seu /etc/fuse.conf e ative a opção user_allow_other . Você também pode precisar obter o gvfs para passar o allow_root ou allow_other, mas não tenho certeza de como fazer isso.

É claro que pode ser muito mais fácil simplesmente desistir de todas as ferramentas da GUI, como gvfs, e montar seus sistemas de arquivos a partir da linha de comando, onde você tem o controle completo de como exatamente algo é montado.

    
por 26.05.2009 / 09:07
5

O diretório .gvfs é o sistema de arquivos do Gnome VFS userspace que fornece um caminho direto para sistemas de arquivos virtuais (por exemplo, montagens de samba remotas, montagens webdav) para que o Gnome transmita caminhos para programas que não são compatíveis com VFS arquivos.

Visto que é uma montagem FUSE & aplicativo pode negar permissões para root - o agente que executa as verificações de acesso neste caso é o aplicativo FUSE, não o kernel.

Por padrão, o daemon gvfs apenas permite que o proprietário percorra o diretório.

    
por 19.03.2014 / 15:40
0

Pode ser algumas coisas, por ordem de probabilidade

  • verifique / var / log / messages (ou / var / log / syslog) para possível corrupção do sistema de arquivos
  • você está usando o SELinux?
  • o google sugere que lsattr ~ raldi / .gvfs pode indicar recursos especiais sendo aplicados a esse arquivo.
por 26.05.2009 / 08:27