[CentOS-es] Instalación de Debian Xen

"Ing. Ernesto Pérez Estévez" centos en ecualinux.com
Mar Jul 3 02:46:57 UTC 2007


BLEYCK LINX wrote:
> Saludos a todos, me podrian ayuda con alguna dirección web de donde pueda
> instalar el Debian con el Xen, paa terner un SO Virtual, espero me puedan
> ayudar.

Aquí te mando el script que uso para instalar debian como un domU en mi 
centos, no es la maravilla el instalador, pero si le dedicas un tiempo, 
te funcionará.

Debes instalar el debootstrap para que te funcione. Ah, el script 
funciona también para ubuntu.

Aquí puedes bajar el debootstrap (en rpm):
http://centos5.centos.ec/i386/repodata/repoview/debootstrap-0-0.3.3.1-8.1.html

Aquí va el script, usa lvm2 para crear los discos.

#!/bin/bash
# Script para instalar debian como un domU de centos5
# Hecho por Ernesto Pérez Estévez
# www.ecualinux.com - www.centos.ec
# version 0.0.0.1

# Falta ponerle una clave a root, aleatoria
# falta entrar por linea de comando la IP, mascara y network

[ -n "$1" ] && [ -n "$2" ]  && [ -n "$3" ] && [ -n "$4" ] && [ -n "$5" ] 
&& [ -n "$6" ] && [ -n "$7" ]|| { echo "usar: $0 vmname ip netmask 
gateway password hdsize ram"; exit 1; }

[ -f "/etc/xen/$1" ] && { echo "la maquina virtual $1 existe, eliminela 
primero"; exit 1;}

#desmontando dentro de /mnt por si acaso
umount /mnt/$1 &> /dev/null
umount /mnt &> /dev/null

lvcreate dsk -n$1disk1 -L${6}G
lvcreate dsk -n$1swap -L${7}M
mkfs.ext3 -m0 /dev/dsk/$1disk1
mkswap /dev/dsk/$1swap

mkdir /mnt/$1
mount /dev/dsk/$1disk1 /mnt/$1

debootstrap --arch i386 sarge /mnt/$1/ http://ftp.us.debian.org/debian

#borrando /lib/tls
rm -Rf /mnt/$1/lib/tls

#copiando las librerias del kernel de xen
rm -Rf /mnt/$1/lib/modules/2.6*xen
cp -a /lib/modules/2.6*xen /mnt/$1/lib/modules

# Creando la maquina virtual hay que asignar la IP y la RAM
cat > /etc/xen/$1 << EOF
kernel = "/boot/vmlinuz-2.6-xen"
memory = $7
name = "$1"
vif = [ 'vifname=$1 , mac=`/usr/sbin/macgen.sh`, ip=$2, bridge=xenbr0' ]
disk = [ 'phy:/dev/dsk/$1disk1,sdb1,w','phy:/dev/dsk/$1swap,sdb2,w' ]
root = "/dev/sdb1 ro"
EOF

#creando el fstab
cat > /mnt/$1/etc/fstab << EOF
/dev/sdb1     /     ext3     errors=remount-ro,noatime     0     1
/dev/sdb2     swap  swap     defaults              0     0
proc          /proc proc     defaults              0     0
EOF

chroot /mnt/$1 mount -t proc none /proc
rsync -avq /root/xen/debian-dev/tty* /mnt/$1/dev/


cat > /mnt/$1/etc/hosts << EOF
127.0.0.1     localhost.localdomain localhost
$2            $1.ecualinux.com   $1
EOF

cat > /mnt/$1/etc/network/interfaces << EOF
  # This file describes the network interfaces available on your system
  # and how to activate them. For more information, see interfaces(5).

  # The loopback network interface
  auto lo
  iface lo inet loopback

  # The primary network interface
  auto eth0
  iface eth0 inet static
         address $2
         netmask $3
         gateway $4
EOF

#desactivando ipv6
echo "alias ipv6 off" > /mnt/$1/etc/modprobe.conf
echo "alias net-pf-10 off" >> /mnt/$1/etc/modprobe.conf

#resolv.conf del dom0
cp /etc/resolv.conf /mnt/$1/etc/

#cambiando la clave a root
echo root:$5|chroot /mnt/$1 chpasswd

#activando la maquina automaticamente
ln -s /etc/xen/$1 /etc/xen/auto/

#finalizando
sync
chroot /mnt/$1 umount /proc &> /dev/null
umount /mnt/$1/proc &> /dev/null
umount /mnt/$1
rmdir /mnt/$1

echo "recuerda entrar e instalar ssh: apt-get install ssh"
exit 0

macgen.sh es así:
#!/bin/bash

THE_MAC=`python -c 'import random; r=random.randint; print 
"00:16:3E:%02X:%02X:%02X" % (r(0, 0x7f), r(0, 0xff), r(0, 0xff))'`
echo $THE_MAC

exit 0



saludos
epe
-- 
Ing. Ernesto Pérez Estévez
http://www.ecualinux.com
USA: +1 305 359 4495 / España: +34 91 7617884
Ecuador: +593 2 3412402 / + 593 9 9246504


Más información sobre la lista de distribución CentOS-es