SOLVED: SMART a off-line testy disku
Jan Kasprzak
kas na informatics.muni.cz
Pátek Duben 30 14:15:33 CEST 2004
Dobry den,
vyresil jsem to na co jsem se tak pred mesicem tady ptal a nikdo mi nebyl
schopen odpovedet. Cili pokud to nekoho zajima, tady je odpoved:
Jan Kasprzak wrote:
: Tibor Pittich wrote:
: : ak tomu dobre rozumiem teda, potrebujes spustit jednorazovo self test
: : zvolenej urovne a potom si precitat vysledok. to sa robi napriklad takto:
: :
: No hura. Uz se blizime. Jen vypustit to "jednorazovo". Jde mi o
: to, jak kontrolovat disky, ktere se neumi kontrolovat samy, abych to nemusel
: delat rucne. Cili neco, co pusti test, precte vysledek, a kdyztak zarve.
: Umi toto smartd? Pokud ne, nejspis bude treba na to napsat skript.
:
: : # smartctl -t TYP_TESTU /dev/hda
: : po short napriklad je treba pockat 2 minuty zhruba, potom
: :
: : # smartctl --log=selftest /dev/hda
: : pre zobrazenie vysledku.
:
: No jo, a co je to "pockat"? Neposilat zadne SMART prikazy?
: Pak by se mi do toho bezici smartd mohl plest. Cili je treba zastavit
: smartd a pak ho znovu spustit?
Experimentalne jsem vyzkousel, ze kdyz pomoci smartctl -t
pustite self-test, tak to neohrozi paralelne bezici smartd. Naopak smartd
je schopen si vysledek testu precist a pokud doslo k chybe, tak poslat
mail o tom, ze se zvysilo pocitadlo neuspesnych self-testu (ano, narazil
jsem zrovna na disk, kdy self-test neprosel(*)).
V prubehu S.M.A.R.T. self-testu je mozne posilat libovolne
prikazy (krome dalsiho self-testu a krome abort self-test (smartctl -X) :-).
:
: A jeste se vracim k otazce, co jsou jednotlive typy testu
: a jak casto je vhodne je spoustet.
:
Tohle ovsem nevim, tak jsem to vyresil tak, ze jeden den v tydnu
spoustim na vsech discich long, dalsi den offline, dalsi den conveyance
a ostatni dny short test. Pouzivam takovyto skript spousteny z /etc/cron.daily:
-----------------cut---cut---cut-----------------------------------
#!/bin/bash
#
# Skript na pousteni S.M.A.R.T. self-testu na discich
# Zbastlil Yenya <kas na fi.muni.cz> 2004-04-01
PATH=/sbin:/usr/sbin:$PATH
case `date +%w` in
6) TEST=conveyance ;;
4) TEST=long ;;
2) TEST=offline ;;
*) TEST=short ;;
esac
for DRIVE in '-d 3ware,0 /dev/sda' \
'-d 3ware,1 /dev/sda' \
'-d 3ware,2 /dev/sda' \
'-d 3ware,3 /dev/sda' \
'-d 3ware,4 /dev/sda' \
'-d 3ware,5 /dev/sda' \
'-d 3ware,6 /dev/sda' \
'-d 3ware,7 /dev/sda'
do
smartctl -t $TEST $DRIVE >/dev/null \
|| echo "smartctl on '$DRIVE' failed"
sleep 5
done
-----------------cut---cut---cut-----------------------------------
Rekl jsem si, ze "long" test asi odhali nejvic problemu, takze to spoustim
ve ctvrtek, abych mel pripadne jeste patek na opravu (puvodne jsem myslel
ze bude lepsi "long" pustit o vikendu, kdy je nejvetsi zatez, ale to
pak znamena ze se problem zjisti o vikendu a bude nutno ho behem vikendu
resit. YMMV).
Hope this helps,
-Yenya
(*) Ten "vadny" disk byl zrejme vadny z vyroby v tom, ze nejaky sektor
nebyl korektne zapsany a az "long" S.M.A.R.T. self-test na nem nasel chybu
pri cteni (pricemz OS sam do toho mista zrejme nikdy nezapsal).
Nicmene disk samotny byl v poradku, takze stacilo do tech sektoru neco
zapsat, a vse bylo OK (a skutecne ani nedoslo k relokaci sektoru).
--
| Jan "Yenya" Kasprzak <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839 Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/ Czech Linux Homepage: http://www.linux.cz/ |
Any compiler or language that likes to hide things like memory allocations
behind your back just isn't a good choice for a kernel. --Linus Torvalds
Další informace o konferenci Linux