Alterando a resolução do terminal após o boot.

Algo que me incomodou no Ubuntu 10.04 é que quando troco o meu driver opensource por driver propriatário nvidia, a resolução do terminal volta para 640×480 que creio eu caiba 25 linhas por 80 colunas. Não sei quanto a você, mas eu gosto de mais linhas e mais colunas. Para mim, quanto maior a resolução, melhor.

Você pode alterar algumas coisas usando o programa startup-manager, mas as resoluções que ele dá como disponíveis são proporcionais 4:3, isto é, 640×480, 800×600 e 1024×768 que convenhamos é insuficiente para mim porque utilizo um monitor widescreen no formato 16:10.

A resolução para esse pseudo-problema é trabalhosa, no entanto, funciona.

1) Abra o terminal com permissão de administrador

Dê um ALT+F2 e execute “gksu gnome-terminal”.

Assim, não necessitaremos do comando “sudo” na seqüência de comandos que serão necessários realizar no terminal.

2) Instale mais programas

Execute no terminal :

apt-get install v86d hwinfo

3) Veja as resoluções que sua placa de vídeo é capaz de responder

Execute no terminal :

hwinfo --framebuffer

Listará algo semelhante a isto :

E tome nota da resolução que gostaria de usar, no entanto, a resolução escolhida tem de ser compatível com o seu monitor, caso contrário, não funcionará direito, por exemplo, minha placa de vídeo diz que posso usar 1920×1200, mas sei que este monitor que estou usando posso no máximo ir até 1440×900 :

(...)
Mode 0x0364: 1440x900 (+1440), 8 bits
Mode 0x0365: 1440x900 (+5760), 24 bits
Mode 0x0368: 1680x1050 (+1680), 8 bits
Mode 0x0369: 1680x1050 (+6720), 24 bits
Mode 0x037c: 1920x1200 (+1920), 8 bits
Mode 0x037d: 1920x1200 (+7680), 24 bits
Config Status: cfg=new, avail=yes, need=no, active=unknown

Coloquei em negrito a resolução que pretendo usar no terminal, note porém que para uma mesma resolução temos 8,16 ou 24 bits, estes se referem a quantidade de cores ou profundidade de cores como alguns sistemas expressam. Escolha sempre um resolução usando 8 bits que dá um total de 256 cores possíveis num terminal, quanto mais cores, mais memória sua placa de vídeo consumirá e convenhamos, para usar em terminal, as cores básicas já são mais do que suficientes. Perceba que para cada combinação de resolução versus quantidade de cores há um número chamado de Mode,  também conhecido como Vesa Mode, este número está em hexadecimal, sabemos disso porque é precedido de 0x.

Anotou o Vesa Mode da resolução e a quantidade de cores que pretende usar, a resolução e a quantidade de bits de cores ? Então anote, eu espero…

4) Edite o arquivo de configuração /etc/initramfs-tools/modules

Execute no terminal :

gedit /etc/initramfs-tools/modules

E acrescente a seguinte linha :

uvesafb mode_option=1440x900-8

Viu “1440×900” ? Pois é, essa foi a resolução que você anotou.

Viu “-8” ? Pois é, essa foi a quantidade de cores que você anotou.

Depois de acrescentar a linha acima, salve o arquivo e saia do editor.

5) Edite o arquivo de configuração /etc/initramfs-tools/conf.d/splash

Execute agora :

gedit /etc/initramfs-tools/conf.d/splash

E acrescente a seguinte linha :

FRAMEBUFFER=y

Depois de acrescentar a linha acima, salve o arquivo e saia do editor.

Execute agora :

update-initramfs -u

Isso efetivará as mudanças realizadas no arquivo de configuração.

6) [Opcional] Resolução no Grub ou durante o menu do Grub

Alterar a tela de Grub com as opções de boot não é necessário para muitos de nós, até porque raramente temos tantas opções no menu de grub para ter essa necessidade, no entanto, alguns podem desejar isso porque sabem como colocar uma imagem no fundo ou preferem ter ainda mais linhas dispostas no terminal interativo do grub. Se voce deseja realmente alterar a resolução do menu do Grub então siga esses passos :

6.1) Dê um boot no seu sistema, isso mesmo que você ouviu : dê um boot no seu sistema e após o POST de sua bios, segure a tecla Shift. Isso forçará o Grub ser exibido mesmo que tenha sido configurado para não ter um timeout de espera.

6.2) Na tela tradicional do Grub, digite ‘c’ para ir para a linha de comando do Grub :

6.2) Execute o  comando ‘vbeinfo’, isso mostrará as resoluções que estão disponíveis para você usar com o Grub, anote o Vesa Mode, resolução e o número de cores que  pretende usar, note que o Vesa Mode é um número hexadeciamal começando com “0x” :

Na figura acima, – embora não apareça na listagem – preferi anotar o Vesa Mode 0x164 para usar 1440×900 com 8 bits de cores, mas você pode ficar a vontade para usar outros, quanto maior a resolução e maior a quantidade de cores, sua tela de fundo e figura durante a carga do sistema (splash screen) poderá ser bem melhor.

Agora que você já anotou todos os dados da resolução desejada então dê um ESC para voltar ao menu do Grub e execute a opção tradicional para dar carga ao seu Ubuntu.

6.3) Depois do Ubuntu carregado, dê um ALT+F2 e execute ‘gksu gnome-terminal’.

Estando já no terminal, execute também :

gedit /etc/default/grub

Procure pela linha :

#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Edite a linha acima (ou acrescente-a, se não existir) deixando-a assim :

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Por que isso ? Apenas para deixar explicito essas opções, veja que se você deixar ela comentada, ambas as opções são ativas por default do mesmo jeito. A opção [quiet] define que o boot será silencioso e não poderá ter nenhuma interatividade com o usuário enquanto a opção [splash]  permite o uso de splash screens (figuras) .

Eu tenho por hábito remover essas opções quando percebo que meu boot tá demorando  demais e preciso saber o que está ocorrendo, caso contrário, ficarei esperando eternamente pelo GNOME que pode nem aparecer devido a algum problema que essas opções default do Grub estão me escondendo, assim quando estiver na mesma situação altere a linha acima por :

GRUB_CMDLINE_LINUX_DEFAULT=""

Finalmente, vamos ajustar a resolução do grub, procure pela linha :

#GRUB_GFXMODE=640x480

Edite a linha acima (ou acrescente-a, se não existir) deixando-a assim :

GRUB_GFXMODE=1440x900

Onde 1440×900 é a resolução que será usada ao exibir as opções do Grub e que lhe apareceu durante a execução do comando ‘vbeinfo’. Antigamente usavamos o parametro vga=[vesa mode] para ajustar a resolução, embora o parametro ‘vga=’ ainda funcione, ela não é mais necessária, o parâmetro GRUB_GFXMODE é mais elegante.

Vale ressaltar que resoluções widescreen ou 16:10 são consideradas experimentais, então podem funcionar ou não.

Depois das modificações sugeridas, salve o arquivo e saia do editor.

Execute agora :

update-initramfs -u
update-grub

Isso efetivará as mudanças realizadas no arquivo de configuração do Grub.

CONCLUSÃO

Pronto !

Reinicie o computador e passará a ver as modificações sugeridas.

Grande parte dessas sugestões foram retiradas deste artigo.

  1. #1 por Renato em 29 \29\UTC junho \29\UTC 2010 - 19:12

    Muito bom o post, consegui melhorar um pouco minha resolução depois que ativei o módulo NVIDIA, mesmo assim não consigo colocar em 1920×1080, sem o modulo da NVIDIA isso era possível, eu apertava alt+f2 e ele mudava para o console sem nem trocar a resolução!

  2. #2 por Fabiocs em 6 \06\UTC outubro \06\UTC 2010 - 15:07

    Estou com um problema parecido e ainda sem solução, quem sabe você poderia me ajudar.. Uso ou Debian ou Ubuntu, sempre em modo texto(não instalo interface gráfica) aqui na empresa onde trabalho.. usamos um aplicativo em modo texto. Na versão 10.04 do ubuntu, mesmo instalando somente a modo texto a resolução do terminal fica muito alta tipo 1024×768, o que deixa as telas do aplicativo que uso muito pequena, dificultando a leitura. O que eu preciso e ainda não consegui foi deixar o console com resolução mais baixa, tipo 640×480 para que as telas fiquem maior, facilitando a leitura.. poderia me mostrar como se faz.? Depois que passou para o grub2, ir na linha de inicialização do kernel e mudar a resolução não funfa mais…. Obrigado.. abraço.

%d blogueiros gostam disto: