• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[Workaround] Inst. 11.3: Erstellen der initrd schlägt fehl

cbockem

Newbie
Ich hänge diese Meldung an den geschlossenen Thread, weil ich gerade mit exakt der gleichen Fehlermeldung und gleichem Logdatei-Inhalt das gleiche Problem habe: Bei der Installation schlägt chroot fehl, dann kommt noch die Meldung
Code:
Beim Erzeugen der initrd trat ein Fehler auf
und dann kann aus der betreffenden Boot-Partition nicht gestartet werden. GRUB meldet dass es jetzt irgendwie in "Phase 2" käme, macht dann aber nichts mehr. Nun ja, vermutlich sind halt gewisse "Haushalt-Jobs" nicht gemacht worden weil das System nach dem misslungenen chroot nicht das System vor sich hatte das es "dachte" - also z.B. initrd nicht am richtigen Ort, usw. Und dann ist ein misslungener Boot ja auch weiter kein Wunder...

Unterschied zum alten Thread: Ich mache das Ganze mit der Gnome Live-CD Version 11.3, und mein "Nebensystem" ist eComStation 2.0 (sozusagen das aufgefrischte OS/2), und darum benutze ich überall JFS als Dateisystem, ausser für die kleine Boot-Partition, die ich extra gemacht habe weil ich fürchtete, dass es daran liegen könne; die ist mit ext2 formatiert.

Nach der Installation kann ich zwar nicht openSuse booten, aber ich habe Zugriff auf sämtliche Dateien, die schon installiert sind: Entweder von eCS aus (ohne die Bootpartition), oder wenn ich von der Live-CD boote (dann mitsamt Bootpartition). Ich könnte also durchaus manuell kleine Fixes durchführen, wenn dadurch das System zum Leben erweckt werden könnte! Nur bin ich noch lange nicht der grosse Linux-Freak, der das erfolgreich machen könnte...

Im bisherigen Thread sieht die Geschichte ja so aus: Fehler aufgetreten in RC - Fehler gemeldet - Fehler weg in final release! Nur dummerweise installierte ich ja jetzt auch eine Final Release, und sogar noch eine "höhere": Von "Fehler behoben" kann also keine Rede sein... Oder könnte der Versuch mit der älteren 11.2 Release ein lohnenswerter sein?

Im Thread wurde auch vorgeschlagen, die Installation mal von der DVD zu probieren. Könnte ich theoretisch tun, auch wenn ich noch nie Downloads >1GB gemacht habe: Immerhin sollte meine ADSL-Verbindung das mitmachen. Aber lieber nur dann wenn wirklich ein "begründeter Verdacht" besteht dass das besser funktioniert als mit der Live-CD, auf der doch vermutlich exakt die gleichen Dateien mit dem gleichen Release-Stand stehen!??
 

lOtz1009

Moderator
Teammitglied
Nein, die LiveCDs enthalten andere Pakete. Zwar sind es keine wirklich großen Abweichungen, aber es ist nunmal so.
Wenn alle Daten wirklich korrekt da sind, müsste man mit einem Live-System selbst einen chroot durchführen können und dann die initrd neu erstellen. Ich glaube irgendwo hier gab's mal eine Anleitung dazu.

EDIT:
Abgetrennt von http://www.linux-club.de/viewtopic.php?f=3&t=106091
 
OP
C

cbockem

Newbie
Ja, gemäss Info die ich durch suchen hier finden konnte müsste ich mal folgendes probieren:

1. Booten von Live-CD

2. Die installierten Sachen nach \mnt mounten.

Wie ich bei meinen Versuchen gesehen habe funktioniert das schon "fast" automatisch wenn ich einfach auf die entsprechenden Partitionen im "Filesystem" doppelklicke. Nur müsste ich vielleicht dafür sorgen, dass die Boot-Partitin nicht auch direkt in \mnt gemountet wird, sondern in \mnt\boot (!??) Einfach damit der Baum so ist wie er später mal sein soll!

3. Einfach den Befehl chroot \mnt geben, um eben "dorthin zu rooten"

4. mkinitrd wäre dann wiederum der Befehl, der "alles übrige" macht

Werde ich dann mal bei nächster Gelegenheit (d.h. wenn die Familie es erlaubt! ;-) ) ausprobieren: Mehr als schiefgehen kann's ja kaum! ;-)

Wenn's nicht klappt, müsste ich dann halt wirklich mal sehen, die DVD herunter zu laden und zu brennen; da scheint es ja auch noch so ein Ding wie "Installation reparieren" zu geben, das dann vielleicht nicht so lange läuft wie eine Neuinstallation!? Wobei diese Zeit eigentlich auch ziemlich egal ist: tut der Rechner ja alleine...
 

josef-wien

Ultimate Guru
cbockem schrieb:
Beim Erzeugen der initrd trat ein Fehler auf
cbockem schrieb:
GRUB meldet dass es jetzt irgendwie in "Phase 2" käme, macht dann aber nichts mehr.
Das sind zwei unabhängige Fehler.

Schau Dir auch http://www.linux-club.de/viewtopic.php?f=4&t=109848&p=682360&hilit=chroot+bind+initrd#p682360 an. Statt /dev/md2 mußt Du Deine Systempartition angeben, als nächster Befehl ist unbedingt
Code:
mount /dev/sdXY /mnt/boot
einzufügen (XY ist Deine Boot-Partition).

GRUB kannst Du (in oder außerhalb der "Chroot-Umgebung") gemäß http://www.linux-club.de/viewtopic.php?f=4&t=100589&p=612947#p612947 installieren. Da openSUSE standardmäßig einen generischen MBR schreibt (damit wird der Boot-Sektor der "aktiven" Partition gestartet), kannst Du in der Setup-Zeile auch die Boot-Partition (bzw. die erweiterte Partition, wenn die Boot-Partition eine logische Partition ist) angeben.

cbockem schrieb:
da scheint es ja auch noch so ein Ding wie "Installation reparieren" zu geben
Bei 11.3 gibt es das nicht.

P.S. Bei der Installation von einer Live-CD laufen zum Teil andere Mechanismen ab als bei einer Installations-DVD.
 
OP
C

cbockem

Newbie
Danke für alle Tipps und Hinweise!

Was GRUB betrifft, so habe ich da mit Absicht gewählt dass der nicht aus dem MBR starten soll, sondern von der Boot-Partition. Dazu gibt es dann noch den "Bootmanager" (von IBM / OS2 / ecomstation), mit dem ich zuallererst auswähle ob die Reise nach ecs oder nach linux geht; wähle ich dann Linux, wird eben die Linux-Bootpartition gestartet, wo der Grub dann seinen Job tun soll - und bisher aber nicht tut.

Das erste Problem scheint mir aber in jedem Fall die bisher nicht gelungene Installation!

Tatsächlich habe ich nach den diversen Anleitungen mal von der Live-CD gebootet, dann die Boot-Partition bei /boot in die System-Partition gemountet, dann chroot. Hat so weit geklappt, also anders als während der Installation keine Fehlermeldung von chroot.

Allerdings hat sich dann mkinitrd beschwert, über Sachen die es nicht finden kann:

