Gentoo · 2 min read · Dec 02, 2025

Gentoo 2009 domU Paravirtualizado Usando Debian Lenny

Gentoo 2009 domU Paravirtualizado Usando Debian Lenny

Este guia irá ajudá-lo a criar um convidado xen paravirtualizado gentoo sob Debian Lenny. Como o lançamento do Gentoo 2008.0 está obsoleto, usaremos o estágio gentoo atual.

Base

dd if=/dev/zero of=gentoo.img count=4096 bs=1M
mkfs.ext3 gentoo.img
mount -o loop gentoo /mnt/gentoo

Estágio Gentoo

wget http://mirrors.kernel.org/gentoo/releases/amd64/current/stage3-amd64-20090702.tar.bz2
tar jxvf stage3-amd64-20090702.tar.bz2 -C /mnt/gentoo

Módulos

mkdir /mnt/gentoo/lib/modules
cp -R /lib/modules/2.6.26-2-xen-amd64 /mnt/gentoo/lib/modules

Base Chroot

mount -t proc none /mnt/gentoo/proc
mount -o bind /dev /mnt/gentoo/dev
cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
chroot /mnt/gentoo /bin/bash
env-update
source /etc/profile
emerge --sync
emerge dhcp
emerge syslog-ng
rc-update add syslog-ng default
emerge dcron
rc-update add dcron default
nano -w /etc/conf.d/hostname
nano /etc/conf.d/net
config_eth0=( "192.168.1.100 netmask 255.255.255.0" )
routes_eth0=( "default gw 192.168.1.254" )
#config_eth0=( "dhcp" )
nano /etc/fstab
/dev/sda1 / ext3 noatime 0 1
proc /proc proc defaults 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
passwd
exit

Configuração

kernel      = '/boot/vmlinuz-2.6.26-2-xen-amd64'
ramdisk     = '/boot/initrd.img-2.6.26-2-xen-amd64'
memory      = '256'
root        = '/dev/sda1 ro'
disk        = ['file:/xen/gentoo.img,sda1,w',]
name        = 'Gentoo 2009'
dhcp        = 'dhcp'
vif         = [ '' ]
extra = 'xencons=tty'
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

Problemas com /proc

Corrigir isso é apenas uma questão de comentar a seção de /sbin/rc que tenta montar /proc começando por volta da linha 217 assim:

#       check_statedir /proc
#
#       ebegin "Montando proc em /proc"
#       if [[ ${RC_USE_FSTAB} = "yes" ]] ; then
#               mntcmd=$(get_mount_fstab /proc)
#       else
#               unset mntcmd
#       fi
#       try mount -n ${mntcmd:--t proc proc /proc -o noexec,nosuid,nodev}
#       eend $?

Você também precisará comentar a seção que tenta montar /sys também, ou na próxima vez que você inicializar, você receberá o mesmo erro com um ponto de montagem diferente falhando.

#       if [ "$(get_KV)" -ge "$(KV_to_int '2.6.0')" ] ; then
#               if [[ -d /sys ]] ; then
#                       ebegin "Montando sysfs em /sys"
#                       if [[ ${RC_USE_FSTAB} = "yes" ]] ; then
#                               mntcmd=$(get_mount_fstab /sys)
#                       else
#                               unset mntcmd
#                       fi
#                       try mount -n ${mntcmd:--t sysfs sysfs /sys -o noexec,nosuid,nodev}
#                       eend $?
#               else
#                       ewarn "Nenhum /sys para montar sysfs necessário em kernels 2.6 e posteriores!"
#               fi
#       fi
Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.