Hallo zusammen,
um aktuelle Rechner (mit neuen Intel Netzwerkkarten) via Kickstart/PXE
zu installieren, habe ich den neusten e1000e-Treiber ins initrd.img
aufnehmen wollen. Damit stuerzt der Kickstart-Kernel beim Booten aber
mit den folgenden Meldungen ab:
[...]
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
RAMDISK: Compressed image found at block 0
RAMDISK: incomplete write (20480 != 32768) 6062080
VFS: Cannot open root device "<NULL>" or unknown-block(253,3)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(253,3)
Um das initrd.img zu modifizieren, habe ich das originale CentOS 5.2
Image genommen, mit gunzip/cpio ausgepackt und
modules/2.6.18-92.el5/x86_64/e1000e.ko durch eines ersetzt, welches ich
auf einem frisch installierten Rechner (ohne Updates) mit ebendiesem
Kernel erstellt hatte. Danach das ganze wieder archiviert und
komprimiert und das urspruengliche initrd.img auf dem tftp-Server ersetzt.
Das neue Image ist allerdings deutlich groesser als das originale: 12MB
gegenueber 5.7 MB. Was ich nicht verstehen kann, denn zwar ist
e1000e.ko 2.8 MB gross (gegenueber dem alten e1000e.ko mit nur ca. 170
KB), aber das modules.cgz ist nur ca. 700 KB groesser als das originale.
Gezippt wurden die cpio-Files mit `gzip -9`.
Meine PXE-Bootsettings sind
KERNEL CentOS-5.2_64/vmlinuz
APPEND initrd=CentOS-5.2_64/initrd.img ramdisk_size=5940 kssendmac
ks=http://srv/ks/ks.cgi noipv6
Auch mit Heraufsetzen der ramdisk_size kommt man nicht zu einem
funktionierenden Bootvorgang. Etwas ueber ramdisk_size=7100 gibt es
einen Ueberlauf und die Groesse scheint wieder von unten gezaehlt zu
werden...?
Irgendwelche Ideen, man ein funktionierendes, modifiziertes initrd.img
fuer Kickstart/PXE erstellen kann/muss?
Vielen Dank
frank