sudo mv /filename /etc/init.d/
sudo chmod +x /etc/init.d/filename
sudo update-rc.d filename defaults
Lo script ora dovrebbe avviarsi all'avvio. Si noti che questo metodo funziona anche con collegamenti sia simbolici sia simbolici ( ln
).
modificare
A questo punto nel processo di avvio PATH non è ancora impostato, quindi è fondamentale che vengano utilizzati percorsi assoluti. MA, come sottolineato nei commenti di Steve HHH, dichiarare esplicitamente il percorso completo del file ( /etc/init.d/filename
) per il comando update-rc.d non è valido nella maggior parte delle versioni di Linux. Per la manpage di update-rc.d , il secondo parametro è uno script in /etc/init.d/*
. Codice sopra aggiornato per riflettere questo.
Un'altra modifica
Inoltre, come sottolineato nei commenti (di Charles Brandt), /filename
deve essere una sceneggiatura in stile init. È stato fornito anche un buon modello: https://github.com/fhd/init-script-template .
Un altro link ad un altro articolo solo per evitare il possibile marciume del link (anche se sarebbe triste se GitHub morisse) - http://www.linux.com/learn/tutorials/442412-managing-linux-daemons-with-init-scripts
ancora Un'altra modifica
Come sottolineato nei commenti (di Russell Yan), funziona solo con la modalità predefinita di update-rc.d.
Secondo il manuale di update-rc.d, può essere eseguito su due modalità, "le macchine che usano la modalità legacy avranno un file /etc/init.d/.legacy-bootordering
", nel qual caso è necessario passare la configurazione di sequenza e runlevel tramite argomenti della riga di comando.
L'argomento equivalente impostato per l'esempio sopra è
sudo update-rc.d filename start 20 2 3 4 5 . stop 20 0 1 6 .