[Eisfair] [e1] eiskernel 2.8.0 (Status 'stable') verfügbar - 3.2er Kernel für eisfair-1

Stefan Welte post at stefan-welte.de
Sa Feb 28 15:51:49 CET 2015


Hallo Thomas,

Am 27.02.2015 um 21:26 schrieb Thomas Bork:
> Am 27.02.2015 um 14:51 schrieb Stefan Welte:
> 
>> "mdadm -Es" liefert auf meinem eisfair mit 2.6er Kernel:
>>> ARRAY /dev/md/data-raid1  metadata=1.2 UUID=2828347a:cf1db600:e7afe499:791fb662 name=eis1:data-raid1
>> Exakt dies wurde bei der Installation vom 3.2er Kernel direkt in die mdadm.conf der initrd
>> geschrieben, obwohl es in der initrd weder ein /dev/md-Verzeichnis noch ein passendes
>> /dev/md/data-raid1-Blockgerät gibt. Mit udev ist das problemlos, weil automatisch erzeugt, aber soweit
>> ich weiss, ist eisfair udevlos. Daher konnte der initiale Boot mit dem 3.2er Kernel nicht klappen.
> 
> In keiner der beim Kernel-Update erzeugten initrds weder bei Kernel 3.2 noch bei Kernel 2.6.32 existiert
> in /dev ein Verzeichnis md oder /dev/md?.
Richtig.

> Das Assemblieren des Raids gelingt aber sowohl mit Metadata 0.9 als auch bei Metadata 1.2.
unter bestimmten Bedingungen, siehe unterhalb.

> Wenn es nicht funktionieren würde, hätten _alle_ damit ein Problem, oder?
jo, schon verwunderlich, daß ich der einzige bin. Womöglich hat niemand ein extern erzeugtes Raid, dessen
Name (hinter dem Hostname) etwas anderes als eine (einstellige) Zahl hat und von 2.6er zum 3.2er-Kernel
gewechselt hat.

Soeben auf zweitem eisfair1 "eis2" nachvollzogen:
Ausgangslage: 2.4.3-eiskernel und extern gebasteltes RAID1, Metadata 1.2, Name: eis2:data-raid1.
Es ist beim Update (2.4.3->2.8.0) als /dev/md1 gestartet, aufgrund folgender Zeile (in /etc/mdadm.conf der
2.6er initrd):
> ARRAY /dev/md1 metadata=1.2 UUID=k44e039c:45ea2cec:725660e2:18851785 name=eis2:data-raid1
Der 2.8.0-eiskernel-Installer übernimmt das nicht korrekt, siehe unterhalb.

> Das ist alles, was bezüglich Raid in install.sh des Kernel-Updates getan wird (schau doch einfach mal
> rein): 
> ... 
> mdadm --examine --scan >>$initrd_mount/etc/mdadm.conf
dieser Befehl schreibt bei meinem Update (2.4.3->2.8.0) bei laufendem RAID1 /dev/md1 die Zeile:
> ARRAY /dev/md/data-raid1  metadata=1.2 UUID=k44e039c:45ea2cec:725660e2:18851785 name=eis2:data-raid1
in die /etc/mdadm.conf der 3.2er-initrd, obwohl dort (in der initrd) selbst z.B. kein /dev/md/ Verzeichnis
existiert. Deswegen startet das RAID1 mit 3.2-er Kernel natürlich nicht.
Wieso "mdadm -Es" statt /dev/md1 fälschlicherweise /dev/md/data-raid1 liefert, weiß ich leider nicht.

> Was ich weiß ist: Die mit unserem Installer erstellten Raids überleben ein Kernel-Update mit der Routine,
> wie sie in den Kernel-Update-Raketen ...
die eiskernel-2.8.0-Rakete hat bei mir den Bock abgeschossen :-)

> Und zu mehr fehlt mir im Moment die Zeit.
jo, kein Problem. Ich ändere das von Hand erstmal.

> Hast Du unter dem von mir geposteten Link nachgelesen?
halbwegs, aber werde daraus nicht besonders schlau.

Gruß,
Stefan


Mehr Informationen über die Mailingliste Eisfair