Em geral, se um comando não precisa rootde privilégios, você não o executa como usuário root.
Sempre tente executar com o mínimo de privs. Imagine que existe um bug <command>que permite que um invasor injete código para ser executado com os privilégios do usuário que chamou <command>.
INCORRETO: No entanto, neste caso específico, acho nohup sudo <command>que evitará travamentos em sudo, NOT <command>. Então eu iria para sudo nohup <command>.
EDIT: De fato, de acordo com man fork, quaisquer sinais de processos filhos são herdados pelo processo pai, isso parece afetar nohuptambém. Obrigado a Stephen Kitt por mencionar isso.
Então você pode correr feliz nohup sudo <command>.
Em geral, se um comando não precisa
root
de privilégios, você não o executa como usuárioroot
.Sempre tente executar com o mínimo de privs. Imagine que existe um bug
<command>
que permite que um invasor injete código para ser executado com os privilégios do usuário que chamou<command>
.INCORRETO: No entanto, neste caso específico, acho
nohup sudo <command>
que evitará travamentos emsudo
, NOT<command>
. Então eu iria parasudo nohup <command>
.EDIT: De fato, de acordo com
man fork
, quaisquer sinais de processos filhos são herdados pelo processo pai, isso parece afetarnohup
também. Obrigado a Stephen Kitt por mencionar isso.Então você pode correr feliz
nohup sudo <command>
.EDIT: Na verdade, criei o seguinte caso de teste:
Quando executo
nohup /tmp/test1.sh
a saída (armazenada em nohup.out) é:Isso significa que
kill -HUP $$
foi interceptado por nohup.