Como desativar o modo gráfico do Linux.

Há casos em que o usuário prefere abrir mão do ambiente gráfico do Linux para executar as tarefas de que necessita somente no console.
Quando você não tem o desktop gráfico concorrendo por recursos do processador, da memória, do HD etc. é possível usufruir de um ambiente muito mais rápido para trabalhar.
A quantidade de soluções para este caso é enorme.
Algumas soluções já estão implementadas, desde os primórdios do Linux e não envolvem qualquer modificação no sistema.
Outras saídas irão envolver mudanças mais radicais.
O assunto poderia ocupar um livro — mas eu vou abordá-lo resumidamente, apenas com as soluções que eu uso ou que vi na Internet, começando pelas soluções definitivas às temporárias.
Sinta-se à vontade para nos contar como você prefere fazer, nos comentários.

Você pode (re)começar com uma instalação mínima

Esta é uma solução de caráter permanente.
Muitas distribuições GNU/Linux permitem a instalação sem o ambiente gráfico. No Debian isto é muito fácil.
Mais tarde, ela pode ser facilmente modificada depois para comportar um ambiente gráfico.

O Linux (tal como o DOS/Windows) começou como um sistema operacional desprovido de ambiente gráfico e, durante muitos anos, as pessoas faziam sua instalação e configuração “manualmente”, depois de ter todo o sistema principal funcionando.

O Debian e o Ubuntu têm a opção de instalação chamada netinstall, que te permite baixar e instalar apenas os pacotes que vai precisar, com total controle.
Fazer uma instalação mínima é sempre o melhor ponto de partida, para obter um sistema coeso, eficiente e leve.
A ideia, aqui, é ir adicionando ao sistema os componentes na medida em que se tornem necessários — e isto inclui o ambiente gráfico.

Você pode desinstalar o ambiente gráfico ou parte dele.

A segunda abordagem também é do tipo permanente (até quando você quiser).
Se você não tem planos de fazer uso do ambiente gráfico, o que inclui inúmeros aplicativos e suas diversas bibliotecas, desinstale-o de uma vez.
Se quiser voltar atrás, basta reinstalá-lo.
Esta solução, de certa forma, equivale à anterior — com a diferença de que não vai exigir a formatação o hardware de armazenamento e reinstalar o sistema.
Ela pode ser implementada “em estágios”, de maneira que você decide até que ponto deseja ir.
No Debian, no Ubuntu e nas outras distros derivadas, se você remover o lightdm, não vai mais dispôr da tela de autenticação gráfica. Neste caso, a inicialização do sistema irá terminar na tela de autenticação do console.
Outras distribuições usam o GDM ou KDM, no lugar do lightdm. O processo é o mesmo.
Para remover o lightdm no Debian e no Ubuntu, use o seguinte comando:

sudo apt remove lightdm

Isto não vai remover todo o ambiente gráfico — a maior parte dos aplicativos do desktop gráfico ainda vai estar lá.
Você pode reverter o processo reinstalando o lightdm. Como os pacotes ainda continuam no sistema, rapidamente estarão de volta ao seu lugar.
No Debian, é possível usar o comando tasksel (com privilégios administrativos).
Este aplicativo permite remover todo o desktop gráfico automaticamente.
Clique na imagem, abaixo, para ver detalhes:
Como remover o ambiente gráfico no Debian via tasksel.
Se quiser voltar atrás, basta rodar o tasksel novamente e remarcar as opções.

Desative o gerenciador gráfico

Uma solução bastante rápida é desativar o ambiente gráfico, já na sua inicialização.
Isto pode ser feito com uma operação simples de mudar o nome do display manager — cuja função é autenticar o usuário e carregar o restante do ambiente gráfico.
Lightdm
Minha sugestão é alterar o nome do lightdm. Como consequência, o sistema não vai conseguir iniciá-lo e você será deixado no login da linha de comando.
Esta pode ser a solução ideal para quem deseja temporariamente ligar o computador e evitar o ambiente gráfico automaticamente.
Contudo, ela traz alguns problemas.
O sistema vai continuar usando recursos na tentativa de iniciar o lightdm (o tempo todo).
Você pode desligar o serviço do lightdm e ele vai parar de incomodar, se for o caso. Veja como:

