[Eisfair_dev] [e1] eiskernel 2.5.8 (Status 'testing') verfügbar - 3.2er Kernel für eisfair-1

Helmut Backhaus helmut.backhaus at gmx.de
Mi Jun 17 21:24:50 CEST 2015


Hallo Thomas, hallo zusammen,
sorry, aber ich muss diesen alten Trade noch mal aufwärmen.
Mir stellen sich hier einige Fragen und ich hoffe hier vielleicht die 
eine oder andere Antwort zu bekommen.

Wenn das hier nicht OK ist, mache ich auch gern einen Neuen Trade auf.


Am 21.11.2014 um 04:31 schrieb Thomas Zweifel:
> Am 21.11.2014 um 00:10 schrieb Thomas Bork:
>> Am 20.11.2014 um 22:33 schrieb Thomas Zweifel:
>>
>>> Für eine PVM wird im Prinzip weder grub noch lilo benötigt, den kernel
>>> und die initrd gibt man entweder direkt der Konfigurationsdatei der VM
>>> mit (muss man zuerst auf den Host kopieren), oder wenn vorhanden kann
>>> man pygrub als bootlader verwenden.
>>> Pygrub sucht sich anhand der menu.lst (grub.conf) den eingetragenen
>>> kernel und die initrd aus der partitionierten "Harddisk" und startet
>>> diesen.
>>
>> Wenn mich nicht alles täuscht, sieht ein virtueller eisfair Deine
>> grub.conf auf dem Host aber überhaupt nicht. Das Kernel-Update läuft ja
>> in dem virtuellen eisfair.
>
> Nein, das ist eine "Normale" Festplatte wie sie der E1-Installer damals
> auch "gesehen" hat.

Wie hast Du das gemacht?
Ein Image von der HD gemacht und dann auf das LVM entpackt?

>
> eis3 # fdisk -l /dev/xvda
> Disk /dev/xvda: 4294 MB, 4294967296 bytes, 8388608 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
> Disk label type: dos
> Disk identifier: 0x239e30c8
>      Device Boot   Start       End    Blocks   Id  System
> /dev/xvda1   *       63     96255     48096+  83  Linux
> /dev/xvda2        98304    370687    136192   82  Linux swap / Solaris
> /dev/xvda3       370688   8388607   4008960   83  Linux

Wie bekommst Du die Device-Bezeichner hin?
>
> eis3 # mount
> /dev/xvda3 on / type ext3 (rw,errors=remount-ro,acl,user_xattr)
> /dev/xvda1 on /boot type ext3 (rw,errors=remount-ro)
> devpts on /dev/pts type devpts (rw)
> usbfs on /proc/bus/usb type usbfs (rw)
> /sys on /sys type sysfs (rw)
>
> eis3 # cat /proc/version
> Linux version 3.2.54-eisfair-1-VIRT (root at kernel32) (gcc version 4.5.4
> (GCC) ) #1 SMP Tue Sep 16 14:01:22 CEST 2014
>
> eis3 # cat /boot/grub/grub.conf
> timeout 10
> default 0
> title EisFair1 (virt)
>    kernel /kernel root=/dev/xvda3 rootdelay=10 panic=10 ro
>    initrd /initrd.gz

Das klappt bei mir auch, aber eben auf einem Eis, denn ich mehr oder 
weniger "händisch zusammen kopiert" habe. Vermutlich geht deshalb auch 
kein Kernelupdate hin.

>
> [root at xen ~]# lvdisplay /dev/distro/eis3
>    --- Logical volume ---
>    LV Name                /dev/distro/eis3
>    VG Name                distro
>    LV Write Access        read/write
>    LV Status              available
>    # open                 2
>    LV Size                4,00 GB
>    Current LE             256
>    Segments               2
>
>

Auch das sieht bei mir ähnlich aus.

