Ho trovato questa fantastica risposta alla domanda sulla mailing list generale degli appassionati di Linux di Atlanta:
Alla fine l'ho capito dopo aver riflettuto molto e aver letto la manpage circa 10 volte. Ho pensato di condividerlo nel caso qualcun altro avesse bisogno delle informazioni. Cercare su Google non ha aiutato molto, dato che questi elenchi di solito citano solo la pagina man. Quando la pagina man dice last-block first-block, non vuole che tu inserisca quelle PAROLE, vuole che tu inserisca un NUMERO. Menziona che entrambi sono opzionali, ma non riesco a capire come tralasciare last-block se desidera specificare il primo blocco.
Supponiamo che tu abbia interrotto il test originariamente al blocco 33000001. Riavvierei il test a un blocco in meno, quindi 33000000.
Innanzitutto, devi determinare qual è l'ultimo numero di blocco sulla partizione. Ho trovato due modi per farlo.
Puoi avviare
badblocks
senza numeri di blocco. Ti dirà l'intervallo di blocchi che sta elaborando.Es:
sudo badblocks -sv /dev/sda3
E dice qualcosa del tipo:
Searching for badblocks in read only nondestructive mode from block to 66828373
Annota questo numero di blocco finale. Termina il test con CTRL-C e quindi inserisci il comando con i numeri di blocco che desideri.
Puoi usare il
fdisk
(o penso anchesfdisk
) per elencare le informazioni sulla partizione. Una delle colonne di informazioni è # ofblocks. Trova il numero di blocchi nella partizione che ti interessa e SOTTRAI 1 poiché i blocchi sono numerati a partire da 0.
sudo fdisk -l /dev/sda
(Questa opzione è una L minuscola. In questo caso, non specifichi il numero della partizione, ma solo la designazione del disco rigido.)E dice qualcosa del tipo:
/dev/sda2 ... /dev/sda3 ... 66828374 /dev/sda4 ...
Trova la partizione che ti interessa e leggi il numero di blocchi e sottrai 1 per trovare l'ultimo numero di blocco.
Ora puoi inserire il
badblocks
comando come segue. Supponiamo che tu voglia iniziare il test nel mezzo della partizione al blocco 33000000. Questo esempio è per la modalità lettura/scrittura non distruttiva conbadblocks
lista in un file di testo. Se avviato da un cd live, perderai questo file di testo al riavvio.
sudo badblocks -nsv -o ~/Desktop/badblocks.txt /dev/sda3 66828373 33000000
Questo testerà dal blocco 33000000 alla fine della partizione. Se specifichi 66828374 come ultimo blocco, come riportato in
fdisk
, riporterà quel numero di blocco come errato, ma, in realtà, quel numero di blocco non esiste.Spero che altri possano trovarlo utile, dato che mi ha davvero confuso per un po'.
Sinceramente,
Ron
C'è un modo per specificare da quale blocco badblocks
dovrebbe iniziare e l'ultimo blocco (vedi man badblocks
):
badblocks [ -svwnfBX ] [ -b block-size ] [ -c blocks_at_once ] [ -e
max_bad_blocks ] [ -d read_delay_factor ] [ -i input_file ] [ -o
output_file ] [ -p num_passes ] [ -t test_pattern ] device [
last-block ] [ first-block ]