sudo mv /usr/sbin/lightdm /usr/sbin/0lightdm

Se a tela de login demorar muito a se apresentar (mais de 3 minutos), reinicie o computador e desative o serviço:

sudo service lightdm stop

Os comandos acima, renomeiam o lightdm (para que ele não seja mais encontrado) e param o serviço, respectivamente.
Quando quiser voltar atrás, basta executá-los em ordem inversa:

sudo mv /usr/sbin/0lightdm /usr/sbin/lightdm
sudo service lightdm start

Dependendo da velocidade do seu hardware, o ambiente gráfico estará de volta em segundos. Se isto não acontecer, reinicie o computador.
Esta solução é válida para o Debian e outras distribuições derivadas, como Ubuntu, Xubuntu etc. — estas duas últimas foram testadas até a versão 16.04 LTS Xenial Xerus.
Não experimentei esta abordagem em ambientes que usam o Mir ou o Wayland.

A maneira tradicional

Este último modo é o que mais uso e que não afeta o ambiente gráfico.
O Linux, tradicionalmente sempre trabalhou em modo multitarefa e multiusuário.
Múltiplos terminais de trabalho sempre estiveram presentes.
Estes terminais podem ser acessados com a combinação de teclas Ctrl + Alt + F1, Ctrl + Alt + F2 etc.
Para voltar ao ambiente gráfico, pressione Ctrl + Alt + F7.
Como você pode ver, esta é uma saída simples e prevista — que não afeta o restante do sistema.
Se você quiser pode, ainda, reduzir o peso do ambiente gráfico, terminando o lightdm, como serviço:

sudo service lightdm stop &

O Ubuntu Handbook propõe uma abordagem pelo GRUB, mas pode não ser compatível com todas as versões.

Como alterar cores dos itens de menu do GRUB 2

Pode acontecer de você estar usando uma imagem de fundo que não dê destaque seguro ao texto do menu do GRUB.
Como você pode ver, na imagem abaixo, há um texto claro sobre um papel de parede também claro.
Esta combinação de cores torna difícil identificar rapidamente as opções do menu.
grub 2 com imagem de fundo clara
O menu de GRUB é um estágio rápido da inicialização do sistema. O ideal é ter um tema que prime pelo contraste entre as opções do menu e o restante — facilitando ao usuário fazer suas escolhas.
Se não quiser trocar a imagem de fundo, você pode trocar as cores do texto.
Antes de continuar, é importante ressaltar que o GRUB é um trabalho em progresso. Recursos podem ser alterados, melhorados ou, simplesmente, retirados.
Este texto se baseia na versão 2.02 Beta do GRUB — presente na versão Alpha do Ubuntu 16.04 LTS Xenial Xerus. Uso a mesma versão do GRUB na minha máquina de trabalho (com Debian 8.3 Jessie), onde tudo funcionou exatamente igual.
Vamos ao que interessa!

Como testar a configuração de cores

Ao contrário de outros tutoriais deste site (veja os links no final do texto) sobre o GRUB, neste caso, não será necessário ficar reiniciando indefinidamente o computador até chegar à solução perfeita para você.
O GRUB permite experimentar “online” as configurações de cores do texto. Deixe-me explicar como.
Ao chegar ao menu, pressione a tecla ‘c’ para entrar no console de ajustes.
Neste aplicativo é possível fazer rápidos ajustes, com o comando SET.
Você pode configurar as cores do texto do menu, alterando as seguintes variáveis:

  • menu_color_highlight — Altera a cor do texto/fundo do item de menu que se encontra sob destaque ou highlight.
  • menu_color_normal — Define a cor do texto/fundo dos itens de menu listados, sem destaque. Estes ajustes afetam também o quadro central do menu.
  • color_normal — Define a cor do texto/fundo dos itens de texto do GRUB, que não fazem parte da lista do menu. Isto afeta as instruções ao redor do quadro central do menu.

Você pode usar a seguinte tabela de cores:

