Inserindo uma imagem no Grub 2

Publicado por Perfil removido em 05/02/2010

[ Hits: 25.626 ]

 


Inserindo uma imagem no Grub 2



O Grub (Grand Unified Bootloader) é um dos gerenciadores de boot do sistema operacional GNU/Linux que também é capaz de carregar outros sistemas operacionais, livres e/ou proprietários.

Recentemente ao instalar o Kubuntu 9.10 tive uma surpresa ao tentar configurar o Grub, fui a /boot/grub/menu.lst e... Cadê o menu.lst?

Pesquisando um pouco vi algo a respeito e resolvi compartilhar. Vou falar por hora e por ser meu primeiro post aqui no VOL, simplesmente como inserir uma imagem no fundo do Grub 2.

Para quem usa apenas o Linux e o Grub fica praticamente "invisível", este texto pode não ser útil, mas há quem precise de outros sistemas operacionais e deixar o Grub 2 com um aspecto mais atraente é essencial.

A primeira coisa a fazer é instalar o pacote padrão Grub 2 splash images. Supondo que você use uma distro Debian-like, faça assim:

sudo apt-get install grub2-splashimages

Feito isso vamos editar o arquivo.

O arquivo que vai te interessar neste caso é o /etc/grub.d/05_debian_theme.

Abra-o com seu editor pessoal. Lembre-se tem que ser root para editá-lo:

sudo vim /etc/grub.d/05_debian_theme

Procure a linha:

for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga} ; do

Dentro do primeiro par de chaves {} temos o endereço onde o Grub vai procurar a imagem para usar. Quando você baixou o pacote grub2-splashimages, algumas imagens foram para /usr/share/images/grub, todas com extensão .tga. É importante que você coloque este endereço aí dentro desta primeira chave, que ficará assim:

for i in {/boot/grub,/usr/share/images/desktop-base,/usr/share/images/grub}/moreblue-orbit-grub.{png,tga} ; do

Tive algumas experiências frustrantes ao tentar inserir um novo endereço de uma imagem, por exemplo /home/osiel/imagem, dentro desta chave. Depois de algumas tentativas infrutíferas preferi copiar a imagem para dentro do diretório /usr/share/images/grub.

O parâmetro moreblue-orbit-grub refere-se ao nome da imagem que você vai usar. Substitua-o pelo nome da imagem desejada.

Em {png,tga} definimos as extensões, também não tive sucesso colocando imagens .jpg dentro da pasta e inserindo a extensão aí, ex. {png,tga,jpg}. Isso não funcionou para mim.

Resolvi então converter a imagem:

convert imagem.jpg imagem.tga

Antigamente no Grub Legacy você deveria converter a imagem, reduzir o tamanho, violentar as cores, já que só tinha direito a usar 14 cores.

Aqui não precisei fazer nada disso, apenas para facilitar procurei uma imagem compatível com a resolução do meu monitor e pronto. Isso mesmo, nada de 640x480, eu estou usando 1920x1080 e a imagem ficou perfeita, sem redução de qualidade.

Depois de feitas as alterações é imprescindível que você execute o comando:

sudo update-grub

Que fará com suas alterações sejam gravadas no arquivo /boot/grub/grub.cfg.

Não altere o arquivo /boot/grub/grub.cfg, ele será atualizado toda vez que você executar o comando acima descrito.

Outras dicas deste autor

Debian Squeeze - Instalando driver Broadcom wl.ko

Instalando o emesene 1.6.2

Configurando opções avançadas do KDE

Lendo sistemas de arquivo Linux no Windows

Iniciando programas rapidamente no Gnome, KDE ou XFCE

Leitura recomendada

Derrubando Linux em 10 segundos

Instalação de uma HP Deskjet 3535 no Slackware 10.2

Pacotes base para compilações no Conectiva

Declaração do Imposto 2013 (.deb)

Sensible-browser, x-www-browser e afins (sensible-*)

  

Comentários
[1] Comentário enviado por lucasdona em 30/08/2010 - 17:27h

Boa tarde, estou precisando de uma ajuda, até consegui instalar tudo certo, configurar, mas a imagem que eu escolhi só aparece no inicio do boot, depois que sai da tela do grub a imagem some e aparece as linhas de execução normal iniciando o sistema.
Teria como a imagem ficar até entrar no sistema/modo gráfico?
Abraços, Lucas.

[2] Comentário enviado por fredsobrito em 12/10/2010 - 03:05h

No Ubuntu 10.04, o Grub2 faz referência à um arquivo que não existe para ser sua imagem padrão. Para facilitar a vida de quem não quer mexer na pasta /etc/grub.d eu criei o seguinte script que converte qualquer imagem no moreblue-orbit-grub.png. A imagem que será usada.

Eu o postei no "scripts" do VOL mas estão demorando a liberá-lo. Então o coloco aqui, à disposição da galera.

Para usá-lo, basta copiar o texto abaixo e colá-lo no seu editor de textos favorito (tipo gedit). Salve o arquivo na pasta onde está a imagem a ser usada. Clique no mesmo com o botão direito vá em Propriedades > Permissões e marque "Permitir execução..." Feche a janela. Agora dê um duplo clique no arquivo e selecione "Executar em terminal". Depois é só digitar no terminal o nome da imagem a ser usada.

#!/bin/sh
#Criado por Frederico Soares Brito
echo "Qual arquivo de imagem será usado?(não se esqueça da extensão do arquivo)"
read wallpaper
test -f $wallpaper && sudo rm /usr/share/images/desktop-base/moreblue-orbit-grub.png && echo "Imagem antiga será substituida" && sudo convert $wallpaper /usr/share/images/desktop-base/moreblue-orbit-grub.png && sudo update-grub
test -f $wallpaper && dialog --msgbox "Aparentemente tudo correu bem e a imagem $wallpaper está no seu Grub!" 10 50 && exit 0
dialog --msgbox "Aparentemente houve um erro. Certifique-se de que escolheu um arquivo de imagem para usar" 10 50

#Fazendo jus a quem serviu de inspiração:
#http://www.vivaolinux.com.br/dica/Como-configurar-o-Grub2-no-Ubuntu-9.10/
#http://www.vivaolinux.com.br/dica/Inserindo-uma-imagem-no-Grub-2/



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts