diwaffm
Goto Top

Wie Partionen wieder mounten?

Hi Leute,

ich habe hier 2 Platten eines vormals laufenden (openSUSE 11) Rechners.
Leider scheint da irgendwas über die Wupper gegangen zu sein.

Folgendes Verhalten:

Booten des Rechners funktioniert soweit.
Im Textmodus laufen die Informationen durch, bis zum Login.
Username wird akzeptiert, danach: "Fehler im System"

Versuch einer Reparatur-Installation - Systemtests laufen durch bis zur Meldung: Keine root-Partition gefunden.

Systemreparatur im Expertenmodus zeigt folgende Partitionen:

/dev/sda1 - reiserfs - ohne Mountpoint
/dev/sda2 - reiserfs - ohne Mountpoint
/dev/sdb1 - swap - ohne Mountpoint
/dev/sdb2 - linux_raid_member - ohne Mountpoint

Wenn ich mich recht erinnere ist
sda1 die root-Partition
sda2 eine Archiv-Partition mit eher unwichtigen Daten
sdb2 die home-Partition mit den wichtigen Daten

Habe ich die Möglichkeit diese Partitionen wieder an den passenden Stellen ins System einzuhängen?

Wahrscheinlich bei einer Neuinstallation - da müsste aber sichergestellt sein, dass zwar die Mountpoints gesetzt, nicht aber die Platte partitioniert bzw. formatiert wird...

Interessant wäre sicher auch, die raid-Partition in einen anderen Partitionstypen umzuwandeln - aber das ist in meinen Augen erst in einem zweiten Schritt machbar, wenn ich Zugriff auf die Daten habe...

Ciao

dirk

Content-Key: 134174

Url: https://administrator.de/contentid/134174

Printed on: April 24, 2024 at 10:04 o'clock

Member: datasearch
datasearch Jan 23, 2010 at 13:50:32 (UTC)
Goto Top
Hallo Dirk,

am besten du bootest von einer Rescue CD, prüfst die Dateisysteme und versuchst diese per Hand zu Mounten. Sobald du Zugriff auf deine root-Partition hast, kannst du die fstab Edieren und eventuell falsch gesetzte Einhängepunkte korrigieren. Anschließend würde ich versuchen alle Partitionen richtig zu Mounten (proc und dev kannst du von dem Live-System mounten) und mit einem chroot in das System zu wechseln. Hier kannst du yast starten und die Bootkonfiguration wiederherstellen (alternativ natürlich /boot/grub/menu.lst edieren oder die Grub-Shell starten)

Was mich etwas wundert, warum ist deine Partition für /home plötzlich vom Typ Linux-Raid? Hattest du versucht ein Raid einzurichten?
Member: diwaffm
diwaffm Jan 23, 2010 at 14:03:40 (UTC)
Goto Top
Zitat von @datasearch:
am besten du bootest von einer Rescue CD, prüfst die Dateisysteme und versuchst diese per Hand zu Mounten.

Das habe ich mit der "System Rescue CD" probiert - doch ist es mir nicht gelungen...

Sobald du Zugriff
auf deine root-Partition hast, kannst du die fstab Edieren und eventuell falsch gesetzte Einhängepunkte korrigieren.
Anschließend würde ich versuchen alle Partitionen richtig zu Mounten (proc und dev kannst du von dem Live-System
mounten) und mit einem chroot in das System zu wechseln. Hier kannst du yast starten und die Bootkonfiguration wiederherstellen
(alternativ natürlich /boot/grub/menu.lst edieren oder die Grub-Shell starten)

Das sind leider Böhmische Dörfer face-wink
Werder aber versuchen mich durchzuhangeln...

Was mich etwas wundert, warum ist deine Partition für /home plötzlich vom Typ Linux-Raid? Hattest du versucht ein Raid
einzurichten?

Nein, da gab es mal ein Raid - bei dem die 2. Partition über den Jordan gegangen ist...
Deswegen die Überlegung, daraus eine normale Patition draus zu machen, denn ein RAID 1 mit einer Platte ist reichlich witzlos...

ciao

dirk
Member: datasearch
datasearch Jan 23, 2010 at 14:40:49 (UTC)
Goto Top
Hattest du ein DM-Raid? Gib mal bitte ein "sfdisk -d /dev/sda". Ist der Typ Linux Raid Autodetect, versucht der Kernel beim Booten das MD zu starten.

Was passiert denn genau wenn du versuchst folgendes zu tun:

sysrescue-CD starten

cd /mnt
mkdir systmp
cd systmp
mkdir sda1
mkdir sda2
mkdir sdb2
fsck /dev/sda1
fsck /dev/sda2
fsck /dev/sdb2
mount /dev/sda1 sda1
mount /dev/sda2 sda2
mount /dev/sdb2 sdb2
mount
Sollte er nicht mounten, muss eine Ausgabe mit der Ursache erscheinen. Wenn ja, wechsle in deine root-Partition und prüfe die datei "fstab" im Ordner "etc".
Member: diwaffm
diwaffm Jan 23, 2010 at 15:05:25 (UTC)
Goto Top
Zitat von @datasearch:
Hattest du ein DM-Raid? Gib mal bitte ein "sfdisk -d /dev/sda". Ist der Typ Linux Raid Autodetect, versucht der Kernel
beim Booten das MD zu starten.

/dev/sda1 : start = 63, size=8241282, Id=83, bootable
/dev/sda1 : start = 8241345, size= 148038975, Id=83
/dev/sdb1 : start = 63, size=2072322, Id=82
/dev/sdb2 : start = 2072385, size=148038975, Id=fd



Was passiert denn genau wenn du versuchst folgendes zu tun:

> fsck /dev/sdb2
> 

fsck: fsck.linux_raid_member: not found
fsck: Error 2 while executing fsck.linux_raid_member for /dev/sdb2

> mount /dev/sda1 sda1
> mount /dev/sda2 sda2
> mount /dev/sdb2 sdb2
> 

mount: unknown filesystem type "linux_raid_member"


Sollte er nicht mounten, muss eine Ausgabe mit der Ursache erscheinen. Wenn ja, wechsle in deine root-Partition und prüfe die
datei "fstab" im Ordner "etc".

in sda1 befinden sich folgende Einträge:
boot
grub
initrd
map
memtest.bin
vmlinuz
sowie noch ein par .gz Dateien...

in sda2 befindet sich das /home Verzeichnis des Rechners - also alle Daten...

Dann muss es innerhalb der RAID Partition noch das rootverzeichnis und mein Archivverzeichnis geben...

Ciao

dirk
Member: diwaffm
diwaffm Jan 23, 2010 at 16:05:43 (UTC)
Goto Top
Zitat von @datasearch:
Hattest du ein DM-Raid? Gib mal bitte ein "sfdisk -d /dev/sda". Ist der Typ Linux Raid Autodetect, versucht der Kernel
beim Booten das MD zu starten.

Ich habe mal ein fdisk -l eingegeben - und das liefert mir

disk /dev/sdb: 80.0GB
/dev/sdb1    1   129  ID:82 Linux swap
/dev/sdb2  130  9344  ID:fd Linux raid autodetect

Also genau wie von Dir vermutet.

Allerdings kommt als nächstes dann

Disk /dev/md0: 75,8GB
Disk /dev/md0 doesn't contain a valid partition table  

Ciao

dirk
Member: diwaffm
diwaffm Jan 23, 2010 at 18:58:57 (UTC)
Goto Top
Zitat von @datasearch:
Sobald du Zugriff
auf deine root-Partition hast, kannst du die fstab Edieren und eventuell falsch gesetzte Einhängepunkte korrigieren.

OK - ich habe es nun soweit geschafft...
Mit hilfe eines auf einer sauberen Platte neu aufgesetzten openSUSE konnte ich via YAST den Mountpoint für die zweite Platte mit der RAID-PArtition manuell ändern - und jetzt liegt sie vor mir.

Im Moment weiß ich nur noch nicht, ob ich einfach die relevanten Daten rüberkopieren soll und dann schaue, dass ich alles wieder so konfiguriert bekomme, wie vorher - oder ob ich versuche die Kiste mit den alten Platten wieder zum Laufen bekomme...

Ich tendiere eigentlich zu letzterem...

Hier die fstab des alten Systems:

/dev/md0   /               reiserfs  acl,user_xattr    1 1
/dev/sda1  /boot           reiserfs  acl,user_xattr    1 2
/dev/sdb1  swap            swap      pri=42            0 0
/devpts    /dev/pts        devpts    node=0620,gid=5   0 0
proc       /proc           proc      defaults          0 0
usbfs      /proc/bus/usb   usbfs     noauto            0 0
sysfs      /sys            sysfs     noauto            0 0
/dev/sda2  /home           reiserfs  acl,user_xattr    1 2

DAS sieht doch eigentlich ok aus, oder?

Aber wenn das auf der Platte korrekt steht, warum wird es dann beim Booten nicht korrekt gemountet?

Xiao

dirk
Member: datasearch
datasearch Jan 23, 2010 at 20:02:22 (UTC)
Goto Top
Laut dieser fstab war das RAID-Device deine root-partition und sda2 dein eigentliches /home. Das ist seltsam, da ja eigentlich /dev/md0 nach /home gemountet werden sollte. Prüfe bitte nochmal was jetzt auf welcher Partition liegt.

Um eine neue Spiegelung einzurichten brauchst du eigentlich nur wenige Befehle. Auf 2 Platten gleichgroße Partitionen vom Typ "fd" erstellen, mit "mdadm --create md1 --level 1 --raid-devices 2 -name "Mein System" /dev/sda2 /dev/sdb2" das Array erstellen, Partitionieren (sonst meckert dich das System bei jedem Bootvorgang an) und im Wunschdateisystem formatieren. Ich würde dir empfehlen die Daten von alten Array zu verschieben und alles neu und sauber anzulegen. Bevor du die Daten wieder auf das Array legst, übe bitte die Wiederherstellung im Fehlerfall. Wie man ein Array mit fehlenden Platten startet währe für den Anfang nicht schlecht face-wink
Member: diwaffm
diwaffm Jan 23, 2010 at 20:20:35 (UTC)
Goto Top
Zitat von @datasearch:
Laut dieser fstab war das RAID-Device deine root-partition und sda2 dein eigentliches /home. Das ist seltsam, da ja eigentlich
/dev/md0 nach /home gemountet werden sollte. Prüfe bitte nochmal was jetzt auf welcher Partition liegt.

Das war der Versuch einer Erinnerung face-wink
Ich habe den Server undokumentiert übernommen...


Um eine neue Spiegelung einzurichten brauchst du eigentlich nur wenige Befehle.

Mangels zusätzlicher Platte und Platz für sie selbe, wäre mir der Weg, die Spiegelung GANZ aufzuheben - also aus dem RAID eine normale Partition zu machen - lieber.

Sicherung erfolgt täglich auf Band...

Ciao

dirk
Member: diwaffm
diwaffm Jan 25, 2010 at 09:41:36 (UTC)
Goto Top
Ich habe jetzt von der Live CD gebootet.

Dann mit

mount /dev/sda1 /boot
mount /dev/sdb1 /home
mount /dev/md0 /mnt/md0 ( nach / kann ich diese Partion ja im Livesystem nicht mounten)

die Partitionen gemountet und mit

chroot /mnt/md0 /bin/bash -i

das System gewechselt.

Nun habe ich aber keinen Zugriff auf /boot und /home - bzw. beide sind leer...

Wo ist mein Denkfehler face-wink

Merci

dirk
Member: datasearch
datasearch Jan 25, 2010 at 13:10:27 (UTC)
Goto Top
Du musst die Ordnerhirachie beachten.

LiveCD Booten, Platten mounten
mkdir /mnt/tmpsys
mount /dev/md0 /mnt/tmpsys
mount /dev/sda1 /mnt/tmpsys/boot
mount /dev/sdb1 /mnt/tmpsys/home
mount -o bind /proc /mnt/tmpsys/proc
mount -o bind /dev /mnt/tmpsys/dev
Und nun in das System wechseln
chroot /mnt/tmpsys /bin/bash (oder die Shell deiner Wahl)
Member: diwaffm
diwaffm Jan 29, 2010 at 10:53:52 (UTC)
Goto Top
Nachdem leider alle Tipps von hier (und anderen Seiten) nicht zum gewünschten Ergebnis führten, habe ich (nach Backup der Platten) eine Update-Installation von openSUSE 11.1 durchgeführt.

Und siehe da: meine Platten sind wieder da und die Kiste bootet wieder wie gewünscht...

Merci

dirk