Cor Significado
BLACK Preto ou transparente
BLUE Azul
BROWN Marrom
CYAN Ciano
DARK-GRAY Cinza escuro
GREEN Verde
LIGHT-CYAN Ciano claro
LIGHT-BLUE Azul claro
LIGHT-GREEN Verde claro
LIGHT-GRAY Cinza claro
LIGHT-MAGENTA Magenta claro
LIGHT-RED Vermelho claro
MAGENTA Magenta
RED Vermelho
WHITE Branco
YELLOW Amarelo
A cor preta, quando se refere ao fundo, será interpretada como “transparente”.

De posse destas informações, já é possível fazer os testes.
grub-2-Captura de tela de 2016-04-01 23:13:23
Para alterar os itens de menu destacados, para texto amarelo e fundo azul use o seguinte comando:

set menu_color_highlight=yellow/blue

Pressione a tecla ‘ESC’ para voltar ao menu principal do GRUB e ver os efeitos.
Para continuar editando, pressione ‘c’, novamente.
Altere os outros itens do menu (os que não estão destacados), com o seguinte comando:

set menu_color_normal=blue/white

… e os outros itens da tela:

set color_normal=yellow/black

Continue experimentando com outras cores.
Para facilitar sua vida, é possível usar as setas para cima e para baixo e editar as linhas de comando.
Use o comando clear, para limpar a tela, sempre que quiser.
Não esqueça de anotar os valores pelos quais você se decidiu, antes de prosseguir.

Como tornar as mudanças permanentes

Quando você reiniciar o computador e chegar novamente ao GRUB, vai ver que os parâmetros voltaram ao que era antes.
Se quiser que os ajustes sejam fixos, é necessário editar um dos scripts de configuração do GRUB, o ‘/etc/grub.d/05_debian_theme’.
Fique atento. Daqui pra frente, os comandos devem ser executados com privilégios administrativos (root).
Use o seu editor de texto favorito para a tarefa:

nano /etc/grub.d/05_debian_theme
_

Encontre a seguinte linha, dentro do arquivo:

        if [ -z "${2}" ] && [ -z "${3}" ]; then
                echo "  true"
        fi

Insira um ‘#’ para transformar a linha echo " true" em um comentário e acrescente as linhas de configuração das cores, de acordo com o exemplo abaixo:

if [ -z "${2}" ] && [ -z "${3}" ]; then
    # echo "   true"
    echo "    set color_highlight=yellow/blue"
    echo "    set menu_color_normal=yellow/black"
    echo "    set color_normal=light-cyan/black"
fi

O que você vê, acima, é o meu exemplo. Não esqueça de trocar as minhas cores pelas suas.
Quando terminar a edição, grave o arquivo, saia do editor e execute o comando:

update-grub

Reinicie o computador e veja se tudo está como você queria.
Este tutorial complementa o artigo Como configurar o visual do menu de inicialização GRUB.
Você pode encontrar mais informações sobre outros parâmetros básicos de funcionamento do menu em Como configurar o GRUB.
Por fim, caso tenha gostado do resultado, sugiro tirar uma foto do novo visual do seu menu de inicialização GRUB e postar nas redes sociais.

Referências

https://help.ubuntu.com/community/Grub2/Displays.
http://www.thegeekstuff.com/2012/10/grub-splash-image/.

Como configurar o visual do menu de inicialização GRUB.

Gosto muito da imagem de fundo padrão do Debian 8 e do Ubuntu, para o menu de inicialização GRUB. Ainda assim, acho-os sem-graça.
Na verdade, sempre preferi deixar o timeout em 0, para não perder muito tempo por lá.
Como andei instalando alguns kernels para teste e o menu do GRUB é aonde escolhemos qual queremos usar, ele passou a ter mais importância para mim, quando ligo o computador.
Chegou a hora, portanto, de deixar o GRUB bonito — e, como sempre, vou mostrar o caminho das pedras para os leitores deste site.
grub 2 splash images
O papel de parede do menu GRUB pode ser facilmente trocado — de forma que você possa usar uma imagem que reflita melhor sua personalidade, que tenha o logotipo da sua empresa etc.
A escolha é sua.
Este artigo explica alguns métodos para definir a imagem do papel de parede do menu de boot do GRUB 2. Os experimentos em que me baseei foram realizados em uma máquina com Debian 8.3 Jessie. Mesmo que sua distribuição não seja exatamente a mesma que a minha, as instruções devem servir, desde que você esteja usando uma distro atual.

Como escolher imagens para usar no GRUB

