Eu resolvi esse problema alterando a política padrão. Existem três maneiras de conseguir isso:
Ao dar privilégio a um grupo
-
Primeiro, crie um grupo
mounter
usando este comando:sudo addgroup mounter
-
Em seguida, adicione os usuários não administradores a esse grupo. Por exemplo, estou adicionando o usuário não administrador
normal
a esse grupo.sudo adduser normal mounter
-
Em seguida, abra o arquivo de políticas com privilégio de administrador.
gksu gedit /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
-
Na parte superior do arquivo, há uma seção como esta:
[Mounting, checking, etc. of internal drives] Identity=unix-group:admin;unix-group:sudo; Action=org.freedesktop.udisks.filesystem-*;org.freedesktop.udisks.drive-ata-smart* ResultActive=yes
Adicione
unix-group:mounter;
apósIdentity=unix-group:admin;unix-group:sudo;
na primeira linha da seção. A seção alterada será parecida com esta[Mounting, checking, etc. of internal drives] Identity=unix-group:admin;unix-group:sudo;unix-group:mounter; Action=org.freedesktop.udisks.filesystem-*;org.freedesktop.udisks.drive-ata-smart* ResultActive=yes
É isso. Agora, os usuários não administrativos podem montar as unidades sem exigir senha de administrador. Eles só precisam ser adicionados ao grupo mounter
. Nota para adicionar um usuário novice
ao grupo mounter
, execute este comando: sudo adduser novice mounter
.
Por dar privilégio ao usuário específico
Se você não quiser criar outro grupo, basta adicionar o nome de usuário (nome de login) nesse arquivo.
-
Abra o arquivo de políticas com privilégio de administrador. Você pode digitar este comando em um terminal ou no prompt de traço pressionando Alt - F2 .
gksu gedit /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
-
Em seguida, adicione
unix-user:<login-name>
na linhaIdentity
na seção[Mounting, checking, etc. of internal drives]
. Lembre-se de usar o nome de login do usuário, não o literal. . Por exemplo, se você quiser dar ao usuáriotester
este privilégio, a linha ficará como abaixo[Mounting, checking, etc. of internal drives] Identity=unix-group:admin;unix-group:sudo;unix-user:tester; Action=org.freedesktop.udisks.filesystem-*;org.freedesktop.udisks.drive-ata-smart* ResultActive=yes
-
Salve o arquivo e saia do gedit.
Ao dar privilégio a todos os usuários
Os dois métodos acima não funcionarão para o usuário padrão no Ubuntu. Como o usuário convidado é criado dinamicamente no login e é excluído após o logout.
Para solucionar isso, você pode conceder a todos os usuários esse privilégio.
-
Abra o arquivo de políticas com privilégio de administrador. Você pode digitar este comando em um terminal ou no prompt de traço pressionando Alt - F2 .
gksu gedit /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
-
Em seguida, adicione
unix-user:*
na linhaIdentity
na seção[Mounting, checking, etc. of internal drives]
. Após a modificação, a seção ficará como abaixo:[Mounting, checking, etc. of internal drives] Identity=unix-group:admin;unix-group:sudo;unix-user:*; Action=org.freedesktop.udisks.filesystem-*;org.freedesktop.udisks.drive-ata-smart* ResultActive=yes
-
Salve o arquivo e saia do gedit.
ATUALIZAÇÕES
- Testado em 14.04. Funciona da maneira descrita na resposta