Em geral, se um comando não precisar de root
privileges, você não o executará como usuário root
.
Sempre tente e execute com o menor priv. Imagine que há um bug no <command>
que permite que um invasor injete código para ser executado com os privilégios do usuário que chamou <command>
.
INCORRECTO: No entanto, neste caso específico, acho que nohup sudo <command>
evitará problemas em sudo
, NÃO <command>
. Então eu iria para sudo nohup <command>
.
EDITAR:
De fato, de acordo com man fork
, quaisquer sinais de processos filhos são herdados pelo processo pai, isso também afeta nohup
. Obrigado a Stephen Kitt por mencionar isso.
Para que você possa executar com alegria nohup sudo <command>
EDIT: Na verdade, criei o seguinte caso de teste:
$ cat /tmp/test1.sh /tmp/test2.sh
#!/bin/sh
/tmp/test2.sh &
sleep 5
#!/bin/sh
echo "test"
kill -HUP $$
Quando executo nohup /tmp/test1.sh
, a saída (armazenada em nohup.out) é:
test
Isso significa que kill -HUP $$
foi interceptado por nohup.