Graças a novas "correções de segurança" em mount ou mount.cifs (não sei ao certo), não é mais possível que usuários comuns montem qualquer coisa, mesmo que sejam explicitamente autorizados a usar user
, users
ou owner
sinalizadores. Por esse motivo, mudei a configuração do sudo para permitir que meu usuário execute os comandos de montagem específicos para meus compartilhamentos de rede sem uma senha. Em seguida, criei um script em $HOME/bin
chamado mount
, que contém:
sudo /usr/bin/mount "$*"
Então agora eu posso basicamente usar o mount como eu costumava, sem ter que digitar uma senha. O problema é que não consigo montar meus compartilhamentos de rede usando o Nautilus, o que é muito mais conveniente. Estou usando o sinalizador noauto
no fstab porque, caso contrário, a montagem ocorrerá antes de eu estabelecer uma conexão de rede sem fio e falhar imediatamente.
Os compartilhamentos aparecem no Nautilus como pastas esmaecidas, e quando eu clico na pasta, o Nautilus tenta montar o compartilhamento usando um comando como este (eu acho):
/usr/bin/mount "/media/My Network Share"
Qual falha, porque não usa sudo
. Eu tentei fazer:
PATH="$HOME/bin:$PATH" nautilus
Mas o erro ainda ocorre, presumivelmente porque o Nautilus usa o caminho absoluto para mount
.
Então, minha pergunta é: existe alguma maneira de eu enganar o Nautilus para usar sudo /usr/bin/mount
, ou mesmo apenas mount
sem o caminho absoluto?
Meu último recurso é basicamente mover o mount
binary para outro lugar e substituí-lo por um script bash. O script bash verificaria qual usuário o está executando e, se for meu usuário, ele anexará sudo
na frente do comando. Caso contrário, seria apenas chamar o executável de montagem real normalmente. Espero evitar ir a medidas tão drásticas, já que eu poderia facilmente destruir o meu sistema além da minha capacidade de reparo.