Como inicio um aplicativo GUI como root no login do usuário?


12

Gostaria de iniciar um aplicativo Gnome com privilégios de root no login.

Eu tentei adicionar um script para iniciar usando update-rc.d myscript.sh defaults.

Parece que o aplicativo é iniciado, mas não está mais lá quando o gun do gnome chega.

Como eu posso fazer isso?

Respostas:


12

Executar coisas gráficas como root é uma péssima idéia para segurança, mas vou assumir que você sabe disso e que esgotou outros métodos. Você precisa fazer duas coisas:

  1. Permita que o usuário execute o comando sudosem senha, editando /etc/sudoers. Você pode encontrar uma breve explicação aqui, mas está procurando algo parecido com isto:

    username ALL=(ALL:ALL) NOPASSWD:/path/to/command 
    

    Obviamente substituir o usernamee /path/to/commandcom valores reais, vara que em lá e depois tentar sudo -k /path/to/command(os -kmeios apenas ele vai pedir sua senha se não conheço nenhum melhor - não vai perguntar se a sua sudoers editar estava correto).

  2. Inicie automaticamente seu aplicativo através dos "Aplicativos de inicialização" padrão, chamando sudo /path/to/command

E é isso.


Se colocar o nome de usuário ALL = (ALL: ALL) NOPASSWD: / caminho / para / comando em / etc / sudoers, o sudo falhará com um erro de análise. ALL = NOPASSWD: / path / to / command parece analisar, mas solicita a senha quando executo o comando.
benlad

1
Portanto, parece que "nome de usuário ALL = (ALL) NOPASSWD: / path / to / command" deve ser o último no arquivo sudoers e também "nome de usuário ALL = (ALL: ALL: NOPASSWD: / path / to / command" não funciona com o Ubuntu 8.04.
benlad

5

Você pode tentar criar um ativador de aplicativos personalizado ( .desktoparquivo) com gksudo <command>o comando as para executar e adicionar esse lançador às configurações de início automático ( System - Settings - Autostartou Startup). Outra maneira seria colocar o .desktoparquivo diretamente em ~/.config/autostartou (para todos os usuários) /etc/xdg/autostart.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.