Como invocar privilégios de root do meu aplicativo personalizado?

1

Em um ambiente gráfico, eu quero ser capaz de perguntar ao usuário a senha root / sudo e, em seguida, executar um aplicativo que requer privilégios de root no meu aplicativo.

Por exemplo, digamos que eu queira executar um editor para editar /etc/fstab , eu preciso iniciar o editor via exec() ou algo com privilégios de root ... como faço isso?

Nota: gksu, o gksudo não é uma opção - pode não estar disponível / instalado

    
por slashmais 12.12.2011 / 16:51

1 resposta

2

Método 1:

Para executar o comando "df -h" como root:

su -c "df -h"

Isso solicitará ao usuário senha de root.

Método 2:

Como alternativa, em / etc / sudoers, encontre esta linha:

raiz ALL = (ALL) TODOS

e duplique para o seu usuário johnsmith que você deseja conceder privilégios de administrador:

johnsmith ALL = (TODOS) TODOS

Desta forma, johnsmith poderá executar qualquer comando que requeira direitos de root, primeiro digitando "sudo" na frente do comando:

sudo df -h

Método 3:

Você pode usar o ssh para executar um comando na mesma máquina:

ssh root@localhost "def -h"

executará o mesmo comando no seu servidor. Se você não quer ser perguntado por senha, siga este tutorial para ssh sem senha:

link

Método 4:

Use o gksudo (sudo gráfico):

gksudo "gnome-open %u"

Ou, no KDE kdesu :

kdesu <command>
    
por 12.12.2011 / 17:40