Virtuelle Maschinen · 5 min read · Oct 22, 2025

Xen auf einem Ubuntu 8.04 (Hardy Heron) Server aus den Ubuntu-Repositories installieren - Seite 2

3 Erstellen von virtuellen Maschinen (domU)

Jetzt erstellen wir unsere erste Gastdomäne, xen1.example.com, die Hardy Heron (hardy) mit der IP-Adresse 192.168.0.101 ausführt:

xen-create-image --hostname=xen1.example.com --size=2Gb --swap=256Mb --ide \  
--ip=192.168.0.101 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \  
--dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \  
--initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \  
--mirror=http://archive.ubuntu.com/ubuntu/ --passwd

Viele Optionen sind hier unnötig, da wir dieselben Details in /etc/xen-tools/xen-tools.conf angegeben haben, aber es zeigt, dass Sie die gewünschten Einstellungen entweder in der Befehlszeile oder in /etc/xen-tools/xen-tools.conf angeben können. Bitte stellen Sie sicher, dass Sie –ide angeben, andernfalls könnte Ihre virtuelle Maschine nicht booten!

(Um mehr über die verfügbaren Optionen zu erfahren, werfen Sie einen Blick auf die Man-Seite von xen-create-image:

man xen-create-image

)

Der Befehl xen-create-image wird nun die virtuelle Maschine xen1.example.com für uns erstellen. Dies kann einige Minuten dauern. Die Ausgabe sollte ähnlich wie folgt aussehen:

root@server1:~# xen-create-image --hostname=xen1.example.com --size=2Gb --swap=256Mb --ide \  
> --ip=192.168.0.101 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \  
> --dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \  
> --initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \  
> --mirror=http://archive.ubuntu.com/ubuntu/ --passwd  
  
Allgemeine Informationen  
--------------------  
Hostname       :  xen1.example.com  
Distribution   :  hardy  
Partitionen    :  swap            256Mb (swap)  
                  /               2Gb   (ext3)  
Bildtyp        :  sparse  
Speichergröße  :  64Mb  
Kernel-Pfad    :  /boot/vmlinuz-2.6.24-16-xen  
Initrd-Pfad    :  /boot/initrd.img-2.6.24-16-xen  
  
Netzwerkinformationen  
----------------------  
IP-Adresse 1   :  192.168.0.101 [MAC: 00:16:3E:62:DA:BB]  
Netzmaske      :  255.255.255.0  
Broadcast      :  192.168.0.255  
Gateway        :  192.168.0.1  
  
  
Erstellen des Partition-Images: /home/xen/domains/xen1.example.com/swap.img  
Fertig  
  
Erstellen von Swap auf /home/xen/domains/xen1.example.com/swap.img  
Fertig  
  
Erstellen des Partition-Images: /home/xen/domains/xen1.example.com/disk.img  
Fertig  
  
Erstellen des ext3-Dateisystems auf /home/xen/domains/xen1.example.com/disk.img  
Fertig  
Installationsmethode: debootstrap  
Fertig  
  
Ausführen von Hooks  
Fertig  
  
Es wurden keine Rollenskripte angegeben.  Überspringen  
  
Erstellen der Xen-Konfigurationsdatei  
Fertig  
Einrichten des Root-Passworts  
Neues UNIX-Passwort eingeben:  
Neues UNIX-Passwort erneut eingeben:  
passwd: Passwort erfolgreich aktualisiert  
Alles erledigt  
  
  
Protokolldatei erstellt unter:  
         /var/log/xen-tools/xen1.example.com.log  
root@server1:~#

Es sollte jetzt eine Konfigurationsdatei xen1.example.com - /etc/xen/xen1.example.com.cfg vorhanden sein. Werfen Sie einen Blick darauf, um sich mit den Konfigurationsdateien für virtuelle Maschinen vertraut zu machen:

cat /etc/xen/xen1.example.com.cfg

