Resolvendo o problema da tela de login não carregar em Containers no Proxmox

Olá a todos, mais uma vez eu aqui com uma dica sobre o Proxmox. Desta vez eu vou dar uma dica para quem está utilizando ou pensa em utilizar o Proxmox para virtualização de Containers Linux.

Para quem não sabe Containers no Proxmox nada mais é do que maquinas virtuais utilizando o OpenVZ, um sistema muito utilizado por VPSs pelo mundo, onde você pode pegar uma maquina real com o Linux instalado (qualquer distribuição) e virtualizar diversas outras distribuições linux distintas, de forma que as mesmas compartilharão o Kernel do hospedeiro e ganhando performance e maleabilidade. Nos Containers OpenVZ você ganhará: perda de performance de apenas 3% caso sua maquina não fosse virtualizada, contra quase 30% das demais soluções, possibilidade de modificação no disco e processador e memória com a VM em utilização, etc.

Pronto agora que expliquei um pouco sobre os Containers vamos para a dica em si.

A maior parte dos Containers OpenVZ quando são feitos, não são pensados na possibilidade de utilização para acesso via protocolo de transmissão de telas, como o VNC por exemplo, ele foi pensado apenas para acesso via SSH ou através do vzctrl (utilitário de gerenciamento do OpenVZ instalado na maquina host), por isso muitos dos templates que baixamos e instalamos no Proxmox vem com as telas de login desativadas pro padrão, seja para um pequeno ganho de desempenho (pois cada uma delas gasta alguns KBytes ou poucos Megas de memória e em um ambiente com mais de 100 Containers isso faz diferença), ou por segurança, porem essas telas podem ser facilmente ativas para sua maquina guest novamente.

1 – Para conseguir colocar o terminal novamente, terá que acessar o Container de alguma forma, caso ela já tenha um IP fixado, você poderá acessar via SSH e pular para o paço 3, caso não tenha siga os paços abaixo.

2 – Caso você não tenha um IP no Container você terá que acessar a maquina host via SSH e após esse acesso rote o comando:

# vzlist

Após executado ele mostrará algo como:

proxmox-ve:~# vzlist
CTID NPROC STATUS IP_ADDR      HOSTNAME
108   23          running   192.168.9.20 ubuntu-1204.proxmox.com
109   18          running   192.168.9.21 centos63-64.proxmox.com
111   15          running   192.168.9.23 centos5-64.proxmox.com

Após listar os Containers veja qual o CTID do que você deseja acessar e execute o comando vzctrl para entrar no guest desejado:

# vzctrl enter 108

Após isso você estará logado dentro do Container desejado. =D

3 – Após logado no guest, você deverá descobrir seu guest utiliza o init para iniciar os terminais ou se utiliza o inittab, para isso veja qual do arquivos existe no seu guest:

/etc/init/tty1.conf ou /etc/inittab

Caso seja o /etc/init/tty1.conf você deverá acessa-lo e deixar da forma do exemplo abaixo:

# nano /etc/init/tty1.conf

# tty1 – getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345]

stop on runlevel [!2345]

respawn
exec /sbin/getty -8 38400 tty1

Caso seja o /etc/inittab você deverá acessa-lo e adicionar a seguinte linha no fim do arquivo:

1:2345:respawn:/sbin/agetty tty1 38400 linux

Após isso desligue o Container e ligue novamente e veja se o terminal apareceu.

 

Pois é pessoal essa foi mais uma dica do Proxmox e até a pŕoxima.

 

Fonte: http://pve.proxmox.com/wiki/OpenVZ_Console