cat /proc/mdstat

Dieses Thema im Forum "Linux & BSD" wurde erstellt von Bathroth, 28. Juni 2010 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 28. Juni 2010
    Guten Tag,

    ich bin derzeit in einem Praktikum und solle für die Firma einen Linuxserver aufsetzen. Es sollen 2 SCSI Platten im Raid1 darauf laufen. Damit man schnell feststellen kann wenn eine der Platten kaputt ist, sollte ich dazu ein Script schreiben was prüft ob eine der Platten ausgefallen ist.

    Die Schleife und die If Verzweigung sind nicht das Problem. Mein Problem ist allerdings der Prüfbefehl.

    Er lautet ja
    Code:
    cat /proc/mdstat
    So nun zu meinem Problem. Wenn ich eine der beiden Platten ausstecke sollte theoretisch gesehen später im Script stehen das ein Problem aufgetaucht ist oder ähnliches. Da ich mit dem Script noch nicht fertig bin, da es per Mail an den Chef gesendet werden soll (und ich im moment noch kein Mailserver installiert hab), habe ich es manuell getestet. Das heißt ich habe den Befehl eingegeben bevor ich die Platte rausgezogen habe und danach noch einmal. Nun steht bei beiden Ausgaben das gleiche.

    Der Befehl cat ... zieht ja nur einen bestimmten Teil aus der Datei raus. Also muss irgendwann etwas in die Datei geschrieben werden ob alles klappt. Und mein Problem ist ... WANN? ich habe mir gedacht eventuel alle 5 Minuten, aber ich sitze schon seid 10 Minuten und warte. Wird es einmalig beim Start des PCs festgelegt?

    Habt ihr eine Idee wie lange so etwas dauert? Oder habt ihr eine Ahnung wie ihr genau die Überprüfung Manuell ohne das auslesen der Datei hinbekommt. Ich habe schon recherschiert aber immer nur den Cat Befehl gefunden.

    Ich wäre euch sehr verbunden wenn ihr mir helfen könntet.
    Linux: Ubuntu 10.04 Server
    SCSI: 2* 73GB Ultra320
    RAID: 1
    Root: auf 80GB IDE

    Mfg Bathroth
     
  2. 28. Juni 2010
    AW: Mdstat Problem

    der befehl cat gibt den gesamten inhalt der gewählten datei aus.
    wenn eine der beiden platten ausgefallen ist, müsste doch in einer zeile sowas wie error oder dergleichen stehen. das filters halt mit ner pipe durch grep raus, hängst vielleicht noch n hübschen date string dran und leitest den ganzen senf in ne datei um, deren inhalt später an deinen chef geht.
    Code:
    while [[ 1 == 1 ]]
    do
    sleep 10
    var=`cat /proc/mdstat |grep erroroderwasauchimmer`
    if [ -z $var ]
    then
    else
    echo $var >> /datei/für/dein/chef
    echo `date` >> datei/für/dein/chef
    echo " " >> /datei/für/dein/chef
    fi
    done
    der umweg über die variable deshalb, damit er nix macht, wenn alles OK is.
     
  3. 28. Juni 2010
    AW: Mdstat Problem

    Guten Tag,

    ich habe ja bereits in die Datei reingeguckt .. dort steht kein einziger Fehler. Und das ist das Problem. Warum?

    Die Platte ist seid 15 Minuten nicht angeschlossen und bisher steht in der Datei nix was iwie mit Fehler zu tun haben könnte.

    Im Normalfall sollte da dann anstatt der Ausgabe...
    Code:
    md0 : active raid1 sdc1[1] sdb1[0]
     71784384 blocks [2/2] [UU]
    das ...
    Code:
    md0 : active raid1 sdc1[1] sdb1[0]
     71784384 blocks [2/2] [U_]
    stehen. Und warum steht da immer noch dieses [UU]?

    Ich blicke da nicht durch. Das Scripten kommt ja später. Aber erst muss ich rausfinden was es mit dem mdstat auf sich hat. Ich denke es wird eventuel nur beim Neustart neu geschrieben. Ich werde mal den PC neu booten und dann mal gucken ob ein Fehler auftaucht.

    mfg und danke schonmal!
     
  4. 28. Juni 2010
    AW: Mdstat Problem

    hm vielleicht wird mdstat nicht kontinuierlich auf den aktuellen stand gebracht (was mich auch wundern würde, aber man weiß es nicht). mit mdadm --monitor oder so ähnlich kann man doch auch den status abrufen, probiers mal damit.
     
  5. 28. Juni 2010
    Alles klar... bin es grade am Testen mit mdadm --monitor --scan ... so stands in der manual drin das es so getestet wird. Aber im Moment kommt da net wirklich was ...ich werd mal was weiter googlen und mich dann gleich vielleicht nochmal melden .. weil wirklich weiter komme ich grade nicht^^... und solange das nicht wirklich läuft das überprüfen brauch ich auch noch kein script schreiben :S

    danke aber nochmals

    //edit: was mir grade einfällt. Ich habe am Anfang der Installation das Raid bereits eingerichtet per Partitionierung. Gibt das dann ein Problem mit dem MDstat btw dem mdadm ?

    Habe immer noch nicht hinbekommen wie ich mein Raid getestet bekomme. Ich schätze es hängt mit der Installation zusammen, weil ich dort direkt das Softwareraid eingestellt habe.

    Aber wenn noch irgendwer eine Idee haben sollte. Freue mich über jede antwort.

    Greetz,
    Bathroth!
     
  6. 30. Juni 2010
    AW: cat /proc/mdstat

    warum der mdstat nicht aktualisiert wird, is ne gute frage. einzige erklärung könnte für mich n timeout von so und soviel sekunden sein.

    aber mal was anderes. du könntest neben der mdstat auch die ausgabe von dmesg auswerten. da sollte das auf jedenfall sofort zu sehen sein, wenn eine platte ausfällt.
     
  7. 30. Juni 2010
    AW: cat /proc/mdstat

    Ich habe das Problem nun festgestellt. Ich hatte Anfangs ja mit meinem Chef drüber geguckt und er meinte es müsste wenn man die platte entfernt direkt ne Meldung kommen über das Mdstat

    ja er hat in der laufenden synchronisation des Raids den Befehl ausgeführt. Ich dachte er weiß schon was er macht. Aber war wohl eher nicht so der Fall.

    Jetzt grade sitz ich an dem Mail Problem da ich das ganze Scenario so erst testen kann wenn beides funktioniert. Ich melde mich aber, bzw probiere deinen Befehl aus, wenn ich soweit durch bin und es nicht klappt

    danke nochmals!
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.