Nepristupny disk C

Pavel Troller patrol@sinus.cz
Čtvrtek Prosinec 4 08:48:20 CET 2008


> > Hezky vecer,
> 
> Dobre rano. :-)
> 
> 
> > to stejne. Ani Linux si nedovede zridit primy pristup k disku a kontrola 
> 
> Jak tedy L. pristupuje k tomu disku? Nebo on se na nej vubec nedostane? Pise neco? Zkusila jsi ho ze studeneho startu, tj. nejlepe vypnout/zapnout?
> 
> Petr

Zdravim,
  ano, to jsou spravne kladene otazky. Kdyz uz bychom pouzili pro pristup
muzeme vyuzit jeho takrka neomezenych moznosti chybovych laseni a logu a
zarucuji, ze diagnostika bude naprosto detailni a vycerpavajici. Zkusil
bych tedy tento postup (je obtizne psat neco konkretniho, kdyz vubec nevim
ani hardwarovou konfiguraci stroje, tj. na jakem rozhrani je inkriminovany
disk pripojen, ani verzi GNU/Linuxu (tj. cele distribuce), jaka bude pro
ten test pouzita, nicmene hrube rady budou snad mozne, je nutno si to
jen prizpusobit.
  1) Je treba zjistit jmeno fyzickeho zarizeni daneho disku. To nebude C:
ani nic podobneho, ale /dev/<neco>. To <neco> muze byt budto hd<x>, kde x
je a pro primarni master, b pro primarni slave, c pro sekundarni master a
d pro sekundarni slave. Pokud je to sata disk, nebo pokud je pouzito nove
generace ovladacu disku, bude se jmenovat /dev/sd<x>, kde x jde opet od
a az k z a znamena ted uz jen poradi, v jakem byl dany disk detekovan.
Pokud se tedy prokouseme timto a vime, jak se nas disk jmenuje, zkusme
nasledujici prvni test:

dd if=/dev/nas_disk of=/dev/null bs=512 count=1  (nas_disk samozrejme
nahradime spravnym jmenem).

Tim zkusime zkopirovat prvni sektor disku do /dev/null, cili "do prazdna".
Pokud by vsak disk nebyl fyzicky pristupny, bude vypsana nejaka chyba.
Ta se ve vsech pripadech nemusi zobrazit; pokud vsak system nic nenahlasi
a opet se objevi prompt shellu, probehlo to asi korektne. Nicmene, pro
jistotu lze provest kontrolu takto:

dmesg | tail

Tim si vypiseme uplny konec systemoveho logu. Zkontrolujeme, zda tam neni
neco, co by se tykalo "naseho" zarizeni /dev/nas_disk.
  Dale bych zkontroloval platnost partition tabulky. Zkusil bych pouzit
tento prikaz

fdisk /dev/nas_disk

a v nem prikaz "p" jako Print. Mela by se vypsat partition tabulka, ktera
by mela odpovidat skutecnosti. I linuxovy fdisk spravne rozpozna typy
souborovych systemu, pouzivanych jinymi OSy. Pokud tedy se vse vypise,
opet to znamena, ze ve fyzickem pristupu k disku nebyla shledana zavada.
fdisk ukoncime prikazem "q" (nehrozi, ze by nam na disku cokoli zmenil).
Pak muzeme opet udelat kontrolu pomoci dmesg | tail, zda nepribyly nejake
zaznamy o chybach. Jeste pri behu fdisku si zapamatujeme cisla partitions,
budou se hodit pro dalsi test.

Nakonec muzeme pristoupit ke kontrole pristupu k jednotlivym partitions.
Bude to stejne, jen pouzijeme jmeno zarizeni, doplnene cislici dle cisla
partition. Napr. pro prvni partition

dd if=/dev/nas_disk1 of=/dev/null bs=512 count=1

a opet dmesg | tail .
Postupne takto "obejdeme" vsechny oddily. Pokud chceme provest hlubsi
kontrolu, muzeme do polozky count prikazu dd dat vetsi cislo, rovne max.
poctu sektoru oddilu (lze zjistit opet z vypisu fdisku). To bude tedy
cist cely oddil a pokud se vyskytne jedina low-level chyba, v logu se
urcite objevi.

Pokud tyto testy skonci vsechny bez viditelnych chyb, je fyzicky pristup
k disku v poradku. Pokud ne, prosim o jejich reportovani.

S pozdravem Pavel Troller



Další informace o konferenci Hw-list