Inserindo uma imagem no Grub 2

Publicado por Perfil removido em 05/02/2010

[ Hits: 24.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

Instalando o Servidor MySQL no Linux

Configuração do Squid via modo gráfico

Snort atualizado, versão 2.9.1, confira!

Configuração de teclado utilizando as distribuições CentOS, Debian e Ubuntu

Instalando o Opera 9.02 no SuSE 10.1

Leitura recomendada

Nautilus: Mudando a exibição padrão dos itens de uma pasta

Configuração do Ioncube Loader no Centos 64 bit para ambiente CPanel (painel de controle para servidores web hosting)

NFS fácil no Debian Etch

Compartilhando sua conexão 3G entre dois computadores

Instalando o Debian para iniciantes

  

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
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts