Tela em branco durante o boot ou console de baixa resolução no Ubuntu Server dentro do VirtualBox

1

Estou configurando uma plataforma de teste no VirtualBox, o sistema host é o Ubuntu Lucid Desktop e o sistema convidado é o Ubuntu Lucid Server.

A instalação básica do servidor oferece console 80x25 com rolagem lenta e atualizações de tela lentas. Isso foi corrigido pela lista negra vga16fb . Depois disso, consegui um console de 80x25 com atualizações rápidas de tela e rolagem.

Então tentei desativar a tela inicial e o modo silencioso editando /etc/default/grub , removendo os parâmetros de inicialização padrão splash e quiet de GRUB_CMDLINE_LINUX_DEFAULT . Depois disso, recebi mensagens de boot rapidamente exibidas durante a inicialização no console 80x25.

Depois tentei configurar resoluções mais altas no console. Eu forneci um modo gráfico desejado no arquivo /etc/default/grub com o parâmetro GRUB_GFXMODE e o parâmetro GRUB_GFXPAYLOAD_LINUX para keep para manter o modo gráfico persistente no console. Depois disso, tenho uma resolução desejada no menu do grub, a resolução desejada no console, mas as mensagens de inicialização entre a seleção da linha de inicialização do grub e a tela de login agora ficam invisíveis (tela preta).

Como configurar o grub e o console para que todas as partes do processo de inicialização - grub, mensagens de inicialização e login no console - fiquem visíveis em um console de resolução desejado?

UPD: as coisas melhoram quando forneço o módulo fbcon para initrd : edite o arquivo /etc/initramfs-tools/modules e adicione uma linha fbcon lá e, em seguida, reconstrua o initrd emitindo update-initramfs -vu . Tudo como root, claro. Depois disso, comecei a ver as mensagens de inicialização, a primeira delas dizendo Console: switching to colour frame buffer device 128x48 . No entanto, parte da saída de inicialização entra no modo de console diferente (como fsck messages), e vejo a tela sendo alternada para lá e vice-versa. Mas ainda assim é muito mais do que uma tela em branco.

    
por mbaitoff 15.09.2011 / 10:58

1 resposta

1

É provavelmente uma idéia melhor executar um servidor de vm no modo sem cabeça e consolá-lo, tendo qualquer largura de terminal que seu convidado possa gerenciar. Existe um comando virtualbox-headless para o propósito. Você pode configurar um stty no guest e redirecionar as mensagens de boot para o mesmo stty por uma linha de comando do kernel no grub, como:

BOOT_IMAGE=/boot/vmlinuz-3.0.0-10-generic root=/dev/sda1 ro console=ttyS0,38400n8 vt.handoff=7

então, no host, copie /etc/init/tty6.conf para tty8.conf e substitua a linha

exec /sbin/getty -8 38400 tty6

com:

exec /sbin/getty -8 38400 ttyS0

Finalmente, configure a imagem para saída serial0 para / dev / pts no host. (Isso funciona bem com o kvm, também deve ir com o virtualbox)

De qualquer forma, se você não gosta dessa abordagem, instale as adições dos convidados. Então você deve ser capaz de alcançar resoluções mais altas. A lenta rolagem vem do fato de que o vga16fb é de fato informação de cor de 16 bits por pixel e o console pobre tem que transformar cada pixel em 24 ou 32 bits de seus hosts X11 e monitorar mudanças de pixel não é trivial, então se você de alguma forma pode aumentar a profundidade de cor para combinar com seus hosts, a rolagem deve acelerar.

    
por aquaherd 15.09.2011 / 22:11