Montando um sistema de arquivos ext3 com privilégios de usuário


12

Estou tentando montar um sistema de arquivos ext3 de outra instalação do Linux para que o usuário, não o root, tenha acesso total a todos os arquivos. (Eu realmente preciso que o usuário tenha acesso a esses arquivos, porque gostaria de usá-los em outro computador via sshfs, e o sshfs concederá apenas direitos de acesso ao usuário aos arquivos.)

Se eu executar, mount /dev/sda1 /mnt/whatevertodos os arquivos são acessíveis apenas pela raiz.

Eu também tentei, mount -o nosuid,uid=1000,gid=1000 /dev/sda1 /mnt/whateverconforme as instruções de uma pergunta do SuperUser discutir ext4, mas que falha com um erro e dmesgrelata:

EXT3-fs: Unrecognized mount option "uid=1000" or missing value

Como posso montar o sistema de arquivos?


1
Eu diria que a resposta de Gilles na pergunta do Superusuário que você mencionou é a correta. De fato, o man page mount (8) não lista uid=...e gid=...opções para nenhum dos sistemas de arquivos ext2 / 3/4.
Riccardo Murri

@ Riccardo Obrigado, essa foi a solução correta! Primeiro monte o ext em algum diretório regularmente e, em seguida, monte esse diretório bindfs -u $(id -u) -g $(id -g)no destino final. Escreva como resposta, talvez?
Ilari Kajaste

1
Como a resposta é de Gilles e ele também é muito ativo neste fórum, deixarei que ele o repita aqui e colete o crédito merecido.
Riccardo Murri

Respostas:


19

Em um sistema de arquivos ext4 (como ext2, ext3 e na maioria dos outros sistemas de arquivos originários do Unix), as permissões efetivas de arquivos não dependem de quem montou o sistema de arquivos ou das opções de montagem, apenas dos metadados armazenados no sistema de arquivos.

Se você possui um sistema de arquivos removível que usa IDs de usuário diferentes do seu sistema, pode usar bindfspara fornecer uma visualização de qualquer sistema de arquivos com diferentes propriedades ou permissões. O sistema de arquivos removível já deve estar montado, por exemplo, ativado /mnt/sda1; então, se você quiser que um usuário em particular apareça como o proprietário de todos os arquivos, poderá executar algo como

mkdir /home/$user/sda1
bindfs -u $user -g $group /mnt/sda1 /home/$user/sda1

1
Obrigado de mim também! Com um pequeno ajuste, isso também funciona para dispositivos como, por exemplo, DVD-ROMs SATA hot-plug (que era o dispositivo com o qual eu tinha problemas). NO ENTANTO, o dispositivo sempre será montado 000por algum motivo (d ---------), então você deve especificar -p 700a bindfslinha para acessar os arquivos no DVD via dolphin/ nautilusetc, por exemplo.
Syntaxerror

Seria bom se bindfspoderia aceitar dicionários para traduzir qualquer conjunto de UIDs e GIDs ...
Alexey
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.