Criaremos uma máquina modelo agora que será usada posteriormente.
# mkdir /modelo
Instale o
debootstrap:
# aptitude install debootstrap
O debootstrap precisa de uma fonte de dados, que pode ser o CD-ROM do Debian ou uma URL da Internet. Para utilizar o debootstrap uma URL, execute o comando:
# debootstrap etch /modelo http://ftp.us.debian.org/debian
Copie alguns arquivos essenciais para dentro de /modelo:
# cp -a /etc/apt/* /modelo/etc/apt
# cp -a /etc/fstab /modelo/etc
# cp -a /etc/hosts /modelo/etc
# cp -a /etc/network/interfaces /modelo/etc/network
# cp -av /lib/modules/*xen* /modelo/lib/modules
"Enjaule-se" dentro do diretório /modelo com o comando:
# chroot /modelo
Obs.: Uma vez enjaulado, o /modelo passará a ser a raiz do sistema (/). Com isso o administrador estará operando dentro de um novo sistema, que deverá ser reconfigurado. Se a rede estava funcionando fora da jaula, continuará funcionando dentro da mesma e com o mesmo endereço IP.
Execute o comando:
# mount /proc
Obs.: Isso se faz necessário porque a partição /proc é montada pelo sistema durante o boot e não houve boot de sistema e sim enjaulamento.
Execute os comandos:
# aptitude update
# aptitude install locales libc6-xen
Defina as variáveis abaixo:
# export LC_ALL="pt_BR"
# export LC_CTYPE="pt_BR"
# export LANGUAGE="pt_BR"
# export LANG="pt_BR"
# export LC_MESSAGES="pt_BR"
Execute o comando abaixo para reconfiguração do locales:
# dpkg-reconfigure locales
Nas opções exibidas na tela, selecione "pt_BR ISO-8859-1" e clique em OK. Em seguida confirme a opção "pt_BR" e clique em OK.
Execute o comando a seguir para otimizar o sistema:
# aptitude install apmd less linuxlogo ntpdate rcconf
Instale o pacote
module-init-tools:
# aptitude install module-init-tools
Atualize o sistema com o comando:
# aptitude upgrade
Remova os arquivos .deb utilizados até o momento para que a máquina modelo não fique muito grande:
# apt-get clean
Converta o arquivo de senhas de /etc/passwd para /etc/shadow com o comando:
# pwconv
Edite o arquivo /etc/hostname e altere o nome da máquina para "modelo".
Edite o arquivo /etc/hosts e altere o nome para "modelo" e ip da máquina para 192.168.1.3.
Edite o arquivo /etc/network/interfaces e altere o nome xen por eth0 para que as máquinas virtuais possam utilizar corretamente os adaptadores de rede. Ainda, remova as entradas bridge_ports e bridge_maxwait.
Renomeie o diretório /lib/tls para desabilitá-lo. Utilize o comando:
# mv /lib/tls /lib/tls.disabled
Edite o arquivo /etc/inittab e desabilite os terminais locais de 2 a 6 (lembra do que eu disse no início sobre só ter um terminal). A situação final será a seguinte:
1:2345:respawn:/sbin/getty 38400 tty1
#2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
Obs.: O Xen só utiliza um terminal. Assim sendo, a não desabilitação dos terminais excedentes causará mensagens de erro na tela.
Edite o arquivo
/etc/profile e insira as linhas (no final):
alias ls='ls --color=auto'
export TMOUT=1200
Obs.: A linha "alias" proverá a facilidade de colorização dos resultados do comando ls. A linha export irá declarar a variável TMOUT. Com isso, após 1200 segundos (20 minutos) de inatividade no teclado, haverá um auto-logout. Isso aumentará o nível de segurança.
Edite o arquivo
/etc/fstab e altere as entradas existentes para que fiquem compatíveis com as máquinas virtuais a serem criadas. Esse arquivo deverá referir-se a uma nova máquina que, normalmente, terá um esquema de partições próprio, começando em /dev/hda1. A seguir, um exemplo de configuração para a máquina modelo:
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda1 / ext3 defaults 0 1
/dev/hda2 none swap sw 0 0
Obs.: Não se preocupe com o fato de ter utilizado /dev/hda1 e /dev/hda2 e não saber o porque disso. Isto em nada tem haver com seus dispositivos físicos (reais), até mesmo se acaso tivesse, nós usaríamos algo como /dev/sd*, o que não é o caso. Na verdade, no momento em que a máquina virtual for configurada para ir ao ar, serão atribuídas ligações entre os dispositivos em questão e os volumes lógicos criados anteriormente. Assim sendo, no caso da máquina vm1, /dev/hda1 será correlacionado com /dev/vm/vm-virt01.raiz ou /dev/vm/vm-virt02.raiz. Já o /dev/hda2 será correlacionado com /dev/vm/vm-virt01.swap ou /dev/vm/vm-virt02.swap. Isso será configurado posteriormente.
Desmonte o diretório /proc com o comando:
# umount /proc
Saia da jaula com o comando:
# exit