Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[erledigt] schöne Bescherung mit neuem Kernel
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Sun Dec 25, 2011 6:31 pm    Post subject: [erledigt] schöne Bescherung mit neuem Kernel Reply with quote

hallo,

ich habe eine Weile gebraucht, um Grub zu installieren und ihm auch noch zu sagen, was wie gemountet werden soll. Die schöne Bescherung kam vorgestern, weil ich nach vielen vergeblichen Versuchen endlich herausbekam, daß eine eigentlich noch benötigte Windows-Installation (Win XP) irgendwie gelöscht worden war, die Partition war noch da, aber völlig leer, da war also auch nix drauf, was hätte booten können.
Statt an meinem neuen Gentoo weiterbauen zu können mußte ich also erstmal Windows neu aufsetzen, dann Grub neu installieren. Siehe da, jetzt habe ich das gewünschte Menü, kann wahlweise WinXP oder Gentoo booten, und es wäre eigentlich alles in Ordnung, wenn ... nunja, wenn es da nicht ein klitzekleines Problem gäbe.
Meine /boot/grub/device.map sieht folgendermaßen aus:
Code:
(fd0)     /dev/fd0
(hd0)     /dev/sda
(hd1)     /dev/sdb
(hd2)     /dev/sdc
(hd3)     /dev/sdd
(hd4)     /dev/sde
Es gibt also noch ein Diskettenlaufwerk, dann vier Platten, und das letzte Device ist ein USB-Stick, den ich vergessen habe rauszunehmen. Grub selber wollte nach hd0,0 installiert werden, was normal ist, der Bootmanager gehört in den MBR der ersten Platte.
Die erste Platte hat nur eine Erweiterte Partition, da sind haufenweise Filme drauf, aber kein Betriebssystem. Die zweite Platte ist die Systemplatte, die hat mehrere Partitionen: eine primäre für das Windows-System, eine Erweiterte Parttion mit mehreren logischen Laufwerken, auf denen dann Projektdateien und allerhand Arbeitsverzeichnisse liegen, und schließlich eine zweite primäre Partition, auf der nun Gentoo gelandet ist. Das heißt also, /dev/sdb3 hat mein Gentoo. Dummerweise wollte aber die grub.conf davon nichts wissen, ich brauchte sehr lange, bis ich sie so weit hatte:
Code:
default 0
timeout 10
splashimage=(hd0,2)/boot/grub/splash.xpm.gz

title Gentoo
root (hd0,2)
#kernel /boot/kernel-genkernel-x86_64-3.0.6-gentoo root=/dev/sdb3
kernel /boot/kernel root=/dev/sdb3
initrd /boot/initramfs-genkernel-x86_64-3.0.6-gentoo

title Windows
rootnoverify (hd0,0)
makeactive
chainloader +1
Ich verstehe nicht, warum die beiden Betriebssysteme auf (dh0) gesucht und offensichtlich auch gefunden werden, obwohl sie physikalisch doch auf /dev/sdb1 (Windows) und /dev/sdb3 (Gentoo) liegen. Hier noch meine fstab:
Code:
#/dev/newboot      /boot      ext4
#/dev/BOOT      /boot      ext4      noauto,noatime   1 2
/dev/sdb3      /      ext4      rw      1 2

/dev/SWAP      none      swap      sw      0 0
/dev/cdrom      /mnt/cdrom   auto      noauto,ro   0 0
/dev/fd0      /mnt/floppy   auto      noauto      0 0
Ich habe während der Gentoo-Installation erstmal fix einen Genkernel gebaut, weil ich dachte, Feinheiten kann ich ja später ausbügeln, wenn ich nochmal einen neuen Kernel baue. Dieser Kernel bootet auch freundlicherweise von meiner Platte und läßt mich ins System, sogar der XServer läßt mich machen, wenn auch vorerst nur in einem XTerm-Fensterchen, weil noch keine grafische Oberfläche da ist. Aber der generische Kernel erkennt meinen LAN-Chip nicht und weigert sich, eth0 zu aktivieren und mir eine Verbindung herzustellen. Von der CD aus geht es problemlos, von der Platte aber nicht.
Also mußte doch erstmal ein neuer Kernel her, und da für "make" keine Internetverbindung gebraucht wird habe ich den Bau von der Platte aus gemacht.
lspci zeigt mir als letztes:
Code:
01:00.0 VGA compatible controller: nVidia Corporation NV44 [GeForce 6200 LE] (rev a1)
02:00.0 Ethernet controller: Attansic Technology Corp. Atheros AR8121/AR8113/AR8114 PCI-E Ethernet Controller (rev b0)
03:00.0 IDE interface: JMicron Technology Corp. JMB368 IDE controller

