BSD-FAQ-it
Indietro | Capitolo 6. Installare FreeBSD | Avanti

# 6.13. Processo di init, avviare il sistema in single user mode

Una delle procedure molto importanti da tenere a mente per consentire di gestire correttamente un Sistema Operativo UNIX® è quella che, in caso di necessità, ci consentirà di avviare il Sistema in single user mode.

Il processo di avviamento di un computer, qualunque sia il tipo di architettura adottato, prende il nome di processo di boot (cfr. Jargon file), durante questo processo viene caricato ed eseguiuto nella memoria del computer il Kernel del Sistema Operativo. Prima che il Sistema Operativo stesso venga avviato completamente si devono anche verificare una serie di eventi che sono molto importanti, tra questi possiamo senzadubbio citare il processo di mount dei filesystem ed il contestuale avviamento dei demoni di sistema.

Tutti questi eventi vengono eseguiti da una serie di script che prendono il nome di script di init del Sistema Operativo e compongono il processo di init di Sistema. FreeBSD esegue un solo script all'avviamento del sistema, in particolare legge il file /etc/rc che a sua volta richiama altri tre scripts: si tratta dei files /etc/defaults/rc.conf, /etc/rc.conf e /etc/rc.conf.local

- /etc/defaults/rc.conf è il file che elenca tutti i parametri di configurazione di FreeBSD, da non modificare mai

- /etc/rc.conf sovrascrive i parametri di configurazione del file /etc/defaults/rc.conf

- /etc/rc.conf.local per quanto concerne le configurazioni locali sovrascrive i parametri di configurazione del file /etc/defaults/rc.conf

Per finire questa piccola panoramica sull'avviamento di un sistema FreeBSD, possiamo sicuramente dire che tutti i sistemi UNIX® generalmente prevedono almeno due tipi di avviamento

- l'avviamento automatico che prevede l'avviamento ed il caricamento del Kernel di sistema, individua e configura l'hardware, crea i processi di sistema, esegue gli script di avviamento (init) e procede con l'avviamento in multiutenza

- l'avviamento manuale (single user mode) che prevede l'avviamento ed il caricamento del Kernel di sistema, individia e configura l'hardware, crea i processi i processi di sistema e cede il controllo all'utente

Quando si esegue il caricamento del Sistema Operativo in single user mode, solitamente risulta montato il solo il file system di root / ed in modalità di sola lettura. Appare evidente l'impossibilità di utilizzare qualsiasi tipo di applicazione che, per funzionare, faccia ricorso alla scrittura di file temporanei (un semplice editor di testi). L'avviamento manuale è molto spesso fondamentale nel troubleshooting, infatti ci consentirà di sistemare alcuni problemi che possono apparire di difficile soluzione come quello di aver dimenticatola password di root o di aver modificato in maniera errata il file /etc/rc.conf.

Vediamo ora i comandi che consentono di gestire l'avviamento in single user mode di un sistema FreeBSD

    Hit [enter] to boot immediately, or any key for the command prompt
    Booting [kernel] in 9 seconds....
    [barra spaziatrice]
    # boot -s

avvia il sistema in single user mode, vi verrà richiesto il percorso completo di una shell (/usr/local/bin/bash), se si desidera utilizzare la shell di default (/bin/sh) sarà sufficente confermare con il tasto <enter>

    # mount -u /

monta la partizione di root in modalità lettura e scrittura

    # mount -a

nel caso dovesse essere necessario, questo comando monta tutti gli altri filesystem leggendo il file /etc/fstab. La URLs della FAQ originale del FreeBSD handbook: http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/admin.html#FORGOT-ROOT-PW

Indietro | Partenza | Avanti
Il file /etc/motd | Risali | Ricaricare il file /etc/rc senza riavviare il sistema