Code:
linux@linux:~> su
linux:/media # mount --bind /media/Linux /media/LinuxSystem/boot
linux:/media # chroot /media/LinuxSystem
linux:/> dir
total 101
drwx------   2 root root  4096 2010-07-06 07:41 bin
drwxr-xr-x   4 root root  1024 2010-07-06 07:43 boot
drwx------   3 root root   256 2010-08-18 14:47 clicboot
drwxr-xr-x   4 root root   256 2010-08-20 08:38 dev
drwxr-xr-x 113 root root 16384 2010-08-18 13:25 etc
drwxr-xr-x   2 root root   256 2010-08-18 10:22 home
drwx------  17 root root 16384 2010-07-06 07:43 lib
-rw-------   1 root root 27993 2010-07-06 02:49 license.tar.gz
drwx------   2  399 root   256 2010-07-06 09:44 livecd
drwx------   2 root root   256 2010-07-06 07:55 lost+found
drwx------   2 root root   256 2010-07-01 17:02 media
drwx------   2 root root   256 2010-08-18 14:07 mnt
drwx------   2 root root   256 2010-07-01 17:02 opt
drwxr-xr-x   2 root root   256 2010-08-18 10:22 proc
drwx------   2 root root   256 1970-01-01 01:00 read-only
drwx------   4 root root   256 2010-08-18 15:00 root
drwx------   3 root root 16384 2010-07-06 07:44 sbin
drwx------   2 root root   256 2010-07-01 17:02 selinux
drwx------   4 root root   256 2010-07-06 07:37 srv
drwxr-xr-x   3 root root   256 2010-08-18 10:22 sys
drwx------  18 root root  4096 2010-08-18 15:01 tmp
drwx------  12 root root  4096 2010-07-06 07:22 usr
drwxr-xr-x  15 root root  4096 2010-07-06 07:22 var
-rw-rw----   1 root disk   354 2010-08-18 13:10 WP ROOT. SF
linux:/> dir boot
total 10769
lrwxrwxrwx 1 root root       1 2010-08-18 14:08 boot -> .
-rw-r--r-- 1 root root    1236 2010-07-01 17:00 boot.readme
-rw-r--r-- 1 root root  115858 2010-07-05 15:24 config-2.6.34-12-default
drwxr-xr-x 2 root root    1024 2010-07-06 07:39 grub
lrwxrwxrwx 1 root root      24 2010-08-18 14:08 initrd -> initrd-2.6.34-12-default
drwx------ 2 root root   12288 2010-08-18 10:22 lost+found
-rw-r--r-- 1 root root  160280 2010-07-06 00:17 memtest.bin
-rw-r--r-- 1 root root  418304 2010-07-06 07:42 message
-rw-r--r-- 1 root root  189981 2010-07-05 15:25 symvers-2.6.34-12-default.gz
-rw-r--r-- 1 root root 1504091 2010-07-05 15:12 System.map-2.6.34-12-default
-rw-r--r-- 1 root root 4782992 2010-07-05 15:23 vmlinux-2.6.34-12-default.gz
lrwxrwxrwx 1 root root      25 2010-08-18 14:08 vmlinuz -> vmlinuz-2.6.34-12-default
-rw-r--r-- 1 root root 3787008 2010-07-05 15:12 vmlinuz-2.6.34-12-default
linux:/> mount /proc
linux:/> mount /sys
linux:/> mkinitrd

Kernel image:   /boot/vmlinuz-2.6.34-12-default
Initrd image:   /boot/initrd-2.6.34-12-default
cp: cannot stat `/usr/lib/libpng12.so.0': No such file or directory
KMS drivers:    intel-agp radeon
device node not found
Root device (/dev/sda8) not found
There was an error generating the initrd (1)
linux:/> 
linux:/> dir usr/lib/libpng*
lrwxrwxrwx 1 root root     18 2010-08-18 13:42 usr/lib/libpng14.so.14 -> libpng14.so.14.3.0
-rwx------ 1 root root 173936 2010-07-05 14:39 usr/lib/libpng14.so.14.3.0

Das sind doch offenbar mehrere Dinge, und irgendwie scheint mir, dass dieser Installation noch mehr fehlt als nur eine ordentliche initrd!

Ich glaube, das Einfachste wird jetzt wohl doch sein, mal eine komplette DVD zu generieren und von da aus nicht ein "repair", sondern eine Neuinstallation zu probieren. Hab schliesslich nichts dabei zu verlieren - ist ja eh noch nichts drauf und nichts eingerichtet was ich verlieren könnte! ;-)
 

josef-wien

Ultimate Guru
cbockem schrieb:
device node not found
Root device (/dev/sda8) not found
Du hast vor dem chroot
Code:
mount --bind /dev /media/LinuxSystem/dev
vergessen.

cbockem schrieb:
cp: cannot stat `/usr/lib/libpng12.so.0': No such file or directory
Bei Deiner Methode, Einhängepunkte einzuhängen, kann ich das nicht beurteilen, aber es sollte auch ohne diese Bibliothek funktionieren.
 
OP
C

cbockem

Newbie
cbockem schrieb:
Bei Deiner Methode, Einhängepunkte einzuhängen, kann ich das nicht beurteilen, ...

