[Eisfair] eisfair-1 Xen DomU Kernelupdate

Helmut Backhaus helmut.backhaus at gmx.de
Do Feb 4 22:10:23 CET 2016


Hallo Alex, Hallo Thomas!

Am 04.02.2016 um 18:41 schrieb Alexander Dahl:
> Moin,
>
> Alexander Dahl schrieb Montag, 25. Januar 2016, 21:24 (CET):
>> Eigentlich nicht, lilo wird ja überhaupt nicht benutzt. Der einzige
>> Grund lilo zufriedenzustellen ist ein späteres Installieren des
>> eiskernel-virt Pakets zu ermöglichen, das bei der Installation `lilo -t`
>> aufruft und bei einem Fehler abbricht.
>
> Tja, da hab ich mich wohl geirrt.

Nicht wirklich, aber beim kernelupdate passiert mehr...
Was ich aber auch noch sagen wollte, der Weg von Peter Bäumer 
funktioniert in jedem Fall, auch wenn der Kernelupdate mal schief 
gegangen ist. Danke dafür Peter!!

> Beim Update von eiskernel-virt 2.17.1
> auf 2.17.2 heute wollte meine DomU nach dem Reboot nicht mehr starten.
> Pygrub (4.4 aus Debian Jessie) wollte partout keinen Kernel finden.

Genau das Problem hatte ich auch, siehe meine Ausführungen von Gestern!
Wenn Du mal ein "fdisk -l /dev/deineGruppe/deinLaufwerg" wirst Du 
feststellen, dass es dort Partitionen ohne Inhalt gibt! Das ist genau 
das, was ich mir nicht erklären kann.

> Ich
> bin nicht so fit in Python, aber mit strace sah ich dann, dass der 512
> Byte direkt vorn von dem LVM-Volume liest und da ständ sehr verdächtig
> "LILO" im hexdump.

Ich auch nicht, da hast Du schon erheblich mehr drauf als ich!
Ich bin dem Ganzen mit ausprobieren zu Leibe gerückt, dass war natürlich 
sehr aufwendig.

> Ich hab dann den ersten Sektor genullt (dd
> if=/dev/zero of=/pfad/zum/lv/mit/root bs=512 count=1) und dann bootete
> er wieder.

OK, das ist natürlich die Holzhammermethode! ;)

>
> Ist es möglich in lilo.conf irgendwelche Tricks anzuwenden, so dass der
> mir keinen Bootloader nach /dev/xvda1 schreibt?
>

Du musst LILO und den Update-Scripten das anbieten, was sie verlangen. ;)

Was ich herausgefunden habe ganz kurz:
Das ganze nur auf ein Laufwerk, dann so (ich benutze der Einfachheit 
halber meine Werte):

root at deb-64-fsi:~# lvs | grep testeis
[..]
testeis5-all       vg0  -wi-ao----  20,00g

root at deb-64-fsi:~# fdisk -l /dev/vg0/testeis5-all

Disk /dev/vg0/testeis5-all: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B2BC9F30-46C4-4B6E-B22E-C5C0FB4C269F

Device                   Start      End  Sectors  Size Type
/dev/vg0/testeis5-all1    2048   100351    98304   48M Linux filesystem
/dev/vg0/testeis5-all2  100352  1148927  1048576  512M Linux swap
/dev/vg0/testeis5-all3 1148928  3246079  2097152    1G Linux filesystem
/dev/vg0/testeis5-all4 3246080 16756702 13510623  6,5G Linux filesystem

Und das führt dann zu einer testeis5.cfg, die dann so aussieht:
root at deb-64-fsi:~# cat /etc/xen/testeis5.cfg
# Config file testeis4 von HB 02.02.2016
name = "testeis5"
# kernel = "/eis-kern/kernel"
# ramdisk = "/eis-kern/initrd.gz"
extra = "ro quiet xencons=tty1 console=hvc0"
# bootloader = ""
bootloader = "/usr/lib/xen-4.4/bin/pygrub"

memory = 512

boot        = 'c'
root = "/dev/xvda3 ro"
disk = [
	"phy:/dev/vg0/testeis5-all,xvda,w",
	 ]
vif = [ 'mac=00:16:3E:0C:51:01, bridge=xenbr1, vifname=testeis5' ]

Dieses Zusammenspiel, überlebt dann auch einen Kernelupdate!

Ich habe damit schon angefangen mir eine Art "Check-Liste", "wie baue 
ich einen Eis in XEN ein" zu schreiben. Dabei sind mir aber noch Ideen 
gekommen, die ich dabei dann gleich ausprobieren werde.

- Denn Harware-Eis ohne /data Partition aufsetzen, das geht auch hinterher
- Das LVM Laufwerk besser nutzen (siehe oben, nur 8 von 20G belegt)
- Es gibt mehrere Wege zu diesem Ziel (dd, fdisk, parted, kpartx usw.)

Wie eilig ist es denn bei Dir?
Wenn Du magst, schicke ich Dir mein Geschreibsel mal zu wenn es fertig 
ist. Dann kannst du es ja mal ausprobieren.
Ich muss mir eh so was aufschreiben, in einem halben Jahr weiß ich 
wieder nicht mehr wie ich das gemacht habe. :-)



-- 
Gruß,
Helmut



Mehr Informationen über die Mailingliste Eisfair