Criarei uma VM de modelo Debian
Linux que dará origem a todas as outras VMs que serão criadas. Com isso você não precisará repetir todo esse processo lento e trabalhoso toda vez que quiser criar uma VM.
1. Crie um diretório /xen/modelo.
2. Instale o pacote
debootstrap (necessário para se fazer uma instalação do Debian dentro de um diretório).
3. Execute:
# debootstrap --include=libc6-xen lenny /xen/modelo http://ftp.br.debian.org/debian
Obs.1: aqui será criada uma instalação básica do Debian Lenny dentro do diretório /xen/modelo, com a opção de instalar a biblioteca libc6-xen.
Obs.2: mais uma vez, esse trecho será um pouco demorado. ;-)
Para a instalação das VMs é necessário compilar um novo kernel. Usaremos o que compilamos no capítulo anterior.
4. Acesse novamente /usr/src/xen-3.3.0/linux-2.6.18-xen.hg e deixe a seguinte linha no arquivo
Makefile conforme abaixo. Mudaremos de "dom0" para "domU":
EXTRAVERSION = .8-xen-domU
5. Abra o menu de configuração do kernel:
# make menuconfig
6. No menu principal, em "XEN", deixe a opção conforme abaixo:
[ ] Privileged Guest (domain 0)
7. Saia do menu de configuração, lembre-se de salvar quando ele perguntar e recompile o novo kernel:
# make
# make modules_install
8. Copie /usr/src/xen-3.3.0/linux-2.6.18-xen.hg/arch/i386/vmlinuz para /boot/vmlinuz-2.6.18.8-xen-domU. Copie /lib/modules/2.6.18.8-xen-domU para /xen/modelo/lib/modules.
9. Nessa instalação "modelo" é necessário instalar alguns pacotes e fazer algumas configurações, seguem:
9.1. Execute:
# chroot /xen/modelo (a partir de agora todas as alterações serão feitas nesse "modelo")
9.2.
# mount /proc
9.3. Edite
/etc/environment adicionando as linhas:
LANG="pt_BR"
LANGUAGE="pt_BR:pt:pt_PT"
9.4. Carregue o arquivo:
# source /etc/environment
9.5. Adicione a entrada "export LC_ALL=pt_BR" ao arquivo
/etc/profile.
9.6. Carregue as alterações:
# source /etc/profile
9.7. Edite
/etc/apt/sources.list:
deb http://ftp.br.debian.org/debian testing main contrib non-free
9.8.
# apt-get update
9.9.
# apt-get install vim less build-essential locales ssh nmap udev
9.10. Descomente as linhas abaixo no arquivo
/etc/locale.gen:
pt_BR ISO-8859-1
pt_BR.UTF-8 UTF-8
9.11. Execute:
# locale-gen
9.12. Edite
/etc/inittab adicionando a entrada abaixo para permitir fazer logon no console da VM (MUITO IMPORTANTE):
co:2345:respawn:/sbin/getty 38400 xvc0
9.13. Crie senha para usuário root:
# passwd
9.14. Altere
/etc/ld.so.conf.d/libc6-xen.conf, trocando "hwcap 1 nosegneg" para "hwcap 0 nosegneg".
10.
# umount /proc
11. Saia do chroot:
# exit
Usaremos o LVM (Logical Volume Manager) para criar os discos que serão usados pelas VMs.
12. Instale as ferramentas de administração do LVM no Domain-0.
12.1.
# apt-get install lvm2 dmsetup
12.2. Inicie o LVM:
# /etc/init.d/lvm2 start
13. Verifique se há no disco uma partição (no meu caso sda3) criada especialmente para abrigar as discos criados via LVM:
# fdisk -l /dev/sda
Obs.: se não houver, deverá ser criada via "fdisk". Essa recomendação é feita no capítulo "Preparando o sistema hospedeiro (dom0)".
14. Crie um Physical Volume nessa partição:
# pvcreate /dev/sdaX
Cuidado! Especifique exatamente a partição que você disponibilizou para o LVM.
15. Crie o Volume Group de nome "xenvg" nesta partição.
# vgcreate xenvg /dev/sdaX
Cuidado! Especifique exatamente a partição que você disponibilizou para o LVM.