As imagens de fundo do menu GRUB 2 precisam seguir alguns padrões, para serem aceitas pelo programa:

  1. estar gravadas nos formatos JPG/JPEG, PNG e TGA
  2. a profundidade de cores (JPG/JPEG) deve ser, no máximo, 8-bit (256 cores)
  3. certifique-se de que estejam em RGB (o GRUB não aceita imagem indexada)

Você certamente encontrará alguns modelos válidos em /usr/share/images/desktop-base/. Veja o que tem no meu sistema:

ls -lah /usr/share/images/desktop-base/ | grep -i grub 

lrwxrwxrwx 1 root root   30 Nov  1 16:11 desktop-grub.png -> /etc/alternatives/desktop-grub
-rw-r--r-- 1 root root  59K Dez 13  2014 joy-grub.png
-rw-r--r-- 1 root root 321K Dez 13  2014 lines-grub-1920x1080.png
-rw-r--r-- 1 root root  73K Dez 13  2014 lines-grub.png
-rw-r--r-- 1 root root  38K Dez 13  2014 moreblue-orbit-grub.png
-rw-r--r-- 1 root root  31K Dez 13  2014 spacefun-grub.png
-rw-r--r-- 1 root root 105K Dez 13  2014 spacefun-grub-widescreen.png

Se quiser entender melhor o comando grep, clique aqui.
As imagens presentes na listagem acima fazem parte do pacote desktop-base.
Você pode abrir uma cópia destas imagens no GIMP e criar uma nova, dentro de um padrão preexistente e que já funciona.
grub menu

O GRUB 2 procura por imagem seguindo uma ordem

Alterar o fundo do menu GRUB não é uma tarefa difícil. Normalmente, tudo o que se precisa fazer é “deixar o papel de parede” no lugar certo pro GRUB encontrar.
O script de configuração procura as imagens em certos locais ou espera encontrar referências a elas dentro do arquivo de configuração.
Veja como funciona, na ordem de preferência:

  1. Se você tiver o parâmetro GRUB_BACKGROUND, dentro de /etc/default/grub, corretamente ajustado, apontando para o caminho e o nome da imagem, isto será suficiente.
    Veja um exemplo:

    GRUB_BACKGROUND="/usr/share/images/desktop-base/moreblue-orbit-splash.png"
  2. Se o GRUB não encontrar o parâmetro GRUB_BACKGROUND em /etc/default/grub ou este for inválido, ele tentará usar uma das imagens presentes no diretório /boot/grub. Havendo mais de uma, a escolha recairá na primeira, em ordem alfanumérica
  3. Se as 2 tentativas anteriores falharem, o GRUB usará a imagem definida no script /usr/share/desktop-base/grub_background.sh
  4. Por fim, o GRUB irá tentar usar o arquivo de imagem definido no parâmetro WALLPAPER, em /etc/grub.d/05_debian_theme

Se nada der certo, o GRUB tem um padrão em modo texto (com fundo azul) para exibir, em vez de uma tela preta.
GRUB tela padrão modo texto.
Após editar os arquivos ou scripts de configuração do GRUB, não esqueça de rodar o comando update-grub, para consolidar as alterações.

sudo update-grub
 
Generating grub configuration file ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Imagem Linux encontrada: /boot/vmlinuz-4.3.0-0.bpo.1-amd64
Imagem initrd encontrada: /boot/initrd.img-4.3.0-0.bpo.1-amd64
Imagem Linux encontrada: /boot/vmlinuz-3.16.0-4-amd64
Imagem initrd encontrada: /boot/initrd.img-3.16.0-4-amd64
concluído

Na próxima vez em que você reiniciar sua máquina, verá sua nova imagem de fundo, para o menu GRUB.

Como obter mais imagens splash para usar no GRUB 2

Existe o pacote com outras imagens oficiais, prontas para usar no GRUB.
O nome do pacote é grub2-splashimages.
Se você usa o Ubuntu, pode instalá-lo com um clique, no botão abaixo:
Instalar
Quem usa o Debian, pode instalar com o comando apt:

sudo apt install grub2-splashimages

Após a instalação, você terá novas images para usar no diretório /usr/share/images/grub/. Veja:

ls /usr/share/images/grub/
050817-N-3488C-028.tga                  Hortensia-1.tga
2006-02-15_Piping.tga                   Lake_mapourika_NZ.tga
Apollo_17_The_Last_Moon_Shot_Edit1.tga  Moraine_Lake_17092005.tga
B-1B_over_the_pacific_ocean.tga         Plasma-lamp.tga
BonsaiTridentMaple.tga                  TulipStair_QueensHouse_Greenwich.tga
Glasses_800_edit.tga                    Windbuchencom.tga

Note que o formato das imagens é TGA, elas estão em baixa resolução — aproximadamente, 640 X 480.
Você não precisa de imagens de alta resolução para ter um efeito bonito no menu do GRUB, portanto.
Se você tem a intenção de criar uma imagem própria, recomendo usar uma destas como modelo.
Divirta-se!

Referências

Guia básico do GRUB.
http://members.iinet.net/~herman546/p20/GRUB2%20Splashimages.html#make_your_own_.
https://help.ubuntu.com/community/Grub2/Displays.

Como configurar o GRUB

O GRUB 2 é, atualmente, a versão padrão instalada na maioria das distribuições GNU/Linux, o que inclui o Ubuntu, o Fedora, o Debian etc.
Se você estava acostumado a configurar o gerenciador de boot nas suas versões anteriores, fique atento, por que as diferenças são muitas — entre a 2.0 e as precedentes.
Este artigo descreve a nova estrutura de arquivos e fornece detalhes básicos de alguns itens do menu de boot.
Para determinar a versão atual do seu GRUB, use o seguinte comando:

grub-install -v

O GNU GRUB é um carregador de boot ou boot loader, projetado originalmente por Erich Stefan Boleyn.
O significado deste nome é GRand Unified Bootloader.
Pra ser sucinto, um boot loader é o primeiro software a ser executado quando o computador é iniciado — isto é, logo depois do BIOS.
Sua função é carregar o sistema operacional e transferir-lhe o controle sobre o sistema de hardware. Cabe ao kernel, por sua vez, terminar de carregar o restante do sistema.
Os exemplos contidos neste texto se baseiam em uma máquina Debian 8.3 Jessie, com o GRUB 2.02.
Este artigo não cobre a versão 0.97 e anteriores do GRUB — que são sensivelmente diferentes da atual.

Configuração do GRUB 2

O GRUB 2 constrói seu menu (em grub.cfg) através de scripts, encontrados na pasta /etc/grub.d/ a partir dos parâmetros definidos no arquivo /etc/default/grub.
O arquivo grub.cfg não deve ser editado “manualmente”. Se você fizer isto, suas alterações se perderão após a execução dos scripts, ativados pelo comando update-grub.
O update-grup também determina o estado do seu sistema operacional e varre suas unidades de armazenamento à procura de outros sistemas operacionais e kernels para adicionar ao menu de inicialização do GRUB 2.

O comando update-grub deve ser invocado com privilégios administrativos (root). Além disto, ele é executado automaticamente quando os pacotes do GRUB 2 ou o kernel são atualizados

.

Como encontrar o disco em que se encontra instalada configuração do menu do GRUB 2?

Usuários com mais de um sistema operacional instalado em uma máquina, podem querer saber exatamente em que local está instalado o GRUB 2 (o que está sendo usado por todo o sistema).
Obtenha esta informação com o comando grub-probe.
Para saber qual dispositivo está carregando o GRUB, acompanhe as linhas de comando abaixo:

sudo grub-probe -t device /boot/grub/
/dev/sdb1

### se preferir descobrir a identificação UUID do
### dispositivo, use o mesmo comando, da seguinte forma:

sudo grub-probe -t fs_uuid /boot/grub/
d36af294-1e99-4e60-af85-fd9964135dcf

### Se tiver a curiosidade para saber como ele se
### encontra montado, use a seguinte linha de comando:

cat /etc/fstab | grep d36af294-1e99-4e60-af85-fd9964135dcf
UUID=d36af294-1e99-4e60-af85-fd9964135dcf /               btrfs   x-systemd.device-timeout=0,noatime,compress=lzo,commit=0,ssd_spread,autodefrag        0       0

