tune2fs per cambiare la frequenza dei controlli dei dischi

Informatica

Introduzione

Di default il mio sistema GNU/Linux fa un controllo completo delle partizioni ogni 30 montaggi.
Visto che io ho dischi grandi, e il mio computer desktop viene acceso 2-3 volte al giorno, finiva sempre che una volta alla settimana circa mi trovavo ad aspettare un bel po' che il sistema controllasse i dischi al boot, decisamente troppo spesso per me!

A questo va aggiunto il fatto che tutte il file system delle mie partizioni è ext3, particolarmente robusto, e che, a detta di alcuni, "non ha bisogno di verifiche" (ma la prudenza non è mai troppa).

Allora ho deciso che le cose dovevano cambiare, ed eccomi qui a parlare di tune2fs!

Trovate questa guida anche su www.mandrakeitalia.org.

ATTENZIONE! tune2fs agisce sui parametri dei filesystem ext2 ed ext3. PRIMA di qualsiasi operazione date un'occhiata alla sua pagina man, e ricordate: Mai usare tune2fs per cambiare i parametri su di un filesystem montato in lettura e scrittura! Non rispondo di eventuali danni.


Le procedure descritte in questa pagina sono state provate su un computer con installato Mandriva GNU/Linux 2006. Con altre distribuizioni potrebbero esserci piccole differenze rispetto a quanto riportato.

Cosa ci serve

La frequenza con cui viene controllata una partizione ext2 o ext3 al boot è definita all'interno della partizione. Lo strumento per manipolare questi parametri nei file system di tipo ext2 ed ext3 è tune2fs, presente in di default in tutte le installazioni.

tune2fs ci permette di definire il numero massimo di mount tra due verifiche, l'intervallo massimo tra due verifiche, il comportamento del kernel quando è rilevato un errore e altro ancora.

Tra le altre cose, può essere usato per assegnare un'etichetta alle nostre partizioni usando la sintassi:

# tune2fs -L nome-volume partizione

Questo può servire in alcuni casi. Per esempio, quando aggiungiamo o rimuoviamo un hard disk, in generale cambiano anche i nomi dei device corrispondenti e potremmo avere problemi ad avviare correttamente il sistema.
Se però nella configurazione di grub e in /etc/fstab usiamo le etichette nella forma LABEL=nomepartizione piuttosto che i nomi di device tipo /dev/hda5, il sistema troverà sempre le partizioni giuste.

Si possono assegnare o visualizzare le etichette associate a una certa partizione etx2, ext3 anche usando il comando e2label.

Visto che non dovremmo MAI agire su una partizione montata in lettura/scrittura, per usare tune2fs sulla nostra partizione root dovremo avviare il sistema da un live-cd. Per questo tipo di cose io tengo sempre a portata di mano una copia di SystemRescueCD: http://www.sysresccd.org/

Infine ci servirà conoscere il nome di device delle partizioni su cui vogliamo agire, che saranno tipo /dev/hda1, /dev/hda5, /dev/hdb6, ecc. Un modo è chiedere a fdisk di elencarci le partizioni di un certo disco, digitando:

# fdisk -l /dev/hda

Se abbiamo un altro hard disk, per vedere la sua tabella delle partizioni sostituiremo "hda" con "hdb".

Se non riusciamo a ricordarci cosa contiene una certa partizione, può essere d'aiuto dare una sbirciatina a /etc/fstab. Oppure, se usiamo Mandriva, andare nella sezione "Punti di mount" del Centro di Controllo di Mandriva e cliccare su "crea, elimina e ridimensiona le partizioni dei dischi rigidi", facendo attenzione a non modificare nulla.

Modifichiamo i parametri

Avviato il sistema con il live-cd che abbiamo scelto, apriamo un terminale di root, assicuriamoci che nessuna delle nostre partizioni ext2 o ext3 sia montata, e cominciamo a darci da fare.

Se vogliamo modificare il numero massimo di mount tra una verifica e l'altra (chiamato in gergo mount count), useremo l'opzione -c numero_max_di_mount. Per esempio, per impostare il numero massimo di mount a 60 per il volume /dev/hda5 useremo:

