Differences between revisions 9 and 10
Revision 9 as of 2018-04-06 08:38:50
Size: 1379
Editor: ?RenatBildanov
Comment:
Revision 10 as of 2019-03-16 17:55:42
Size: 3716
Comment: sync with English master
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
Init è il primo programma eseguito dopo che il sistema è avviato e continua a funzionare come processo numero 1 fino a quando il sistema verrà fermato. Il compito di init è di avviare altri programmi che sono essenziali per il funzionamento del sistema, tutti i processi discendono da init. Per ulteriori informazioni, vedere la pagina di manuale init(8). Init è il primo programma eseguito dopo che il sistema è avviato e continua a funzionare come processo numero 1 fino a quando il sistema verrà fermato. Il compito di init è di avviare altri programmi che sono essenziali per il funzionamento del sistema, tutti gli altri processi discendono da init.
Line 11: Line 11:
Il processo di inizializzazione del sistema è gestito dal demone di {{{init}}}. Il processo di inizializzazione del sistema è gestito dal demone di {{{init}}}. In [[it/DebianSqueeze|squeeze]] e rilasci precedenti tale demone è fornito dal pacchetto sysvinit e non sono supportate alternative. In [[it/DebianWheezy|wheezy]] il demone init predefinito è ancora sysvinit, ma è disponibile un'"anteprima tecnologica" di [[systemd]]. In [[it/DebianJessie|jessie]] e [[DebianStretch|stretch]] il sistema init predefinito è [[systemd]], ma è supportato il passaggio a sysvinit.
Line 13: Line 13:
Il file di configurazione [[inittab|/etc/inittab]] dice ad init cosa fare, in particolare contiene le righe: A partire da jessie solo systemd è pienamente supportato; sysvinit è supportato per la maggior parte ma ai pacchetti Debian non viene ''richiesto'' di fornire script di avvio per sysvinit. Anche [[runit]] è pacchettizzato, ma non ha ricevuto lo stesso livello di test e supporto degli altri e attualmente non è supportato come PID 1.

== Determinare il sistema init ==

In generale si può determinare quale sistema init è installato controllando se il file `/sbin/init` è un collegamento simbolico. Se '''non''' è un collegamento simbolico, allora probabilmente è in uso sysvinit. Se è un collegamento simbolico che punta a `/lib/systemd/systemd`, allora è in uso systemd. Se è un collegamento simbolico che punta a `/lib/sysvinit/init`, allora è in unso sysvinit.

Se si sospetta che il sistema init possa essere cambiato senza un riavvio, si può anche usare `cat /proc/1/comm` per vedere quale nome di comando è stato usato per il demone init durante l'avvio più recente.

== Cambiare il sistema init ==

In [[it/DebianStretch|stretch]] si può passare da systemd a sysvinit seguendo questi passi:

 1. `apt-get install sysvinit-core`
 1. riavviare

Per la maggior parte del tempo in cui stretch era testing si poteva passare da systemd a runit seguendo questi passi:

 1. `apt-get install runit-systemd`
 1. riavviare
 1. `apt-get install runit-init`
 1. riavviare nuovamente

Tuttavia il pacchetto [[DebPkg:runit-init]] è stato rimosso da Debian poco tempo prima del rilascio di stretch. Attualmente runit ''non'' è supportato come sistema init in Debian, anche se ciò può cambiare in future e ''potrebbe'' funzionare in testing o unstable; tuttavia ogni tentativo di utilizzarlo viene fatto a proprio rischio e pericolo. (Vedere il bug DebianBug:861536 per la discussione sulla rimozione.)

== Configurazione di sysvinit ==

Il file di configurazione DebianMan:inittab dice ad [[DebPkg:sysvinit-core|init]] cosa fare, in particolare contiene le righe:
Line 26: Line 52:
 * [[DebianMan:1/init|Manuale di init]].
 * [[DebianMan:8/init|Manuale di init(8)]].
 * [[DebianMan:1/init|Pagina di manuale di init(1) (da [[DebPkg:systemd-sysv]]) ]].
 * [[DebianMan:8/init|Pagina di manuale di init(8) (da [[DebPkg:sysvinit-core]])]].

Translation(s): English - Français - Italiano - Русский


BootProcess > init


Init è il primo programma eseguito dopo che il sistema è avviato e continua a funzionare come processo numero 1 fino a quando il sistema verrà fermato. Il compito di init è di avviare altri programmi che sono essenziali per il funzionamento del sistema, tutti gli altri processi discendono da init.

Panoramica

Il processo di inizializzazione del sistema è gestito dal demone di init. In squeeze e rilasci precedenti tale demone è fornito dal pacchetto sysvinit e non sono supportate alternative. In wheezy il demone init predefinito è ancora sysvinit, ma è disponibile un'"anteprima tecnologica" di systemd. In jessie e stretch il sistema init predefinito è systemd, ma è supportato il passaggio a sysvinit.

A partire da jessie solo systemd è pienamente supportato; sysvinit è supportato per la maggior parte ma ai pacchetti Debian non viene richiesto di fornire script di avvio per sysvinit. Anche runit è pacchettizzato, ma non ha ricevuto lo stesso livello di test e supporto degli altri e attualmente non è supportato come PID 1.

Determinare il sistema init

In generale si può determinare quale sistema init è installato controllando se il file /sbin/init è un collegamento simbolico. Se non è un collegamento simbolico, allora probabilmente è in uso sysvinit. Se è un collegamento simbolico che punta a /lib/systemd/systemd, allora è in uso systemd. Se è un collegamento simbolico che punta a /lib/sysvinit/init, allora è in unso sysvinit.

Se si sospetta che il sistema init possa essere cambiato senza un riavvio, si può anche usare cat /proc/1/comm per vedere quale nome di comando è stato usato per il demone init durante l'avvio più recente.

Cambiare il sistema init

In stretch si può passare da systemd a sysvinit seguendo questi passi:

  1. apt-get install sysvinit-core

  2. riavviare

Per la maggior parte del tempo in cui stretch era testing si poteva passare da systemd a runit seguendo questi passi:

  1. apt-get install runit-systemd

  2. riavviare
  3. apt-get install runit-init

  4. riavviare nuovamente

Tuttavia il pacchetto runit-init è stato rimosso da Debian poco tempo prima del rilascio di stretch. Attualmente runit non è supportato come sistema init in Debian, anche se ciò può cambiare in future e potrebbe funzionare in testing o unstable; tuttavia ogni tentativo di utilizzarlo viene fatto a proprio rischio e pericolo. (Vedere il bug 861536 per la discussione sulla rimozione.)

Configurazione di sysvinit

Il file di configurazione inittab dice ad init cosa fare, in particolare contiene le righe:

id:2:initdefault:

si::sysinit:/etc/init.d/rcS

l2:2:wait:/etc/init.d/rc 2

Che indica al file /etc/init.d/rcS di eseguire l'inizializzazione degli script (in /etc/rcS.d/*), poi gli script per il runlevel richiesto (in /etc/rcS.[0-9]/*).

Si veda anche