Den neuen Kernel habe ich einfach nur "kernel" genannt und wie oben gezeigt in der grub.conf so aufgerufen:
Code:
kernel /boot/kernel root=/dev/sdb3
Er bootet auch und kommt erfreulicherweise ohne die befürchtete "kernel panic" aus, aber das System erreiche ich trotzdem nicht. Der Bootvorgang wird an folgender Stelle unterbrochen:
Code:
  Loading modules
  Activating mdev
  Determining root device ...
!!Block device /dev/sdb3 is not a valid root device

Irgendwas entweder in der grub.conf oder in der fstab muß ich wohl noch korrigieren, damit ich meinen Rechner mit Internetverbindung endlich ordentlich hochfahren und die Systeminstallatin fortsetzen kann. Aber was?


Last edited by Christoph Schnauß on Tue Dec 27, 2011 1:11 am; edited 1 time in total
Back to top
View user's profile Send private message
firefly
Advocate
Advocate


Joined: 31 Oct 2002
Posts: 4459

PostPosted: Sun Dec 25, 2011 7:58 pm    Post subject: Reply with quote

da es keine kernel panic ist, dann passt eher die fstab nicht :)
_________________
Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkel zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn.
Back to top
View user's profile Send private message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Sun Dec 25, 2011 10:12 pm    Post subject: Reply with quote

firefly wrote:
da es keine kernel panic ist, dann passt eher die fstab nicht :)

Ja, aber was paßt da nicht? Ich habe sie ja deswegen angegeben. /dev/sdb3 ist korrekt, sonst würde ich das ja nicht bei einem Start von der CD einbinden können. Eine extra /boot-Partition gibt es nicht. Und warum funktioniert diese fstab auch problemlos mit dem generischen Kernel, der ja bloß meinen LAN-Chip nicht ansprechen kann, weil er offensichtlich das Modul für den Atheros-Treiber nicht enthält?
Ich verstehe das einfach nicht, sorry. Bei einer "kernel panic" wüßte ich, daß ich den Kernel irgendwie falsch gebaut habe, das scheint aber nicht der Fall zu sein.

Gleich noch eine Kleinigkeit: früher habe ich in der Regel die Vanilla-Sourcen verwendet. Die gibt es ja auch noch, aber die würden eine Kernel-Version 2.6.x bauen, der GenKernel zeigt eine höhere Versionsnummer (3.0.6). Ist es sinnvoll, doch nochmal Vanilla zu nehmen?
Back to top
View user's profile Send private message
hilti_hit
n00b
n00b


Joined: 15 Oct 2011
Posts: 5

PostPosted: Sun Dec 25, 2011 10:55 pm    Post subject: Reply with quote

Hi!

Du verwendest genkernel, oder?
Dann sollte real_root=/dev/sdb3 statt root=/dev/sdb3 stehen.

Referenzen:
http://www.gentoo.org/doc/en/genkernel.xml
und
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=10
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3630
Location: Germany

PostPosted: Sun Dec 25, 2011 11:07 pm    Post subject: Reply with quote

Ist es noch eine IDE HDD?
Verlasse dich bitte nicht darauf das dein reales System die selben Laufwerksbezeichnungen hat wie auf der LiveCD
Je nach verwendeten HDD-Controller-Treiber könnte es auch /dev/hdxx sein. (wenn das der Fall ist könnte es die Unterschiede zwischen deinen beiden kerneln mit der selben fstab erklären)
Da eine initrd da ist solltest du ja eine Shell öffnen können - schau da doch mal nach was für Laufwerke da sind, und wie sie tatsächlich benannt sind.
Zb mit
Code:
more /proc/partitions


btw
auch das /dev/SWAP in der fstab kommt mir ein wenig seltsam vor, überprüfe doch mal ob es das so tatsächlich gibt.
Back to top
View user's profile Send private message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Mon Dec 26, 2011 2:21 am    Post subject: Reply with quote

hilti_hit wrote:

Du verwendest genkernel, oder?
Dann sollte real_root=/dev/sdb3 statt root=/dev/sdb3 stehen.

Wo sollte das stehen? In /etc/fstab oder in /boot/grub/grub.conf?
Das Handbuch habe ich konsultiert. Dort wird ausdrücklich darauf hingewiesen, daß die vorgefertigte /etc/fstab nicht valide ist und unbedingt korrigiert werden muß. Das ist bereits seit Jahren so.
Und: ja, ich habe auf die Schnelle die Genkernel-Sourcen geholt, weil ich glaubte, daß damit vorerst nichts schief gehen dürfte.

Josef.95 wrote:
Ist es noch eine IDE HDD?

Nein, das zeigt dir auch die Bezeichnung als dev/sdb3, bei einer alten IDE-Platte wäre es /dev/hdb3. Die Platte ist so gut wie fabrikneu.

Josef.95 wrote:
Verlasse dich bitte nicht darauf das dein reales System die selben Laufwerksbezeichnungen hat wie auf der LiveCD
Je nach verwendeten HDD-Controller-Treiber könnte es auch /dev/hdxx sein.
Ja, die Idee kam mir auch schon. Es deutet jedoch nichts darauf hin,
Josef.95 wrote:
Da eine initrd da ist solltest du ja eine Shell öffnen können - schau da doch mal nach was für Laufwerke da sind, und wie sie tatsächlich benannt sind.
Zb mit
Code:
more /proc/partitions
Es wird eine kleine Shell geöffnet, aber more ist da nicht möglich und eine Abfrage der vorhandenen Partitionen auch nicht.

Josef.95 wrote:
auch das /dev/SWAP in der fstab kommt mir ein wenig seltsam vor, überprüfe doch mal ob es das so tatsächlich gibt.
Richtig, die Zeile ist überflüssig und inzwischen rausgeflogen, ich brauche nicht zwingend eine eigene SWAP.

Ich habe mir inzwischen in der grub.conf einen neuen Menüeintrag erstellt zum Ausprobieren, damit ich nicht immer erst die CD wieder mounten muß. Und mit dem generischen Kernel klappt es ja auch, bis auf die Tatsache, daß er mir eben keine Internetverbindung herstellt. Aber ohne Verbindung kein emerge und auch keine Vervollständigung der Software-Ausstattung.
Back to top
View user's profile Send private message
hilti_hit
n00b
n00b


Joined: 15 Oct 2011
Posts: 5

PostPosted: Mon Dec 26, 2011 2:36 am    Post subject: Reply with quote

sorry, /boot/grub/grub.conf war gemeint.

Code:
title Gentoo
root (hd0,2)
#kernel /boot/kernel-genkernel-x86_64-3.0.6-gentoo root=/dev/sdb3
kernel /boot/kernel real_root=/dev/sdb3
initrd /boot/initramfs-genkernel-x86_64-3.0.6-gentoo


Bei dem Genkernel sind nicht alle Sachen, die Du brauchst unbedingt gesetzt, die wichtigsten Sachen sollte man trotzdem überprüfen (z.B. ob alle Treiber die Du brauchst geladen werden).
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3630
Location: Germany

PostPosted: Mon Dec 26, 2011 3:31 am    Post subject: Reply with quote

Christoph Schnauß wrote:
Josef.95 wrote:
Ist es noch eine IDE HDD?
Nein, das zeigt dir auch die Bezeichnung als dev/sdb3, bei einer alten IDE-Platte wäre es /dev/hdb3. Die Platte ist so gut wie fabrikneu.
Nein, das muss nicht zwingend so sein. Die Device-Benennung kommt in erster Linie vom Treiber selbst (zusammen mit udev)
Mit einem IDE Contoller und einer IDE Platte könnte je nach genutzten Treiber das Device unterschiedlich benannt sein.
Nungut..
Quote:
Ich habe mir inzwischen in der grub.conf einen neuen Menüeintrag erstellt zum Ausprobieren, damit ich nicht immer erst die CD wieder mounten muß. Und mit dem generischen Kernel klappt es ja auch, bis auf die Tatsache, daß er mir eben keine Internetverbindung herstellt. Aber ohne Verbindung kein emerge und auch keine Vervollständigung der Software-Ausstattung.
Warum stellst du in dem ansonsten bootfähigen genkernel dann nicht erst mal den Treiber für dein Netzwerk Adapter bereit?
Nutze genkernel zb mit den Optionen --oldconfig und --menuconfig und konfiguriere dir den Kernel dann wie du ihn benötigst.
Back to top
View user's profile Send private message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Mon Dec 26, 2011 3:55 am    Post subject: Reply with quote

Josef.95 wrote:
Warum stellst du in dem ansonsten bootfähigen genkernel dann nicht erst mal den Treiber für dein Netzwerk Adapter bereit?

Habe ich ja gemacht, und das ist es, was ich nicht verstehe. Herausgekommen ist das Problem, daß der Bootvorgang nicht mehr komplett abläuft, was im übrigen leider auch keine neuen Zeilen in der /var/log/messages erzeugt
Josef.95 wrote:
Nutze genkernel zb mit den Optionen --oldconfig und --menuconfig und konfiguriere dir den Kernel dann wie du ihn benötigst.

Genau das führt zu dem beschriebenen unverständlichen Problem.
Back to top
View user's profile Send private message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Mon Dec 26, 2011 12:25 pm    Post subject: Reply with quote

morgens ;-)
so, ich habe mir den Kernel nochmal neu aus den Vanilla-Sourcen gebaut, und hier gibt es diesen dämlichen Abbruch mitten im Bootvorgang nicht mehr. Das heißt, jetzt komme ich durch bis auf die Konsole. Allerdings ist auch hier wieder das Problem, daß keine Verbindung hergestellt werden kann. Zusätzlich habe ich wohl irgendwas mit der Framebuffer-Unterstützung und den nvidia-Modulen für meine Grafikkarte zu gut gemeint. Jetzt habe ich nur eine winzige Schrift. Und hier will auch der XServer nicht mehr.
Weiß jemand, ob es für meinen Netzwerkchip irgendwas Besonderes zu beachten gibt? Nochmal die Zeile aus lspci:
Code:
02:00.0 Ethernet controller: Attansic Technology Corp. Atheros AR8121/AR8113/AR8114 PCI-E Ethernet Controller (rev b0)
Back to top
View user's profile Send private message
Christoph Schnauß
Guru
Guru


Joined: 17 Dec 2004
Posts: 553
Location: Berlin

PostPosted: Tue Dec 27, 2011 1:11 am    Post subject: Reply with quote

hallo,

damit wir den Thread schließen können, das Endergebnis: ich habe nach vermutlich mehr als 20 Durchläufen beim Kernelbauen herausgefunden, was da nun falsch war. Es lag ganz einfach daran, daß in dem Abschnitt über die Gerätetreiber meine SATA-Platten nicht als Module eingebunden werden dürfen. Dasselbe noch einmal für den SCSI-Support.
Damit läuft nun der Bootvorgang ungestört durch, auch die Internetverbindung wird problemlos hergestellt.

Besten Dank für die Denkhilfen.
Back to top
View user's profile Send private message
toralf
Developer
Developer


Joined: 01 Feb 2004
Posts: 3690
Location: Hamburg

PostPosted: Mon Jan 02, 2012 10:35 am    Post subject: Reply with quote

Christoph Schnauß wrote:
Es lag ganz einfach daran, daß in dem Abschnitt über die Gerätetreiber meine SATA-Platten nicht als Module eingebunden werden dürfen.
Nun ja, im Prinzip ist das schoin erlaubt, allerdings brauchst Du dann eine initramfs beim booten.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum