Capitolo 3. Modalità rescue

Esistono alcuni metodi che vi permettono di risolvere gli eventuali problemi che riscontrate. Tuttavia, tali metodi richiedono che comprendiate bene il funzionamento del sistema. Il capitolo descrive come avviare il sistema nella modalità rescue e come usare le vostre conoscenze per risolvere tali problemi.

Che cos'è la modalità rescue?

La modalità rescue è una funzione che permette di avviare un piccolo ambiente Linux direttamente da un dischetto o da un CD oppure utilizzando qualche altro metodo.

Come lo indica il nome, la modalità rescue vi salva da qualche cosa. Durante il funzionamento normale, il vostro sistema Red Hat Linux utilizza i file contenuti nel vostro disco rigido per eseguire programmi, immagazzinare file e altro ancora.

Tuttavia, a volte Linux non riesce ad accedere ai file del vostro disco rigido. Grazie alla modalità rescue potete accedere ai file contenuti nel vostro disco rigido anche se non riuscite a eseguire Linux da questo disco.

Di solito la modalità rescue viene utilizzata quando:

I casi di cui sopra sono esaminati in modo dettagliato nei seguenti paragrafi.

Impossibile avviare Linux

Questo problema viene spesso riscontrato quando si procede all'installazione di un altro sistema operativo dopo che è stato installato Red Hat Linux. Alcuni sistemi operativi presumono che non abbiate altri sistemi operativi sul vostro computer e sovrascrivono il Master Boot Record (MBR) che in origine conteneva LILO. Se LILO viene sovrascritto, non potrete più avviare Red Hat Linux a meno che non utilizziate la modalità rescue.

Problemi hardware/software

Questa categoria comprende una grande varietà di situazioni. Per esempio, può includere una situazione in cui i dischi rigidi sono danneggiati oppure una situazione in cui vi dimenticate di eseguire LILO dopo avere costruito un nuovo kernel. In entrambi i casi, non potete avviare Red Hat Linux. Se riuscite ad accedere alla modalità rescue, potete risolvere il problema o, per lo meno, creare una copia dei vostri file più importanti.

Per avviare il sistema nella modalità rescue, digitate al prompt di avvio dell'installazione il comando seguente:

boot: linux rescue

Il prompt di avvio dell'installazione può essere ottenuto nei modi di seguito riportati:

  • Avviando il sistema da un dischetto di avvio dell'installazione [1] o dal CD-ROM #1 di Red Hat Linux.

  • Avviando il sistema da una rete o da un dischetto di avvio PCMCIA. Potete farlo unicamente se la vostra connessione di rete funziona. Dovrete identificare l'host di rete e il tipo di trasferimento. Per una spiegazione più dettagliata su come specificare queste informazioni, consultate la sezione Installazione via rete contenuta nella Official Red Hat Linux x86 Installation Guide.

Una volta che siete entrati nella modalità rescue, compare un prompt nella console virtuale (VC) 2 (per accedere alla VC 2, usate la combinazione di tasti Ctrl-Alt-F2):

bash#

Da questo prompt potete avviare molti comandi utili, quali:

anaconda          gzip        mkfs.ext2   ps
badblocks         head        mknod       python
bash              hwclock     mkraid      python1.5
cat               ifconfig    mkswap      raidstart
chattr            init        mlabel      raidstop
chmod             insmod      mmd         rcp
chroot            less        mmount      rlogin
clock             ln          mmove       rm
collage           loader      modprobe    rmmod
cp                ls          mount       route
cpio              lsattr      mpartition  rpm
dd                lsmod       mrd         rsh
ddcprobe          mattrib     mread       sed
depmode           mbadblocks  mren        sh
df                mcd         mshowfat    sync 
e2fsck            mcopy       mt          tac
fdisk             mdel        mtools      tail
fsck              mdeltree    mtype       tar
fsck.ext2         mdir        mv          touch
fsck.ext3         mdu         mzip        traceroute
ftp               mformat     open        umount
gnome-pty-helper  minfo       pico        uncpio
grep              mkdir       ping        uniq
gunzip            mke2fs      probe       zcat

Tuttavia, se il vostro filesystem root non è danneggiato, potete montare il filesystem e poi eseguire qualsiasi utility Linux standard. Per esempio, se il vostro filesystem root è contenuto in /dev/hda5, montate questa partizione digitando il comando seguente:

mount -t ext2 /dev/hda5 /foo

In questo comando, /foo è una directory che avete creato.

A questo punto, potete eseguire chroot, fsck, man e altre utility. State avviando Linux nella modalità utente singolo.

Se non conoscete i nomi delle vostre partizioni Linux, potete provare a indovinarli poiché anche se montate delle partizioni non esistenti, non succede niente!

Avvio diretto della modalità utente singolo

L'utente può avviare direttamente la modalità utente singolo. Se il vostro sistema si avvia, ma non vi permette di collegarvi, provate a riavviare il sistema e a specificare al prompt di LILO una delle opzioni seguenti (se state usando LILO in modalità grafica, dovete premere Ctrl-x per uscire dalla schermata grafica e andare al prompt boot:):

boot: linux single
boot: linux emergency

Nella modalità utente singolo, il vostro computer si avvia sul runlevel 1. I filesystem locali vengono montati, ma la vostra rete non viene attivata. Avrete a disposizione una shell per il mantenimento del sistema.

Nella modalità di emergenza; il sistema si avvia in un ambiente estremamente semplice. Il filesystem root viene montato in modalità di sola lettura e non viene configurato quasi niente. Il principale vantaggio della modalità rescue rispetto a linux single è che i file init non vengono caricati. Se init è danneggiato, potete sempre montare dei filesystem per recuperare i dati che rischiano di andare persi durante una reinstallazione.

Avete già ricompilato un kernel e riavviato il sistema prima di eseguire /sbin/lilo? Se in lilo.conf non era contenuta alcuna voce di un kernel precedente, avete riscontrato un problema. Se volete sapere quale soluzione adottare, leggete questa sezione.

In molti casi, potete avviare il vostro sistema Red Hat Linux dal dischetto di avvio Red Hat Linux [1] con il vostro filesystem di root montato e pronto da usare. Ecco come fare:

Al prompt boot: del dischetto di avvio, digitate il comando seguente:

linux single root=/dev/hdXX initrd=

Sostituite il comando XX contenuto in /dev/hdXX con la lettera e il numero corrispondente alla vostra partizione root.

Che cosa fa questo comando? Per prima cosa lancia il processo di avvio in modalità utente singolo con la partizione di root impostata sulla vostra partizione di root. Il parametro vuoto initrd salta l'immagine relativa all'installazione nel dischetto di avvio e vi obbliga a entrare subito nella modalità utente singolo.

Quali sono gli svantaggi di questa tecnica? Sfortunatamente il kernel sul dischetto di avvio Red Hat Linux contiene un supporto solo per i dischi IDE. Se il vostro sistema è basato su SCSI, non potete seguire questa procedura. In tal caso, dovete accedere alla modalità rescue usando il comando linux rescue sopra citato.

Note

[1]

Per creare un dischetto di avvio dell'installazione, usate il file images/boot.img contenuto nel primo CD-ROM di Red Hat Linux con il comando dd if=boot.img of=/dev/fd0 e un dischetto vuoto.