Executando sudo e nohup em um comando

1

Existe um comando complexo que requer sudo :

sudo command par1 666 /home/me/...

Eu preciso lançá-lo para que ele persista depois que eu fizer logoff do terminal (SSH). Descobri que o comando nohup deve fazer isso.

O primeiro problema é que nohup parece precisar de sudo :

nohup: failed to open 'nohup.out': Permission denied
nohup: failed to open '/home/me/nohup.out': Permission denied

A segunda coisa é que os últimos parâmetros parecem se perder. Qual é a sintaxe adequada para executar command com todos os seus parâmetros de forma assíncrona com direitos de administrador?

    
por Tomáš Zato 20.06.2014 / 06:41

1 resposta

3

Seu primeiro problema é devido ao nohup tentar criar um arquivo chamado nohup.out. Primeiro ele tenta criar isso no diretório atual e, se falhar, tentará criá-lo em seu diretório inicial.

A partir da sua saída, parece que você não tem acesso de gravação a nenhum dos dois.

Tente executá-lo a partir de um diretório em que você tenha acesso de gravação (/ tmp se não conseguir encontrar um diretório melhor).

Para o seu segundo problema, repita aspas em torno do comando e dos parâmetros que você deseja executar. Por exemplo,

nohup 'sudo command par1 666 /home/me/...'

    
por 20.06.2014 / 07:20

Tags