Criaremos uma máquina modelo agora que será usada posteriormente.
# mkdir /modelo
# 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 com o CD-ROM do Debian, insira o mesmo no leitor de CD e monte a mídia com o comando:
# mount /dev/cdrom /mnt
Em seguida, emita o comando:
# debootstrap etch /modelo file:/mnt
Para utilizar o debootstrap com uma URL, ao invés do CD, 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
Na janela de diálogo que surgirá, selecione pt_BR ISO-8859-1 para gerar o locale correto. A seguir, selecione pt_BR para o environment.
Execute o comando "tzsetup" para configurar o fuso horário. Depois selecione "Nenhuma das opções acima" e, a seguir, GMT+2, GMT+3 ou GMT+4, de acordo com o seu caso (GMT+3 para o horário de Brasília).
Execute o comando a seguir para otimizar o sistema:
# aptitude install apmd less linuxlogo ntpdate rcconf
Execute o comando "rcconf" e desmarque os serviços que não serão utilizados. Se não souber o que está fazendo, deixe como está.
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 o desejado.
Edite o arquivo
/etc/hosts e altere o nome da máquina para o desejado.
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.
Configure o arquivo
/etc/resolv.conf para que o mesmo aponte para o(s) servidor(es) DNS correto(s).
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 vm1:
# <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/vm1.raiz. Já o /dev/hda2 será correlacionado com /dev/vm/vm1.swap. Configuraremos isso posteriormente.
Desmonte o diretório /proc com o comando:
# umount /proc
Saia da jaula com o comando:
# exit