Creamos los volumenes basicos y le damos formato.
# lvcreate -L 1G -n intrepid_root vg1
# lvcreate -L 512M -n intrepid_swap vg1
# mkfs.ext3 /dev/vg1/intrepid_root
# mkswap /dev/vg1/intrepid_swap
Montamos el cd de Ubuntu 8.10
# mount /cdrom
Montamos el nuevo filesystem.
# mount /dev/vg1/intrepid_root /mnt
Armamos el root (/) desde el repositorio local.
# debootstrap intrepid /mnt file:///cdrom/ubuntu/
Creamos el archivo de configuracion para la nueva Xen Machine
# vi /etc/xen/intrepid
# -*- mode: python; -*-
kernel = "/boot/vmlinuz-2.6.24-19-xen"
ramdisk = "/boot/initrd.img-2.6.24-19-xen"
memory = 256
name = "intrepid"
vif = ['']
disk = ['phy:vg1/intrepid_root,hda1,w','phy:vg1/intrepid_swap,hda2,w']
root = "/dev/hda1 ro"
extra = "xencons=tty 4"
Arreglamos el hosts...
# vi /mnt/etc/hosts
127.0.1.1 localhost intrepid
el hostname...
# vi /mnt/etc/hostname
intrepid
configuramos la red...
# vi /mnt/etc/network/interfaces
# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.7.11
netmask 255.255.255.0
gateway 192.168.7.1
Editamos el fstab del nuevo root.
# vi /mnt/etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda1 / ext3 errors=remount-ro 0 1
/dev/hda2 none swap sw 0 0
Agregamos la linea al archivo:
# vi /mnt/etc/default/rcS
HWCLOCKACCESS=no
Deshabilitamos las librerias tls que alentan al xen..
# mv /mnt/lib/tls /mnt/lib/tls.disabled
Desmontamos el filesystem...
# umount /mnt/
Y arrancamos la xm atachandonos a la consola.
# xm create intrepid -c
NOTA: Control+5 para desatachar la consola.
Una vez dentro de la XM, creamos el directorio de modulos y el archivo de lista...
# mkdir /lib/modules/`uname -r`
# depmod
Ponemos al dia nuestro intrepid base..
# apt-get upgrade
# apt-get clean
Creamos un logical volume del mismo tamaño que el root de la plantilla..
# lvcreate -L 1G -n lamp_root vg1
y en vez de formatearlo, le copiamos bloque a bloque el filesystem creado...
# dd if=/dev/vg1/intrepid_root of=/dev/vg1/lamp_root
el logical volume de swap lo creamos segun la necesidad...
# lvcreate -L 256m -n lamp_swap vg1
# mkswap /dev/vg1/lamp_swap
creamos el archivo de configuracion de la xm...
# cp /etc/xen/intrepid /etc/xen/lamp
# vi /etc/xen/lamp
mismo encabezado, kernel y ramdisk para todos...
# -*- mode: python; -*-
kernel = "/boot/vmlinuz-2.6.24-19-xen"
ramdisk = "/boot/initrd.img-2.6.24-19-xen"
Le damos 128m de RAM y le dimos 256m de SWAP (128x2)
memory =128
Nombre unico de la xm
name = "lamp"
Que cree una interface virtual y la nombre como quiera, queda en el bridge automatico.
vif = ['']
Le asignamos los volumenes antes creados.
disk = ['phy:vg1/lamp_swap,hda1,w','phy:vg1/lamp_swap,hda2,w']
Data para el kernel a bootear...
root = "/dev/hda1 ro"
Es muy importante pasarle la variable xencons, sino no podemos acceder a la xm
extra = "xencons=tty 4"
IMPORTANTE: A este punto tenemos que repetir toda la configuracion antes vista pero personalizada para este server:
1 - Montar el nuevo filesystem: mount /dev/vg1/lamp_root /mnt
2 - vi /mnt/etc/hosts
3 - vi /mnt/etc/hostname
4 - vi /mnt/etc/network/interfaces
5 - vi /mnt/etc/fstab
6 - Desmontar el filesystem: umount /mnt
Una vez terminada la machine... le damos arranque...
# xm create lamp -c