Ja ja, lach du nur! ;-) Ich bin mit dieser ganzen Mounterei noch echt nicht recht warm. Zumal ich auch vergessen hatte, beim Live-CD System die Sprache umzustellen; dann sucht man ewig nach den Sonderzeichen! Wobei es nach Umstellung auf "deutsch" hier für mich auch noch immer nicht recht gut geht: dann ist da eine "deutsch-deutsche" Tastaturbelegung aktiv; ich habe aber eine "schweiz-deutsche"... nerv nerv... immer wieder die ganze Reihe durch bis endlich der Stern - der Schrägstrich - das Plus ... gefunden sind! (Wobei ich sogar noch explizit gewählt hatte: "Tastatur: Deutsch (Schweiz)". Scheint nicht zu klappen. (nun, das sind nur die echt winzigen Probleme...)

Ansonsten ein Erfolg zu vermelden: Nach dem zusätzlichen mounten von /dev vor dem chroot lief mkinitrd durch und hatte (ausser der Geschichte mit der libpng..) nichts mehr zu meckern.

Grub scheint wirklich eine andere Geschichte noch zu sein: Ich komme noch immer nur bis

Code:
GRUB loading stage2..

Einzig neu scheint zu sein dass da jetzt am Ende zwei Punkte stehen; vorher war's nur einer...

Bei Gelegenheit muss ich da wohl mal mit den verschiedenen Grub-Dateien herumbasteln!??
 

josef-wien

Ultimate Guru
Dann installiere GRUB gemäß meinem Link vom 19.8., um zu sehen, ob Fehlermeldungen auftreten ("embed ....... failed (this is not fatal)" ist normal und braucht Dich nicht zu beunruhigen). Da Du GRUB in die Boot-Partition installieren willst, weil Dein Boot-Manager den Boot-Sektor dieser Partition startet, gibt Du bei setup dasselbe an wie bei root. Außerdem kannst Du noch
Code:
cat /boot/grub/stage2
eingeben, danach darfst Du zirka 20mal die Eingabe-Taste drücken, um diese Programmdatei als Text anzuzeigen, aber vielleicht kommt auch eine Fehlermeldung, daß mit der Datei etwas nicht paßt. Gefunden wird die Datei bei Deinen mißlungenen Start-Versuchen, denn die Meldung kommt schon aus stage2. Vielleicht ist des Rätsels Lösung auch eine Kuriosität wie http://www.linux-club.de/viewtopic.php?f=4&t=110273&p=687655&p687655.
 
OP
C

cbockem

Newbie
Danke erst mal für alle Tipps! Ich werde dann wohl mal diese Grub-Installation ein wenig systematisch "verfeinern", nach Studium deiner Links.

Natürlich könnte ich auch den "brute force"-Weg versuchen und erst mal eine Neuinstallation von DVD probieren. Erstens sind die Chancen allerdings durchaus gegeben dass ich dann am Ende auch wieder am gleichen Ort stecken bleibe, und zweitens sind das für mich ja auch Gelegenheiten zum Lernen: Irgendwann braucht auch der hartgesottenste OS/2-Fan mal ein Google Earth, einen Skype oder was es sonst noch so gibt was niemand auf diese Plattform portiert! Und da sehe ich einfach wie Linux langsam immer mehr "erwachsen" wird, während Windows in eine Richtung wandert, die mir heute noch wesentlich weniger gefällt als vor fast 20 Jahren als ich mit OS/2 anfing weil mir die DOS/Windows-Welt schon damals nicht gefallen wollte...

Ob ich nun allerdings noch weiter komme vor meiner kommenden zweiwöchigen Reise weiss ich noch nicht; danach werde ich allerdings wieder einsteigen - bis zum Erfolg, wie auch immer! :D
 
OP
C

cbockem

Newbie
Lang ist's her, aber doch musste ich mich jetzt mal wieder mit dem leidigen Startproblem befassen! Schritte:

[*] Ausgiebiges Studium von GRUB-Dokumentationen. Inzwischen kenne ich eine Menge über den Bootvorgang und wie Grub den steuert, und was wo stehen muss usw. Hat alles nichts geholfen - ausser dass ich mich jetzt schon fast als "Experte" fühle ;-) Immer blieb Grub mit "GRUB loading stage2.." hängen.

Vermutung: Ein Problem mit der Tatsache, dass die Root-Partition mit JFS, die Boot-Partition aber mit ext2 formatiert ist. Vielleicht mag also Grub keinen Filesystem-Mischmasch!? Das liesse sich ja testen:

[*] Nächster Versuch: Keine separate Boot-Partition, sondern einfach Root- und Bootpartition in einem. Auch wieder Filesystem JFS (damit auch OS/2 bzw. eCS darauf zugreifen kann). Jetzt ging's tatsächlich weiter: GRUB zeigt ein Menü an, und versucht einen Boot. Der dann aber wieder fehlschlägt:

Zuerst Anzeige der Befehle aus menu.lst

Dann "Error 15: File not found"

Nun, er sagt nicht welches File er nicht findet, aber dank meinem Grub-Studium weiss ich sicher: Es waren alle relevanten Files vorhanden!

