Capitolo 1. Processo di avvio, init e spegnimento

Uno degli aspetti più importanti e potenti di Red Hat Linux è il metodo utilizzato per avviare e arrestare il sistema operativo. Al momento dell'avvio Red Hat Linux carica i programmi in ordine specifico e configurabile e, successivamente, potete liberamente cambiare i file di configurazione che controllano il processo di avvio oltre ai file di configurazione per i programmi eseguiti in fase di avvio. In modo simile, l'arresto del sistema interrompe i processi in modo organizzato e configurabile, anche se la personalizzazione di questo processo è raramente necessaria.

La comprensione del funzionamento dei processi di avvio e di arresto non solo vi consente di personalizzare in modo semplice Red Hat Linux, ma vi aiuta a determinare la fonte esatta della maggior parte dei problemi legati all'avvio o allo spegnimento del sistema.

1.1. Il processo di avvio

Di seguito sono riportate le fasi principali del processo di avvio per un sistema x86:

  1. Il sistema BIOS (Basic Input/Output System) controlla il sistema e avvia il boot loader della prima fase nel file MBR del disco fisso primario.

  2. Il boot loader della prima fase viene caricato in memoria e consente di avviare il boot loader della seconda fase dalla partizione /boot/.

  3. Il boot loader di seconda fase carica il kernel in memoria, che a suo turno carica tutti i moduli e monta la partizione root di sola lettura.

  4. Il kernel trasferisce il controllo del processo di avvio al programma /sbin/init.

  5. Il programma /sbin/init carica tutti i servizi e gli strumenti user-space e monta tutte le partizioni elencate in /etc/fstab.

  6. L'utente viene presentato con un prompt di login per il sistema di Linux appena installato.

Dato che la configurazione del processo di avvio è più comune della personalizzazione del processo di arresto, la parte restante di questo capitolo sarà dedicata a presentare in modo dettagliato il funzionamento del processo di avvio e come può essere personalizzato in base alle esigenze.