embora launchd e o termo LaunchDaemon soem como daemons, é a maneira preferida de automatizar tudo. Apple diz em sua documentação,
Login and logout scripts are a deprecated technology. In most cases, you should use launchd jobs instead, as described in Creating Launch Daemons and Agents
scripts de login e logout são scripts que devem ser executados uma vez e finalizados. eles são acionados pela janela de login.
Acho que colocar seu comando em um arquivo plst launchd é o jeito certo de fazê-lo. Primeiro, você pode excluir agentes de ativação, porque eles serão executados sempre como usuário. porque você quer que o script seja executado como root, você deve colocá-lo em /Library/LaunchDaemons
( /System/Library/LaunchDaemons
também funcionaria, mas sistema ....) e adicione a sinalização RunAtLoad
, mas não defina KeepAlive
(ou configure-o para algo como travado, veja esta boa documentação ).
EDIT porque o script está sendo executado como root, você pode omitir o sudo
, outra opção seria, criar um script e incluí-lo em /etc/sudoers
( visudo
) com o nopasswd
flag e execute como usuário