Eu criei um ícone na área de trabalho para o gddccontrol, mas para executá-lo, preciso executá-lo no sudo. Existe uma maneira de executar um comando no ícone da área de trabalho como,
sudo -pPASSWORD gddccontrol
então não vai me pedir a senha no terminal?
Eu só quero clicar e executá-lo com permissões sudo.
[Desktop Entry]
Type=Application
Name=GDDCControl
Terminal=false
Comment=gddccontrol ddccontrol
Exec=sudo -pPASSWORD gddccontrol
Icon=~/Pictures/10429.png
Quando executo o ícone no terminal com o seguinte comando Exec, ele funciona bem, mas não no Launcher :(
Exec=echo mypasswd | sudo -S gddccontrol
fonte
pkexec
sobregksu
; Eu acredito que houve um meta post sobre isso.pkexec
não está sendo executado em aplicativos GUI exatamente assim. É mais complicado de configurar, enquantogksu
funciona perfeitamente.pkexec
no 16.04.O uso
sudo
por definição solicitará uma solicitação de senha. O que você precisa fazer é conceder permissões de execução ao seu usuário. Não tenho certeza de onde esse programa está localizado, mas, para obter esta resposta, vamos supor que esteja/usr/bin/
.Em um terminal, execute o seguinte:
Esse comando está concedendo o utras usuários (como você) o direito de e x ecute o programa sem necessidade de permissão.
Em seguida, no arquivo .desktop, basta usar:
fonte
Sou contra a senha codificada em um arquivo de texto sem formatação, para pensar em duas soluções possíveis:
faça uma edição em todo o sistema para que todos os comandos emitidos pelo usuário com o sudo sejam executados como superusuário sem solicitar a senha. Você pode descobrir como nesta resposta
Se você não deseja que os
sudo
comandos sejam sempre executados com o prompt de senha, use as práticas recomendadasgksu
antes do comando para solicitar a senha em uma janela gráfica em vez de gravar sua senha bruta em um arquivo.fonte