>>> Beim update vom 'smp/pae' zum 'virt' kann man den lilo noch nutzen.
>>> Vom 'virt' zum nächsten 'virt' macht es higegen keinen sinn irgedwelche
>>> Booteinträge auf die Platte zu schreiben, allenfalls die grub.conf
>>> aktualisieren.
>>
>> Siehe oben, die dürfte der virtuelle eisfair weder lesen noch schreiben
>> können. Das Kernel-Update muss für Systeme auf Blech sicher stellen,
>> dass eine gültige alte lilo.conf existiert. Denn diese alte lilo.conf
>> wird beim Update für das Schreiben der neuen lilo.conf herangezogen -
>> und ist diese falsch, startet eisfair auf Blech nicht mehr...
>
> Ein E1 als Hardware VM (HVM) bootet ebenfalls via lilo wie auf dem bare
> Metal. Hier trifft deine Aussage zu 100% zu.

Hier liegen vermutlich meine Probleme, dass ist mir nicht wirklich klar!

>
> Das spielt allerdings keine Rolle bei einer Para VM (PVM), die werden
> immer von "aussen" gebootet.
>
> Entweder wie beim EisXen der den kernel und initrd in der Dom0 gelagert
> hat (WIMRE), was sich allerdings nicht auf breiter Front durchgesetzt
> hat, oder wie die "Anderen" eine Installation auf ein partitioniertes
> Festplattenimage (oder mehrere einzelne Dateien) machen.
>
> Bei letzteren wird mittels der vom ausserhalb agierenden pygrub
> ermittelten kernel und initrd gebootet, die innerhalb vom Plattenimage
> liegen, genauso wie die grub.conf.
>
> Der pygrub ersetzt einen in der PVM installierten Bootlader, und nutzt
> die Konfiguration innerhalb der PVM.

Genau diesen Ansatz würde ich gern nutzen.

>
> Den Kernel installiert man wie gehabt, und für diejenigen die den pygrub
> nutzen können, ist eine passende grub.conf in /boot/grub eine nette
> Dreingabe, da man kernel und initrd nicht nach jedem Update auf die Dom0
> kopieren muss.
>
> Ist /boot eine eigenständige Partition, dann wird /kernel und /initrd.gz
> in der grub.conf eingetragen. (wie in meinem Fall)
>
> Wenn /boot auf / liegt, muss man /boot/kernel und /boot/initrd.gz
> eintragen. In dem Fall müsste / als bootbar markiert sein.
>
> Bei unpartitionierten Images bleibt einem nichts anderes übrig als den
> kernel und initrd von Hand auf die Dom0 zu kopieren. (ohne gewähr)
>

Was bedeutet "unpartitionierten Images", was meinst Du damit?
Nur die Daten mit z.B. dd in ein Image kopiert?

>
> Das kernel Update geschieht bei allen drei Varianten auf die gleiche
> Weise wie auf einem physischen Rechner.
>
> Weitergehende Installationen wie lilo, grub und was es sonst noch so
> gibt laufen ohnehin ins leere, die Mühe kann man sich sparen.
>
>
> Ich hoffe, ich konnte dir einen brauchbaren Überblick vermitteln. ;-)

Ja, zumindest in weiten Teilen!
Was mich brennend interessiert, ist, wie installierst Du einen frischen 
Eis in eine DomU?
Einfach über ein Insatllations-Image bekomme ich das nicht hin. Das wird 
zwar gestartet, ein Netzwerkkartentreiber wird gefunden und eine IP wird 
vom DHCP geholt. Aber dann wird nach einem Installationsmedium gesucht 
und das geht schief. Warum, weiß ich leider nicht.

Über die ein oder andere Hilfestellung würde ich mich riesig freuen.
Ich versuche mich da schon etwas länger dran...

Ich würde gern eine Installations- und Administrations-Methode finden 
und dann auch gern Dokumentieren damit alle etwas davon haben.

-- 
Gruß,
Helmut



Mehr Informationen über die Mailingliste Eisfair_dev