Inserindo uma imagem no Grub 2

Publicado por Perfil removido em 05/02/2010

[ Hits: 25.320 ]

 


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

Vídeo IBM - Evolução do Linux

Áudio de gravador WAV para MP3 no Linux

gFTP x FileZilla

Placa de rede ISA ne2000 no Slackware 10.2

GPhoto2 - Integre sua câmera digital no Linux

Leitura recomendada

MintMenu no Fedora 14

Restringindo permissões nas configurações de suas estações Windows XP

Script gerador de código fonte em ANSI C

WorkShop: Instalação do Red Hat Linux

Criando teclas de atalho no Ubuntu 9.04

  

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