Erro "Somente o root pode montar" - mas eu sou root

9

Ontem consegui montar meu compartilhamento smb com o seguinte comando:

sudo mount -t cifs //XXXX/share /media/share -o user=Ben,password=XXX,workgroup=WORKGROUP,ip=XXX.XX.XX,uid=ben,gid=ben,rw

Não sei por que não está mais funcionando. (Talvez a partir da atualização do sistema).

Eu recebi o seguinte erro:

mount: only root can mount //XXX.XXX.XXX/share on /home/ben/share

Não sei como resolver esse problema ..

Também tentei montá-lo com su - e o Smbclient está funcionando.

Estou executando o ArchLinux.

Dobrar
fonte
11
Qual é a saída de echo "$EUID"?
Chris Baixo
11
@ChrisDown echo $ EUID = 1000
Ben D
6
@ BenD - Nesse caso, você não está efetivamente executando como root. (Obviamente, isso deve ser executado no mesmo ambiente que você está tentando montar em, então você deve se certificar de que é o shell de root que está se expandindo $EUID.)
Chris Baixo
2
Por que o caminho é diferente entre a mensagem de erro e o comando mount? Um é /media/sharee o outro é /home/ben/share. Além disso, recomendo usar /mntpara montagens manuais ou estáticas. /mediafoi criado para os daemons HAL / udev para montar discos criados dinamicamente como uma unidade USB.
Penguin359
11
Como o @ 9000 mencionou, veja o que o modo detalhado diz adicionando -v ao seu comando mount. Verifique também os logs do sistema, se você ainda não o fez, e o dmesg, e talvez execute um rastro no comando para obter uma solução mais profunda.
Banjer

Respostas:

1

Se você não sabe o que está acontecendo, tente seguir:

sudo strace -f -F -o mount.strace mount -t cifs //XXXX/share /media/share -o user=Ben,password=XXX,workgroup=WORKGROUP,ip=XXX.XX.XX,uid=ben,gid=ben,rw

Em seguida, tente procurar no arquivo mount.stracede baixo por alguns erros, você obviamente encontrará uma razão ... É um método difícil, eu sei ...

Jan Marek
fonte
0

Como não vejo nenhum motivo adequado para o seu erro, proponho uma sintaxe ligeiramente diferente.

Primeiro, vou criar um novo diretório como root (para ter certeza de que o root pode criá-lo) e depois montar o compartilhamento com opções ligeiramente diferentes. Aqui estão os comandos (todos devem ter sucesso):

sudo mkdir /mnt/smb_share
sudo touch /mnt/smb_share/test && sudo rm -f /mnt/smb_share/test && echo "Permissions are OK"
sudo mount -t cifs //(hostname)/share /mnt/smb_share -o user=Ben,domain=(WORKGROUP)

O comando mount deve solicitar sua senha Ben do usuário Samba. Eu removi as opções uid e gid apenas para remover algum "ruído". Com este comando, você poderá verificar se pode montar o compartilhamento. Claro que você precisa substituir:

  • (nome do host) pelo nome do host do servidor de compartilhamento. Se não funcionar com o nome do host, tente novamente, mas use o endereço IP;
  • (GRUPO DE TRABALHO) por seu grupo de trabalho ou domínio.

Se este trabalho. Tente desmontar o compartilhamento e remontar apenas com o uid:

sudo umount /mnt/smb_share
sudo mount -t cifs //(hostname)/share /mnt/smb_share -o user=Ben,domain=(WORKGROUP),uid=ben

Se isso estiver funcionando, adicione o gid, adicione o rw e, finalmente, adicione a opção de senha (passo a passo). Assim, você pode identificar qual das opções não é entendida.

Huygens
fonte