| # Konfigurationsdatei für die Xen-Instanz xen1.example.com, erstellt # von xen-tools 3.8 am Tue May 6 16:01:38 2008. # # Kernel + Speichergröße # kernel = '/boot/vmlinuz-2.6.24-16-xen' ramdisk = '/boot/initrd.img-2.6.24-16-xen' memory = '64' # # Festplattengerät(e). # root = '/dev/hda2 ro' disk = [ 'file:/home/xen/domains/xen1.example.com/swap.img,hda1,w', 'file:/home/xen/domains/xen1.example.com/disk.img,hda2,w', ] # # Hostname # name = 'xen1.example.com' # # Netzwerk # vif = [ 'ip=192.168.0.101,mac=00:16:3E:62:DA:BB' ] # # Verhalten # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' extra = '2 console=xvc0' |

Der Parameter file: ist jetzt in Xen 3.2 veraltet, daher müssen wir jetzt /etc/xen/xen1.example.com.cfg bearbeiten und file: durch tap:aio: ersetzen (ansonsten erhalten Sie einen Fehler ähnlich diesem:

Fehler: Gerät 769 (vbd) konnte nicht verbunden werden. losetup /dev/loop0 /home/xen/domains/xen1.example.com/swap.img fehlgeschlagen

beim Versuch, eine VM zu starten - siehe http://ubuntuforums.org/showthread.php?t=770902 ebenfalls):

vi /etc/xen/xen1.example.com.cfg

| [...] disk = [ 'tap:aio:/home/xen/domains/xen1.example.com/swap.img,hda1,w', 'tap:aio:/home/xen/domains/xen1.example.com/disk.img,hda2,w', ] [...] |

(Bitte beachten Sie: Wenn Sie eine Dual-Core-CPU haben und möchten, dass die virtuelle Maschine beide CPU-Kerne verwendet, fügen Sie die Zeile vcpus = ‘2’ zur Konfigurationsdatei hinzu, wie folgt:

vi /etc/xen/xen1.example.com.cfg

| # Konfigurationsdatei für die Xen-Instanz xen1.example.com, erstellt # von xen-tools 3.8 am Mon May 5 16:49:32 2008. # # Kernel + Speichergröße # kernel = '/boot/vmlinuz-2.6.24-16-xen' ramdisk = '/boot/initrd.img-2.6.24-16-xen' memory = '64' vcpus = '2' [...] |

Anschließend können Sie im virtuellen Computer den Befehl

cat /proc/cpuinfo

ausführen, um zu überprüfen, ob beide CPU-Kerne von der virtuellen Maschine verwendet werden. Die Ausgabe könnte so aussehen, wenn Ihre VM beide Kerne verwendet:

xen1:~# cat /proc/cpuinfo  
prozzessor       : 0  
vendor_id       : AuthenticAMD  
cpu_family      : 15  
modell          : 75  
modell_name     : AMD Athlon(tm) 64 X2 Dual Core Processor 4200+  
stepping        : 2  
cpu_MHz         : 2210.054  
cache_size      : 512 KB  
fdiv_bug        : nein  
hlt_bug         : nein  
f00f_bug        : nein  
coma_bug        : nein  
fpu             : ja  
fpu_exception   : ja  
cpuid_level     : 1  
wp              : ja  
flags           : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr  
 sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm  
 cr8legacy ts fid vid ttp tm stc  
bogomips        : 5526.81  
  
prozzessor       : 1  
vendor_id       : AuthenticAMD  
cpu_family      : 15  
modell          : 75  
modell_name     : AMD Athlon(tm) 64 X2 Dual Core Processor 4200+  
stepping        : 2  
cpu_MHz         : 2210.054  
cache_size      : 512 KB  
fdiv_bug        : nein  
hlt_bug         : nein  
f00f_bug        : nein  
coma_bug        : nein  
fpu             : ja  
fpu_exception   : ja  
cpuid_level     : 1  
wp              : ja  
flags           : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr  
 sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow up pni cx16 lahf_lm cmp_legacy svm  
 cr8legacy ts fid vid ttp tm stc  
bogomips        : 5526.81  
  
xen1:~#

)

Um die virtuelle Maschine zu starten, führen Sie aus

xm create /etc/xen/xen1.example.com.cfg

Führen Sie aus

xm console xen1.example.com

um sich in dieser virtuellen Maschine anzumelden (geben Sie CTRL+] ein, wenn Sie an der Konsole sind, oder CTRL+5, wenn Sie PuTTY verwenden, um zu dom0 zurückzukehren), oder verwenden Sie einen SSH-Client, um sich mit ihr zu verbinden (192.168.0.101).

