Você deve usar um caminho absoluto com sudo
, por motivos de segurança:
( sudo /var/www/symmetric-ds-3.1.6/bin/sym --port 8082 --server );
Verifique a saída de sudo -l
para confirmar. Na página sudoers
man (1.7.x):
A
Cmnd_List
is a list of one or more commandnames, directories, and other aliases. Acommandname
is a fully qualifiedfilename
which may include shell-style wildcards (see the Wildcards section below).
sudo xargs
funciona porque xargs
é (quase certamente) encontrado em um caminho confiável ( /usr/bin
).
Além disso, confira pgrep
e pkill
, isso economizará as desnecessárias ps
pipe acrobatics.
Você tem o potencial de vazamentos de recursos e outros comportamentos indesejados com um kill -9
incondicional, consulte link .
Atualize você adicionou que você executa isso via root, o crontab-root não precisa usar sudo
e, em alguns casos, o root pode ser evitado executando sudo
, verifique o que o sudo -l
diz quando você é root. Se você quer ser capaz de iniciar um programa (que não muda seu próprio uid) como um ID de usuário específico, então o caminho comum é su - username -c "command"
.