Neue Vermutung: Der Grub scheint wirklich irgendwelche Probleme mit dem JFS zu haben!? Auch dies lässt sich testen:

[*] Dritter Versuch: Neuinstallation auf eine Root/Boot-Partition, die mit ext4 formatiert ist. Meine "Datenpartition" ist weiterhin JFS und einfach unter /home eingehängt.

Und das hat dann auf Anhieb geklappt!

Danke allen Helfern und Mit-Ratern: Das ist jetzt also meine "Lösung"! Mit der Schlussfolgerung: Grub hat definitiv Probleme mit JFS.
 
Grub hat nicht nur mit JFS ein Problem sondern auch mit XFS. Ähnliche Späße hatte ich auch schon... Aber für die Probleme mit XFS finden sich zumindest Hinweise im Internet.
Was ich allerdings noch nicht probiert habe, ist ob grub2 ebenfalls diese Probleme hat (ich verwende debian sid). Privat verwende ich weder JFS noch XFS und in der Firma verwenden wir suse.
 

josef-wien

Ultimate Guru
cbockem schrieb:
Vermutung: Ein Problem mit der Tatsache, dass die Root-Partition mit JFS, die Boot-Partition aber mit ext2 formatiert ist. Vielleicht mag also Grub keinen Filesystem-Mischmasch!?
cbockem schrieb:
Dritter Versuch: Neuinstallation auf eine Root/Boot-Partition, die mit ext4 formatiert ist. Meine "Datenpartition" ist weiterhin JFS und einfach unter /home eingehängt. Und das hat dann auf Anhieb geklappt!
Das ist ein Widerspruch. Für GRUB sind die Verzeichnisse /boot/grub (für sich selbst) und /boot (Kernel [vmlinuz] und initrd) interessant, um alles andere auf der Partition und erst recht um alle anderen Partitionen kümmert sich GRUB nicht.

Was wirklich passiert ist, steht in den Sternen. An Möglichkeiten fallen mir eine kritische Stelle auf der Festplatte, eine fehlerhaft geschriebene Datei stage2, eine von YaST falsch modifizierte Datei stage2 ein. Und so ein Problem ist per Ferndiagnose auch schwer erforschbar. Auf jeden Fall befindet sich die Datei stage2 jetzt physisch auf einer anderen Stelle der Festplatte, jetzt funktioniert sie, und das ist schließlich trotz Deines Aufwands die Hauptsache.
 
OP
C

cbockem

Newbie
Mir scheint das kein Widerspruch, sondern logisch: Das Teil interessiert sich für /boot und /boot/grub - aber gerade dorthin scheint es Leseprobleme zu haben! Oder noch genauer: In /boot/grub kann es sein menu.lst ja scheinbar noch lesen, aber dann werden Zugriffsprobleme gemeldet wenn es um den Kernel geht. Ob der Kernel die Probleme hat im ersten Moment, oder ob es noch der grub ist der die Meldung ausgibt? Tatsächlich hatte ich auch einmal ein seltsames Zugriffsproblem als es mir gelungen war, in eine grub-shell zu kommen; ich könnte aber nicht mehr sagen was ich da genau gemacht habe!

Logisch scheint mir nun also die Deutung: OpenSuse kommt zwar mit JFS problemlos klar, aber Grub hat in irgendeiner speziellen Situation da ein Problem.

Die Sache mit dem physischen Plattendefekt scheint mir hingegen weniger wahrscheinlich. Immerhin habe ich zweimal unterschiedlich partitioniert das Problem gehabt (einmal mit boot in einer eigenen Partition, und einmal mit root und boot in derselben), während die Sache sofort lief als ich root und boot zusammen in eine Nicht-JFS-Partition gepackt habe. Das damit gestartete System hat dann wiederum keinerlei Probleme mit JFS mehr.

Ausser: Wenn mal ein Systemabschluss "unsauber" war, d.h. wenn das JFS-System einen Check benötigt, dann scheint der mit OpenSuse nicht zu klappen: Da ist dann einfach nur die Partition "tot". Da muss ich dann zuerst einmal OS/2 booten, welches eine Runde "CHKDSK" einlegt (normalerweise sehr schnell), und danach ist die Partition auch für OpenSuse wieder "vorhanden".

Vielleicht fehlen irgendwelche JFS-Tools?? Ok, ich kann damit soweit leben, weil 1. der Fall nicht sehr oft eintritt, und 2. die Sache unter OS/2 ziemlich schnell gefixt ist.
 
Oben