Aug 29

Schnellanleitung für das anlegen eines Gastes unter Xen

Super schnell Anleitung für das Anlegen eines Gastes.

Dom0 = Opensuse 10.3 64-Bit
DomU = OpenSuse 10.3 64-Bit

Befehl für Shell/Batch:

mkdir /home/xen/opensuse
cd /home/xen/opensuse
dd if=/dev/zero of=container.img bs=1024K count=5120
mkfs.ext3 container.img

Befehl für Shell/Batch:
mount -o loop container.img /mnt
Befehl für Shell/Batch:
yast /dirinstall
Hinweiss zum Shell/Batch Code:
Falls /dirinstall nicht klappen sollte, dann habt Ihr das Paket noch nicht installiert.
yast -i yast2-dirinstall
Kurz Angemerkt:
WICHTIG: Den Pfad auf /mnt setzen und „Yast und SUSEconfig nach dem Systemstart ausführen“
Befehl für Shell/Batch:
vi /etc/xen/openensuse

name=“test“
memory=512
cpus = „0-4″
vcpus = 2
localtime=0
kernel=“/boot/vmlinuz-xen“
ramdisk=“/boot/initrd-xen“
root=“/dev/sda1″

disk = [ ‚file:/local/xen/opensuse/swap,sda2,w‘,
‚file:/local/xen/opensuse/system,sda1,w‘ ]

extra=“3 console=xvc0″
vif=[‚mac=00:13:3e:55:55:55,bridge=xenbr1‘]

[ESC] + :wq

Befehl für Shell/Batch:
xm create –c /etc/xen/opensuse

Die Installation durchlaufen lassen. KEINE Änderungen vornehmen. Einfach nur immer +
Ausnahme natürlich das root Passwort und den Benutzer anlegung

Einloggen mit root und dann runterfahren (halt)

Befehl für Shell/Batch:
mount –o loop /home/xen/opensuse/container.img /mnt
cd /mnt
Befehl für Shell/Batch:
#Alle für den Bootvorgang wichtigen Dateien kopieren
cp /boot/*xen* ./boot
#Die Module für den aktuellen Kernel kopieren
cp -ax /lib/modules/`uname -r` ./lib/modules
#Die Root- und Swappartition eintragen
echo -e „/dev/hda2 swap swap defaults 0 0 \n /dev/
hda1 / ext3 acl,user_xattr 1 1“ > ./etc/fstab
#mtab entfernen
rm -f ./etc/mtab
#inittab konfigurieren
sed -ie „s/^[2-6]:/#\\0/“ ./etc/inittab
#Terminal-Problem beheben (Xen 3.0.4+)
sed -ie „s/\(^1:.*\)tty1/\1xvc0/“ ./etc/inittab
echo „xvc0“ >> ./etc/securetty

cd /
umount /mnt

xm create –c /etc/xen/opensuse

Einloggen mit root

Yast und dort jetzt die netzwerkumgebung einstellen. Also IP Adresse + Gateway + Submaske +DNS Server und ggf. den hostnamen, falls dieser euch nicht gefällt.

Bei DHCP kann dieser Punk übersprungen werden.

Ggf. /etc/init.d/network start (oder restart)

Yast => Software => Installationsquelle wechseln

Hinzufügen => FTP
Name: openSUSE-10.3-DVD
Servername: ftp.gwdg.de
Verzeichniss: pub/opensuse/distribution/10.3/repo/oss

Hinzufügen => HTTP
Name: openSUSE-10.3-Updates
Servername: download.opensuse.org
Verzeichniss: /update/10.3

Wenn alles klappt, wird beim fertigstellen die Quellen eingelesen. Ansonsten liegt ein Tippfehler vor oder aber die Netzwerkeinstellungen funzen nicht.

Befehl für Shell/Batch:
yast2 -i findutils readline libgcc glibc-devel findutils-locate gcc flex lynx compat-readline4 db-devel wget gcc-c++ make vim telnet cron iptables iputils man man-pages quota xntp mc psmisc yast2-runlevel yast2-online-update-frontend yast2-inetd

Da wir in 64-Bit System haben =>

Befehl für Shell/Batch:
cd /usr/lib
ln -s /usr/lib64/libssl.a libssl.a
ln -s /usr/lib64/libssl.so libssl.so

vi /etc/fstab (dann mehrfach dd drücken, damit alles leer wird und folgendes einfügen)

Befehl für Shell/Batch:

proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
/dev/sda1 swap swap defaults 0 0
/dev/sda2 / ext3 acl,user_xattr,usrquota,grp quota 1 1

:wq

Quota einrichten

Befehl für Shell/Batch:
touch /aquota.user /aquota.group
chmod 600 /aquota.*
mount -o remount /

Hier könnte es zu Fehlern kommen… was aber ok ist.

Befehl für Shell/Batch:
quotacheck -avugm
quotaon –avug

Wer MÖCHTE; kann APPARMOR deaktivieren (empfehle ich aber nicht)

Befehl für Shell/Batch:
/etc/init.d/boot.apparmor stop
chkconfig -d boot.apparmor

Beim Staren kommt ne Fehlemeldung, das beim XXXXXX der user gdm fehlt

Befehl für Shell/Batch:
useradd -g users -s /bin/false gdm && rm -f /home/gdm

Beim Starten kommt ne Fehlermeldung, das beim XXXXXXXXX eine Datei fehlt

Befehl für Shell/Batch:
mkdir /var/lib/nfs
echo > /var/lib/nfs/etab
echo > /sbin/splash

Wenn wir den Micnight Commander (mc)starten sieht das natürlich schei*** aus

Befehl für Shell/Batch:
vi /root/.bashrc
export LC_ALL=de_DE.iso-8859-1
:wq

Den befehl können wir natürlich auch gleich in der shell eingeben und dann zur Kontrolle gleich mal den mc starten

Beim Starten kommt der Fehler, das die Uhrzeit nicht mit dem Mainbaord abgeglichen werden kann

Befehl für Shell/Batch:
echo > /etc/init.d/boot.clock

Das wars. Es sollten keine weiteren Fehler auftauchen.

Bei OpenSuse > 10.2 hält der Bootprozess ohne Fehlermeldung kurz vor dem Login an.

1:2345:respawn:/sbin/mingetty –noclear tty1

mit:

1:2345:respawn:/sbin/mingetty console