Fácil, não?
grub logo by Karol Kreński
Ao ligar o computador, também é possível determinar, através das informações do menu de inicialização, qual sistema operacional está controlando o boot em um sistema com múltiplos sistemas operacionais.
Por padrão, a primeira entrada do menu exibe uma opção da instalação que está encarregada da execução do GRUB.
Ou seja, se esta entrada contiver “on sdb2”, então é certo que o dispositivo de armazenamento /dev/sdb2 esteja controlando o menu/boot.

O arquivo de configuração grub.cfg

Como já foi dito, você não deve editar diretamente o arquivo do menu do GRUB, /boot/grub/grub.cfg — ele é resultado de vários outros scripts. Cada um deles é responsável por uma sessão específica do menu.

O comando update-grub é uma forma
abreviada de grub-mkconfig -o /boot/grub/grub.cfg.

Caso você queira criar um menu de boot com um nome ou caminho diferente, use o comando completo:

grub-mkconfig -o /boot/novo-caminho/novo-nome.cfg

O arquivo grub.cfg é dividido em diversas seções, definidas por ### BEGIN antes de referir-se a um dos scripts a ser executado.
Para encerrar a referência, é usado um ### END
GRUB 2 arquivo de configuração grub.cfg.

Embora os desenvolvedores desencorajem a edição direta do arquivo grub.cfg, ela é possível.
Tenha o cuidado de fazer a edição depois de já ter rodado o update-grub.
Atualizações de alguns pacotes do GRUB 2, adição ou remoção de kernels no sistema, além do update-grub poderão desfazer as suas alterações manuais.

Conheça os arquivos de script de configuração do GRUB

Você vai encontrar os scripts de configuração (Debian, Ubuntu e derivados) em /etc/grub.d.
Eles são lidos durante a execução do comando update-grub e suas instruções incorporadas ao /boot/grub/grub.cfg.
Os itens do menu, contidos no grub.cfg, são determinados pela ordem em que os scripts são executados.
A ordem é determinada pelos nomes dos arquivos:

  • Arquivos com numeração no início de seus nomes são executados primeiro.
  • Estes arquivos são executados na ordem crescente da numeração. Assim, 10_linux vem antes de 20_memtest, que vem antes de 40_custom.
  • A seguir, são executados os arquivos que começam com caracteres alfabéticos.

Apenas arquivos executáveis podem gerar saída válida para o grub.cfg, durante a execução do update-grub.
A permissão de execução é o estado padrão dos arquivos contidos no diretório /etc/grub.d.
Veja uma lista de arquivos comuns em um sistema Ubuntu:

  • 00_header — estabelece as variáveis de ambiente, tais como localização de arquivos importantes, ajustes da resolução de vídeo e entradas gravadas previamente.
    Ele também importa as configurações contidas em /etc/default/grub.
  • 05_debian_theme — os ajustes neste arquivo se referem à imagem de fundo, cores do texto, cor de destaque da seleção e temas do menu.
    Na ausência de uma imagem splash, este arquivo configura um tema monocromático para a exibição do menu inicial.
  • 10_linux — identifica os kernels presentes no dispositivo root do sistema operacional e cria entradas de menu para cada um.
  • 20_memtest86+ — procura pelo /boot/memtest86+.bin e o inclui, como opção, no menu de boot do GRUB.
    Se você se incomoda com a presença deste item no menu, retire a permissão de execução do arquivo e rode novamente o update-grub:

            sudo chmod -x /etc/grub.d/20_memtest86+
            sudo update-grub
    
  • 30_os-prober — este é o script responsável por buscar outros sistemas operacionais e mostrar o resultado no menu do GRUB.
    A seção deste script, no grub.cfg, tem entradas para Windows, Linux, OSX e Hurd.
    Este script também pode ser desabilitado, com a remoção do bit executável, como no exemplo acima.
    As variáveis, presentes neste arquivo, determinam o formato dos nomes exibidos em /boot/grub/grub.cfg.
    Caso o script encontre outro sistema Linux, ele irá tentar usar os títulos descritos na seção 10_linux, contida em seu grub.cfg.
  • 40_custom — é um template para adicionar entradas personalizadas ao arquivo principal de configuração.
    Faça uma cópia dele e altere-a. Use-o como modelo e não se esqueça de adicionar o bit executável, para que ele possa ser lido e processado pelo update-grub.