# tune2fs -c 60 /dev/hda5

In questo modo, se hda5 contiene la nostra partizione root o /home, il sistema farà una verifica almeno ogni 60 avvii.

Se vogliamo impostare il tempo massimo tra due verifiche (maximum mount count), useremo l'opzione -i intervallo_max_tra_verifiche. Se gli diamo un numero N, il controllo verrà eseguito al massimo ogni N giorni, mentre possiamo aggiungere il suffisso w per usare come unità di misura le settimane e il suffisso m per usare come unità di misura i mesi. Per esempio, se vogliamo che le verifiche al volume /dev/hda6 avvengano almeno ogni 2 mesi, useremo:

# tune2fs -i 2m /dev/hda6

Possiamo naturalmente combinare le due opzioni, sando un comando tipo:

# tune2fs -c 60 -i 1m /dev/hda5

Questo comando fa sì che la verifica del file system avvenga ogni 60 mount, o al più tardi una volta al mese.

Se abbiamo 2 partizioni, una per / (root) in /dev/hda1 e una per /home in /dev/hda5, e scegliamo di fare le verifiche ogni 30 mount, per esempio, possiamo evitare che le verifiche avvengano lo stesso giorno, usando l'opzione -C numero_mount, che ci consente di impostare manualmente il numero di volte che un volume è stato montato. Nel nostro esempio, i comandi:

# tune2fs -c 30 -C 15 /dev/hda1
# tune2fs -c 30 -C 0 /dev/hda5

In questo modo abbiamo impostato la frequenza delle verifiche ogni 30 mount, e abbiamo impostato il numero di mount di /dev/hda1 a 15 e quello di /dev/hda5 a 0. Questo vuol dire che, nel nostro esempio, tra 15 avvii del sistema ci sarà il controllo di /dev/hda1, mentre /dev/hda5 non verrà controllato, mentre tra 30 avvii verrà controllato /dev/hda5 e non /dev/hda1.

Un'altra applicazione di questa opzione può essere utile ai possessori di notebook: si potrebbe impostare il numero di mount tra due verifiche a un valore molto alto, per esempio 100, in modo che le verifiche siano molto rare, mentre quando siamo collegati alla corrente elettrica e abbiamo un po' di tempo, potremmo usare l'opzione -C 100 per forzare la verifica delle partizioni al riavvio. Questo ci permetterebbe di evitare di sprecare la preziosa energia accumulata nelle batterie!

Ricorda che puoi vedere il mount count attuale e il maximum mount count impostato per una certa partizione, ad esempio /dev/hda5, usando il comando:

# tune2fs -l /dev/hda1 | grep -i "mount count"

Conclusione

Come sempre, il bello del nosto sistema operativo è che ci permette sempre di modificare il suo funzionamento in totale libertà per adattarlo sempre di più alle nostre esigenze personali. Come sempre, il limite è la nostra competenza e la nostra fantasia!

Termino con il dovuto avvertimento, che ripeto ancora una volta, visto che il rischio di fare pasticci è sempre in agguato:

ATTENZIONE! L'uso di questa utility è a proprio rischio e pericolo. Si sta modificando il filesystem!

Trackback URL for this post:

http://gerlos.altervista.org/trackback/147

commenti

Invia nuovo commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.
  • Allowed HTML tags: <a> <em> <strong> <del> <cite> <code> <img> <ul> <ol> <li> <dl> <dt> <dd> <pre>
  • Linee e paragrafi vanno a capo automaticamente.
  • Insert Flickr images: [flickr-photo:id=230452326,size=s] or [flickr-photoset:id=72157594262419167,size=m].
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Maggiori informazioni sulle opzioni di formattazione.

CAPTCHA
Per provare che sei un visitatore umano, rispondi a questa domanda. È per evitare l'inserimento di messaggi spam.
Image CAPTCHA
Enter the characters shown in the image without spaces, also respect upper and lower case.