Voglio eseguire alcuni programmi Java in background quando il sistema si avvia in Ubuntu. Ho provato ad aggiungere uno script nella directory /etc/init.d ma non sono riuscito ad avviare un programma. i programmi i.e non sono avviati. Cosa dovrei fare per quello?Come eseguire uno script all'avvio di Ubuntu?
risposta
Prima di tutto, il modo più semplice per eseguire le operazioni all'avvio è aggiungerle al file /etc/rc.local
.
Un altro modo semplice è utilizzare @reboot
nel proprio crontab. Leggi la manpage di cron per i dettagli.
Tuttavia, se si desidera eseguire le operazioni correttamente, oltre a aggiungere uno script a /etc/init.d
, è necessario indicare a ubuntu quando è necessario eseguire lo script e con quali parametri. Questo viene fatto con il comando update-rc.d
che crea un collegamento simbolico da alcune delle directory /etc/rc*
allo script. Quindi, avresti bisogno di fare qualcosa di simile:
update-rc.d yourscriptname start 2
Tuttavia, veri e propri script di init dovrebbe essere in grado di gestire una varietà di opzioni della riga di comando ed al contrario di integrare il processo di avvio. Il file /etc/init.d/README
ha alcuni dettagli e ulteriori puntatori.
Ma dove dovrebbe essere inserito il mio file java? Ho creato un semplice programma java con loop infinito. quindi il comando javac e java metti in /etc/rc.local, quindi riavvio il sistema ma il programma non è in esecuzione. Cosa fare? –
Grazie al fatto. Ho creato un servizio in /etc/init.d e poi ho avviato il servizio in rc.local. –
'rc-update' non esiste in Ubuntu. Usa 'update-rc.d
Dovrebbe essere spostato su http://askubuntu.com/ –
o passare al superutente –