[Eisfair] virt-kernel als aktiv fest nageln - z.B. in einer VM?

Thomas Bork tom at eisfair.org
So Nov 3 20:05:39 CET 2019


Am 03.11.2019 um 19:14 schrieb Kay Martinen:

> Aber die Andere Idee wäre irgendwie im System festlegen zu können das
> NUR der Virt-kernel derjenige ist welcher aktiver Kernel ist. Und den
> SMP generell als OLDEIS zu haben.

So einen Mechanismus gibt es nicht.

> BTW. Die Benennung im LILO Menü mit EIS und OLDEIS finde ich suboptimal.

Die ist Jahrzehnte alt und historisch gewachsen. Wenn es so einfach wäre 
das zu ändern, hätte ich das längst getan.

> Es ist auch in der lilo.conf nicht ersichtlich welcher kernel nun der
> virt ist und welcher SMP. Da wäre ein Namenszusatz wie EIS-VIRT,
> OLDEIS-SMP oder so hilfreicher.
> Ist mir eben erst aufgefallen: Warum steht in der lilo.conf eigentlich
> nur die initrd.gz drin? Wird der kernel dort heraus ausgewählt, über das
> bootdevice das per UUID angewählt ist? Kann man den Kerneldateinamen
> nicht sprechender machen und ebenfalls mit angeben?

Da steht neben dem Kernel-Image auch die initrd pro Sektion drin.

Beispiel:

pvscsi # cat /etc/lilo.conf
lba32
#boot = /dev/sda
boot = /dev/disk/by-id/scsi-36000c29b074f0108b48f10e2c92bdeed
read-only
prompt
timeout = 50
vga = normal
menu-scheme = wr:bw:wr:Yr
image = /boot/kernel
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = eis
initrd = /boot/initrd.gz
vga = 773
append = "raid=noautodetect"
image = /boot/old-kernel
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = oldeis
initrd = /boot/old-initrd.gz
vga = 773
append = "raid=noautodetect"
image = /boot/kernel-3.16.74-PAE
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = 3.16.74-PAE
initrd = /boot/initrd-3.16.74-PAE.gz
vga = 773
append = "raid=noautodetect"

Erste Sektion:

image = /boot/kernel
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = eis
initrd = /boot/initrd.gz
vga = 773
append = "raid=noautodetect"

Das Kernel-Image ist /boot/kernel. Die dazugehörige initrd ist 
/boot/initrd.gz.

Zweite Sektion:

image = /boot/old-kernel
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = oldeis
initrd = /boot/old-initrd.gz
vga = 773
append = "raid=noautodetect"

Usw...

> Nur so'ne Anregung zur Verbesserung/Verdeutlichung. Alternativ bräuchte
> ich noch mal ne Anleitung wie ich den SMP-Kernel händisch raus werfe...

Du kannst den VIRT-Kernel und dessen initrd über die neuesten Dateien 
(also bei Dir wahrscheinlich old-kernel nach kernel und old-initrd.gz 
nach initrd.gz) kopieren. Ein Kernel-Update legt sowieso immer wieder 
Backups von kernel und initrd.gz unter old-kernel und old-initrd.gz an.

Beim Wechsel auf einen neuen stabilen Kernel höherer Version wird 
ausserdem noch ein Fallback angelegt. Siehe oben Sektion 3:

image = /boot/kernel-3.16.74-PAE
#root = /dev/sda3
root = "UUID=acb49829-ed5f-4b00-b9fd-f44637702364"
label = 3.16.74-PAE
initrd = /boot/initrd-3.16.74-PAE.gz
vga = 773
append = "raid=noautodetect"

Das ist jeweils der einzige Kernel und die einzige initrd, die sprechend 
benannt ist.

Wenn Du überhaupt nicht mehr weißt, was Du für Kernel installiert hast, 
dann sehe mit strings nach (übrigens macht das Kernel-Update das genau 
so, deswegen ist strings auch ein require):

pvscsi # strings /boot/kernel | grep eisfair
4.9.196-eisfair-1-PAE (root at kernel316) #1 SMP Thu Oct 10 17:14:38 CEST 2019
4.9.196-eisfair-1-PAE (root at kernel316) (gcc version 8.1.1 20180719 
[gcc-8-branch revision 262874] (eisfair Linux) ) #1 SMP Thu Oct 10 
17:14:38 CEST 2019

Wenn Du den SMP-Kernel im System hast, dann hast Du vermutlich von 
vornherein mit dem falschen Installer hantiert. Du installierst auf 
einem Virtualisierer, also benötigst Du den Installer mit dem VIRT-Kernel.

-- 
der tom
[eisfair-team]


Mehr Informationen über die Mailingliste Eisfair