Como você já sabe, o nome de cada arquivo determina a ordem em que seu conteúdo será inserido no menu GRUB.
É aconselhável, ao usar numerais como prefixo dos nomes dos scripts, manter o 00_header e o 05_debian_theme sempre antes do primeiro menu personalizado (custom menu).
Como estes arquivos não contém entradas de menu, não interferirão na sua customização.
grub logo by Karol Kreński

Como configurar o GRUB 2

Dentre as várias maneiras de configurar o GRUB, a mais simples (e, normalmente, recomendada) é editar o arquivo /etc/default/grub. Usuários de nível adiantado, podem editar os arquivos localizados em /etc/grub.d.
Não esqueça da boa prática de fazer backup dos arquivos, antes de mexer neles. Se algo der errado, basta copiar o original de volta.
Depois de fazer todas as alterações nos arquivos que julgou necessárias, você deve executar o comando sudo update-grub, para incorporá-las ao menu do GRUB 2.
Use seu editor preferido para alterar o /etc/default/grub:

gksudo gedit /etc/default/grub

Configure GRUB 2 /etc/default/grub file
Ao terminar, salve e consolide as alterações:

sudo update-grub

O arquivo de configuração básica do GRUB contém alguns ajustes simples para o usuário customizar seu menu.
Alguns dos ajustes mais comuns é o do tempo de exibição do menu, o sistema operacional padrão etc.
Conheça algumas delas, abaixo:

  • GRUB_DEFAULT — Determina qual dos itens de menu será o padrão.
    O item primeiro é 0, o segundo é 1 etc.
    Para ter uma noção melhor de quais os itens de menu disponíveis atualmente na sua configuração do GRUB, use o seguinte comando:

    grep "menuentry " /boot/grub/grub.cfg

    A minha listagem ficou assim (com 5 itens):

    	menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-d36af294-1e99-4e60-af85-fd9964135dcf' {
    	menuentry 'Debian GNU/Linux, com o Linux 4.3.0-0.bpo.1-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.3.0-0.bpo.1-amd64-advanced-d36af294-1e99-4e60-af85-fd9964135dcf' {
    	menuentry 'Debian GNU/Linux, with Linux 4.3.0-0.bpo.1-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.3.0-0.bpo.1-amd64-recovery-d36af294-1e99-4e60-af85-fd9964135dcf' {
    	menuentry 'Debian GNU/Linux, com o Linux 3.16.0-4-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-advanced-d36af294-1e99-4e60-af85-fd9964135dcf' {
    	menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-recovery-d36af294-1e99-4e60-af85-fd9964135dcf' {
    

    Se você tiver uma estrutura de submenus, deverá se referir ao subitem desejado, usando os 2 dígitos que representam a ordem em que ele se encontra listado.
    Por exemplo, se o item de menu que você quer que seja padrão estiver dentro da 2a. entrada de menu, na 3a. posição, o valor correto aqui seria: 1>2.
    Este parâmetro aceita mais do que apenas valores numéricos.
    Se você informar o valor ‘saved’, ele irá usar apontar como padrão a opção usada na inicialização anterior. Para isto, é necessário que o GRUB_SAVEDEFAULT tenha o valor ‘true’ (verdadeiro), como veremos mais à frente.
    Ao usar o valor ‘saved’, o sistema vai disponibilizar outras duas ferramentas, no terminal:

    1. grub-reboot — este comando ajusta o item padrão do menu GRUB apenas para o próximo boot.
      No exemplo, abaixo, o comando indica que na próxima inicialização o GRUB deverá usar o 2o. item do menu como padrão:

      sudo grub-reboot 1
    2. grub-set-default — este comando ajusta o item padrão do menu GRUB permanentemente ou até que ele seja modificado.
      Veja um exemplo de uso:

      sudo grub-set-default 3

    Os dois comandos têm o mesmo formato de uso.
    Vamos voltar à lista, acima, com vários menuentry.
    Baseado naqueles resultados, os comandos e os parâmetros descritos até agora, poderiam usar os nomes (entre aspas simples) da lista, em vez de números indicadores de suas ordens.
    Veja alguns exemplos:

    sudo grub-set-default 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode)'
    sudo grub-reboot 'Debian GNU/Linux, com o Linux 3.16.0-4-amd64'
    
    ### O próprio parâmetro GRUB_DEFAULT pode usar um valor alfanumérico:
    
    GRUB_DEFAULT='Debian GNU/Linux, com o Linux 4.3.0-0.bpo.1-amd64'
    
    

    Esta abordagem, contudo, não é recomendada — uma vez que estes nomes podem sofrer alterações no decorrer das atualizações do seu sistema, o que deixaria o seu menu funcionando mal.

  • GRUB_SAVEDEFAULT — Este parâmetro só tem utilidade se o GRUB_DEFAULT estiver ajustado para ‘saved’. Neste caso, o GRUB_SAVEDEFAULT=’true’ armazena a escolha feita pelo usuário como padrão para as próximas inicializações, até que uma escolha diferente seja feita.
  • GRUB_TIMEOUT — Caso o usuário não pressione tecla alguma durante a inicialização do GRUB, ele irá escolher a opção padrão, ou default no tempo especificado aqui.
    O tempo padrão é ‘5’ segundos. Opte por ‘0’, se quiser que o GRUB inicie o item padrão imediatamente, sem qualquer espera.
    Você também pode desabilitar o tempo de espera, ajustando-o para ‘-1’ — neste caso, o GRUB fica aguardando sua escolha indefinidamente.
    Para incrementar, você pode usar o parâmetro GRUB_TIMEOUT_STYLE para exibir ou esconder a contagem do tempo decorrido, antes de exibir o menu. Ele aceita os valores ‘countdown’ e ‘hidden’, para contar ou esconder, respectivamente.
  • GRUB_TIMEOUT_STYLE — Se este parâmetro estiver desativado ou ajustado para ‘menu’, o GRUB irá exibir o menu e aguardar que a contagem do GRUB_TIMEOUT expire.

Há dezenas de outros parâmetros para configurar o menu de boot do GRUB.
Você pode obter mais informações no site https://help.ubuntu.com/community/Grub2/Setup#A.2BAC8-etc.2BAC8-default.2BAC8-grub ou na linha de comando do seu terminal, assim:

info -f grub -n 'Simple configuration'

Como alterar o timeout do GRUB

O timeout é aquele intervalo, em segundos, em que o GRUB fica aguardando você decidir por algumas das suas opções.
A função do GRUB é manter um menu de inicialização do sistema e carregar a escolha do usuário.

GRUB quer dizer GRand Unified Bootloader.
O BootLoader é um software, cuja função é carregar o sistema operacional.
O Debian provê a versão v1 e v2 do GRUB.

GRUB boot loader on Debian
É comum ter mais de uma opção de sistema operacional ou de kernel listados no GRUB.
Quando ocorre uma atualização do seu kernel, o GRUB passa a incluir algumas das versões anteriores no menu, para permitir que você possa sempre iniciar seu sistema — no caso de algum de seus softwares ou parte do seu hardware ser incompatível com a nova versão, por exemplo.
Para mim, o tempo ideal é 0 (zero) — uma vez que, no meu notebook de trabalho só uso um sistema operacional (sempre na versão estável ou stable). Então não preciso fazer escolhas na inicialização do meu sistema.
Se você acredita que precisa de um tempo maior, acompanhe este breve tutorial e veja como alterar o tempo de espera do GRUB de acordo com as suas necessidades.

O arquivo de configuração do GRUB

Neste artigo, vou me basear no sistema operacional Debian GNU/Linux versão 8 “jessie” e no GRUB v2 (padrão na versão atual do Debian).
Você vai precisar de privilégios administrativos para realizar as tarefas, a seguir.

O GRUB passou a ser v2 a partir da versão de número 1.98.

Você vai precisar de privilégios administrativos para realizar as tarefas, a seguir.
Abra o arquivo de configuração e edite a linha em destaque, que contém “GRUB_TIMEOUT”:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""

Altere o valor do timeout em GRUB_TIMEOUT=0 para o valor em segundos que você achar mais adequado.
Grave e feche o arquivo de configuração.
Por último, atualize o GRUB, de acordo com as alterações:

update-grub

Na próxima vez em que você iniciar o sistema, já vai poder ver o efeito da sua alteração.