Depende de distros.
Se você estiver em distribuições derivadas do Debian, existem pelo menos dois locais apropriados, /etc/rc.local e crontab. Você pode invocar crontab como root,
crontab -e
e, em seguida, insira esta linha
@reboot /home/my_name/bin/my_command
em que my_command
é um arquivo executável ( chmod 755 my_command
).
Como alternativa, você pode colocar uma linha como esta
/home/my_name/bin/my_command
em /etc/rc.local, e isso será executado por último. Em qualquer caso, os pls lembram que você está usando o ambiente raiz, não o seu. Também por esse motivo, é melhor usar caminhos absolutos.
Se você estiver em uma distro systemd (Arch Linux, Fedora 19, ...) a primeira opção (crontab) ainda é válida, enquanto a segunda (/etc/rc.local) não existe mais. Nesse caso, você deve aprender como iniciar um serviço para ser executado por systemctl
, mas isso pode ser mais do que você esperava com sua pergunta simples.