Não é possível montar a partição NTFS da conta do usuário

4

Estou tentando montar uma partição ntfs do Windows no openSuse 11.4. Quando eu o monto usando a conta root (diretamente ou via sudo ) ele é montado sem problemas. Mas quando eu tento montá-lo sem privilégios de root, isso me dá o seguinte erro:

Error opening '/dev/sda2': Permission denied
Failed to mount '/dev/sda2': Permission denied
Please check '/dev/sda2' and the ntfs-3g binary permissions,
and the mounting user ID. More explanation is provided at
http://ntfs-3g.org/support.html#unprivileged

Minha entrada fstab para o dispositivo em questão é:

/dev/sda2   /media/Windows      ntfs       defaults,noauto,user  1 2

Pesquisei no Google possíveis soluções, mas parece que não estou chegando a lugar nenhum.

Editar 1:

Como sugerido, tentei definir os bits UID / GID no binário ntfs-3g. Todos os arquivos (/sbin/mount.ntfs, /sbin/mount.ntfs-3g) apontam para / usr / bin / ntfs-3g, então mudei as permissões para isso. As permissões agora são:

-rwsr-sr-x 1 root root 51512 Feb 18 22:18 ntfs-3g

Mas o resultado ainda é o mesmo e recebo o mesmo erro permissão negada .

Editar 2:

Depois de definir as permissões corretas em todos os arquivos:

-rwsr-xr-x 1 root root 51512 Feb 18 22:18 ntfs-3g
brw-rw-rw- 1 root disk 8, 2 Aug  6 21:53 sda2
drwxrwxrwx 1 asad users 8192 Jul 30 13:09 Windows

Consegui montar sem uma conta de usuário privilegiada. No entanto, agora, quando tento desmontar usando a mesma conta, recebo:

asad@jb-laptop:~> umount /dev/sda2
umount: only root can unmount /dev/sda2 from /media/Windows

Editar 3:

Eu finalmente encontrei o problema. Eu precisava adicionar usuários ao invés de usuário no fstab por algum motivo, embora eu não consiga entender por quê. Agora eu tenho um novo problema:)

Sempre que eu desmonto o dispositivo / dev / sda2 , de alguma forma a permissão do arquivo acaba voltando ao padrão (0660). Eu tentei criar uma regra no udev, mas não parece estar funcionando.

    
por Jibran 06.08.2011 / 17:28

3 respostas

3

Os binários ntfs-3g devem ser definidos como root para que a montagem do usuário funcione. E você precisa de permissão para o dispositivo de bloco & ponto de montagem.

sudo chmod 1755 /sbin/mount.ntfs-3g /usr/bin/ntfs-3g
sudo chmod 666 /dev/sda2
sudo chmod 777 /media/Windows

(Nota: estes são os locais do Debian, eles podem ser diferentes para o Suse, então você vai querer verificar se eles estão realmente nesses locais.)

Você também precisa ter ntfs-3g versão 1.2506 ou posterior.

Veja aqui para mais informações:

por 06.08.2011 / 17:47
3

Para resolver problemas semelhantes no futuro - especialmente com mídia removível (como discos USB), recomendo usar pmount para montar sistemas de arquivos como usuários normais. Ele usa uma abordagem de política e evita que você faça alterações em todo o sistema, o que às vezes pode ser perigoso (como chmod 1755 /sbin/mount.ntfs-3g /usr/bin/ntfs-3g ).

Para tornar uma partição específica local user-mountable via pmount , você pode adicioná-la a uma lista branca. No seu caso, isso significaria

echo "/dev/sda2" >> /etc/pmount.allow

Que deve ser executado como root. (Ou editando o arquivo: sudo nano /etc/pmount.allow )

    
por 07.08.2011 / 00:19
2

Resolvido! Obrigado @baharmat por toda sua ajuda. Se você não tivesse me indicado na direção certa, ainda estaria enfrentando o mesmo problema. Aqui está como eu fiz isso.

Como é aparente na minha longa questão, o único problema que resta é que, por algum motivo, a permissão de arquivo de / dev / sda2 mudou ao desmontar para o padrão 0660 Para corrigir isso, usei a seguinte regra do udev:

KERNEL=="sda2", ACTION=="change", MODE="0666"
KERNEL=="sda2", ACTION=="add",    MODE="0666"

NOTA : O arquivo /etc/udev/rules.d/81-mount.rules tem ACTION == "add | change". Isso não parece funcionar. Eu tive que lutar com a regra por mais de uma hora antes que eu percebesse isso. Qualquer ajuda seria apreciada sobre o motivo pelo qual um arquivo de regra que veio com a minha distro contém algo que parece não funcionar.

    
por 06.08.2011 / 23:55