In der virtuellen Maschine (wenn Sie sie zum ersten Mal verwenden), führen Sie aus

mv /lib/tls /lib/tls.disabled

Jetzt zurück zum Hostsysten (dom0). Um eine Liste der laufenden virtuellen Maschinen zu erhalten, geben Sie ein

xm list

Die Ausgabe sollte so aussehen:

root@server1:~# xm list  
Name                                    ID   Mem VCPUs      State   Time(s)  
Domain-0                               0   569     1     r-----    103.6  
xen1.example.com                      1    64     1     -b----     60.8  
root@server1:~#

Um xen1.example.com herunterzufahren, tun Sie dies:

xm shutdown xen1.example.com

Wenn Sie möchten, dass vm01 beim nächsten Boot des Systems automatisch startet, tun Sie dies:

ln -s /etc/xen/xen1.example.com.cfg /etc/xen/auto

Hier sind die wichtigsten Xen-Befehle:

xm create -c /path/to/config - Starten Sie eine virtuelle Maschine.
xm shutdown - Stoppen Sie eine virtuelle Maschine.
xm destroy - Stoppen Sie eine virtuelle Maschine sofort, ohne sie herunterzufahren. Es ist, als würden Sie den Netzschalter ausschalten.
xm list - Listet alle laufenden Systeme auf.
xm console - Melden Sie sich bei einer virtuellen Maschine an.
xm help - Liste aller Befehle.

Lassen Sie uns eine zweite VM, xen2.example.com mit der IP-Adresse 192.168.0.102 erstellen:

xen-create-image --hostname=xen2.example.com --size=2Gb --swap=256Mb --ide \  
--ip=192.168.0.102 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \  
--dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \  
--initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \  
--mirror=http://archive.ubuntu.com/ubuntu/ --passwd

Öffnen Sie dann die Konfigurationsdatei der VM, /etc/xen/xen2.example.com.cfg, und ersetzen Sie file: erneut durch tap:aio:

vi /etc/xen/xen2.example.com.cfg

| [...] disk = [ 'tap:aio:/home/xen/domains/xen2.example.com/swap.img,hda1,w', 'tap:aio:/home/xen/domains/xen2.example.com/disk.img,hda2,w', ] [...] |

Anschließend können Sie xen2.example.com wie folgt starten:

xm create /etc/xen/xen2.example.com.cfg

(Vergessen Sie nicht, auszuführen

xm console xen2.example.com

und

mv /lib/tls /lib/tls.disabled

wenn Sie sich zum ersten Mal in der VM befinden!)

… und es so herunterzufahren:

xm shutdown xen2.example.com

Eine Liste aller virtuellen Maschinen, die mit dem Befehl xen-create-image erstellt wurden, ist unter

xen-list-images

verfügbar:

root@server1:~# xen-list-images  
Name: xen1.example.com  
Speicher: 64  
IP: 192.168.0.101
Name: xen2.example.com  
Speicher: 64  
IP: 192.168.0.102  
root@server1:~#

Um mehr darüber zu erfahren, was Sie mit xen-tools tun können, werfen Sie einen Blick auf dieses Tutorial: https://www.howtoforge.com/xen_tools_xen_shell_argo

4 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.