Posso executar um programa com um comando sudo através de um atalho? [duplicado]

2

Eu criei um arquivo contendo estas duas linhas de código:

#!/bin/sh 
sudo sh -c "sync; echo 3 > /proc/sys/vm/drop_caches"

Eu marquei (de 'propriedades') a caixa apropriada para executar o arquivo como um programa. Clicando nele, me pedem para executá-lo ou executá-lo no terminal. A segunda opção funciona como pretendido, com o terminal pedindo minha senha e executando o comando.

Existe uma maneira de executar o programa diretamente? Atualmente não funciona (presumivelmente porque não pode executar o comando sudo sem senha)

    
por Digital Dracula 24.06.2016 / 07:39

1 resposta

2

Substitua sudo por gksudo -- no seu script, assim:

gksudo -- sh -c "sync; echo 3 > /proc/sys/vm/drop_caches"

Isso abrirá uma janela de diálogo simples para solicitar sua senha, em vez de solicitá-la no STDERR, que não está conectado a um terminal se você executar o script a partir de sua área de trabalho.

Em versões mais recentes do Ubuntu, gksudo pode não estar mais pré-instalado. Se não funcionar, você terá que instalar o pacote gksu primeiro, usando este comando:

sudo apt-get install gksu
    
por Byte Commander 24.06.2016 / 09:24