Вы находитесь на странице: 1из 8

GRUB 2 - Um help na apresentao e configurao Esse tpico comeou com uma traduo livre e resumida de: Documentao da Comunidade

Ubuntu, GRUB 2. Em 30/05/10 teve uma primeira modificao e sempre que houver necessidade ser atualizado.

Apresentao
O GRUB 2 foi introduzido no Ubuntu a partir da verso 9.10 (Karmic Koala). um software Open Source. Ele descendente do GRUB (GRand Unified Bootloader) Foi completamente reescrito para dar ao usurio flexibilidade e performance significativamente aumentadas. O GRUB anterior passa a ser referido como GRUB legacy. Melhorias As melhorias em relao ao GRUB incluem: - apoio de scripts - mdulo de carregamento dinmico - modo de recuperao - menus personalizados - temas - suporte ao menu grfico - imagens iso de Live CD de boot diretamente do disco rgido - nova estrutura de arquivos de configurao - suporte universal a UUIDs (no apenas o Ubuntu) Diferenas entre GRUB 2 e GRUB legacy - numa instalao limpa do Ubuntu 9.10 sem nenhum outro sistema operacional instalado o Grub 2 inicializar diretamente na tela de login ou Desktop. - pressione a tecla SHIFT para mostrar o menu durante o boot (no GRUB legacy a tecla ESC). - /boot/grub/menu.lst do GRUB legacy foi substituido por /boot/grub/grub.cfg no GRUB 2. - no h "/find boot/grub/stage1" no prompt do grub. Stage 1.5 foi eliminado. - o principal arquivo de menu /boot/grub/grub.cfg do GRUB 2 no para ser editado mesmo pelo "root". - grub.cfg sobrescrito sempre que houver uma atualizao, um kernel for adicionado/removido ou o usurio executar update-grub. - o usurio pode criar um arquivo personalizado em /etc/grub.d/40_custom com suas prprias entradas. Esse arquivo no ser sobrescrito. - o arquivo de configurao principal para alterar as configraoes do menu o /etc/default/grub. - existem vrios arquivos para configurar o menu - /etc/default/grub mencionado acima e todos os arquivos da pasta /etc/grub.d. - mudou a numerao das parties. A primeira partio agora 1 em vez de 0. O primeiro dispositivo no entanto continua 0 (zero). - buscas automticas para outros sistema operacionais como Windows sempre que update-grub executado. - nenhuma mudana na configurao dos arquivos acontecer at que o comando sudo update-grub seja executado. Instalao Para saber a verso instalada no seu sistema, digite no terminal: Cdigo: grub-install -v O GRUB 2 vem instalado por padro no Ubuntu a partir da verso 9.10 (Karmic Koala). O pacote do GRUB 2 o grub-pc. O pacote grub-common tambm ser instalado. grub2 um pacote simulado de transio, pode ser seguramente removido e mostrado no Synaptic como

1/8

no instalado. Upgrade para GRUB 2 A atualizao para GRUB 2 a partir do GRUB comum relativamente fcil. Os desenvolvedores decidiram no usar uma atualizao automtica para o GRUB 2 como padro em instalaes de atualizao. Quem fizer upgrade para o Ubuntu 9.10 pode continuar usando o GRUB legacy se desejar, Para fazer a atualizao para GRUB 2: Upgrade para GRUB 2 Estrutura de arquivos GRUB 2 incorpora um diretrio totalmente revisado e uma hierarquia de arquivos. Hierarquia de arquivos e diretrios 1-Arquivo /boot/grub/grub.cfg o que mais se assemelha ao /boot/grub/menu.lst do GRUB mas diferentemente desse o grub.cfg no se destina a ser editado. Cada seo claramente delimitada com "(### BEGIN)" e a referncia do arquivo na pasta /etc/grub.d a partir da qual a informao foi gerada. grub.cfg atualizado executando o comando sudo update-grub e automaticamente modificado quando h uma atualizao ou instalao/remoo de kernel. Por padro, e sempre que o comando update-grub executado, este arquivo feito "somente leitura". Isto porque a inteno que o arquivo no seja editado manualmente. O usurio tambm ver uma infinidade de arquivos *. mod na pasta /boot/grub. Esses arquivos so da natureza modular do GRUB 2 e so carregados necessariamente pelo GRUB 2. 2-Arquivo /etc/default/grub Esse arquivo pode ser editado e configurado. Detalhes da configurao esto mais adiante em Configurando GRUB 2. 3-Diretrio /etc/grub.d/ Os arquivos nessa pasta so lidos durante a execuo do comando sudo update-grub e suas instrues so incorporadas ao /boot/grub/grub.cfg. Os arquivos default nesta pasta so: - 00_header: suas configuraes normalmente so importadas de informaes do /etc/default/grub e os usurios no precisam mudar esse arquivo. - 05_debian_theme: configura splash image, cor do texto, cor de realce e tema. Na ausncia de splash image esse arquivo configura um tema monocromtico. - 10_hurd: no usada. - 10_linux: localiza os kernels para o sistema operacional em uso. Leva essa informao e estabelece os nomes apresentados no menu para estes kernels. - 20_memtest86+: procura por /boot/memtest86+.bin e o inclue como opo no menu do GRUB 2. - 30_os-prober: procura por Linux e outros sistemas operacionais. Resultados so colocados no grub.cfg baseando-se nos scripts desse arquivo. - 40_custom: para adicionar entradas de menu personalizado que sero inseridas no grub.cfg depois de update-grub.

Configurao
Alteraes na configurao so normalmente feitas em /etc/defaul/grub e nos arquivos da pasta /etc/grub.d. O arquivo /boot/grub/grub.cfg no deve ser editado pelo usurio; mudanas nesse arquivo so feitas pelos scripts de configurao. Arquivo /etc/default/grub o principal arquivo de configurao para alterar as configuraes padro. - GRUB_DEFAULT=0 2/8

Configura a entrada default pela posio. Como no GRUB a primeira entrada zero, a segunda 1, etc, - GRUB_DEFAULT=saved Define a entrada de menu padro com o que foi selecionado anteriormente (a ltima seleo). - GRUB_DEFAULT="xxxx" Neste caso, a localizao no menu no importa. Exemplo: GRUB_DEFAULT="Ubuntu, Linux 2.6.31-9-generic" - GRUB_TIMEOUT= Configura o tempo. - GRUB_HIDDEN_TIMEOUT=0 O menu ficar oculto. # GRUB_HIDDEN_TIMEOUT=0 O menu no ser oculto - GRUB_HIDDEN_TIMEOUT_QUIET=true true = nenhuma contagem regressiva exibida. A tela ficar em branco. false = Um contador ser exibido numa tela em branco durante o tempo do GRUB_HIDDEN_TIMEOUT. - #GRUB_GFXMODE=640x480 Descomente essa linha para mudar a resoluo. Ela fornece resolues suportadas pela placa de vdeo do usurio (640x480, 800x600, 1280x1024, etc). Aplica-se apenas a resoluo do menu de boot. Dica: Definindo a mesma resoluo do sistema operacional o tempo de inicializao diminuir ligeiramente. - #GRUB_DISABLE_LINUX_RECOVERY=true Descomente essa linha se no desejar o Recovery mode no menu. "Recovery mode" para apenas um kernel, fazer uma entrada especial em /etc/grub/40_custom. Diretrio /etc/grub.d/ Entradas personalizadas O GRUB 2 permite criar menus personalizados que sero automaticamente adicionados ao menu principal quando o comando sudo update-grub executado. Um arquivo 40_custom vazio est disponvel para uso ou para servir de exemplo para criar menus personalizados. Aqui esto algumas consideraes para menus personalizados: - o nome do arquivo determina a ordem das selees no menu. Nomes numrico so executados primeiro, seguido por nomes alfabticos - entrada 10_linux aparecer antes de 30_os prober, que ser colocado antes de 40_custom, que ir preceder entrada-personalizada. - todos os arquivos desse diretrio so feitos executveis para gerar entradas para o grub.cfg e os arquivos recm criados devem tambm ser feitos executveis: sudo chmod +x /etc/grub.d/nome do arquivo. - o contedo desse arquivo adiconado ao grub.cfg sem alteraes quando o comando sudo update-grub executado. - ao contrrio do grub.cfg, arquivos personalizados podem ser editados a qualquer momento, no so s leitura, e podem ser propriedade do usurio, se ele desejar. - o contedo no ser alterado, depois de atualizao ou quando novos kernels so adicionados ou removidos. Criando menus personalizados Pode ser editado o arquivo /etc/grub.d/40_custom ou criado um novo. A maneira mais fcil de criar o contedo de um menu personalizado copiar uma entrada do /boot/grub/grub.cfg. Depois de copiado, o contedo do 40_custom ou do novo arquivo criado pode ser adaptado a vontade. De acordo com o arquivo personalizado padro da amostra (etc/grub.d/40_custom/) as duas primeiras linhas de um arquivo personalizado em /etc/grub.d devem ser: 3/8

#!/bin/sh exec tail -n +3 $0 Dicas: 1- Para visualizar que as alteraes esto sendo feitas incluir essa linha ( echo "Adding 40_custom menu entries." >&2 ) entre as duas primeiras. 2- Execute esse comando sudo cat /boot/grub/grub.cfg | grep "menuentry" | cut -d '"' -f 2 para ver no Terminal as entradas do menu. Em todos os exemplos a seguir ser usado o arquivo /etc/grub.d/40_custom. Na prtica podemos usar menus personalizados para, por exemplo: 1- Mudana nos ttulos dos sistemas instalados. As entradas de menu dos ttulos derivam dos arquivos /etc/grub.d/10_linux para o Ubuntu e /etc/grub.d/30_os-prober para Windows e outros Linux. Menus personalizados funcionam como se fossem o menu.lst do GRUB legacy mas preciso retirar o modo executvel dos dois arquivos acima descritos depois de feita a alterao: Cdigo: sudo chmod -x /etc/grub.d/10_linux /etc/grub.d/30_os-prober Sempre que houver atualizao do kernel preciso voltar o modo executvel do arquivo 10_linux (sudo chmod +x /etc/grub.d/10_linux) para que a alterao seja incluida no arquivo /boot/grub/grub.cfg e depois retirar novamente (sudo chmod -x /etc/grub.d/10_linux). Depois de cada alterao: sudo update-grub. A-Alterao nos ttulos do Ubuntu, Windows e outros. I- Determinar os locais onde se encontram instalados os sistemas: Exemplos: Ubuntu 10.04 = (hd0,3) - /dev/sda3 Windows 7 = (hd0,1) - /dev/sda1 Ubuntu 9.10 = (hd0,6) - /dev/sda6 Para encontrar esses locais usar o Terminal (sudo fdisk -l) ou abrir o arquivo /boot/grub/grub.cfg (Locais > Computador > Sistema de arquivos). II- Editar o arquivo /etc/grub.d/40_custom Cdigo: sudo gedit /etc/grub.d/40_custom #!/bin/sh echo "Adding 40_custom menu entries." >&2 exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. Depois de menuentry o que vier entre aspas ser o ttulo ( nos exemplos abaixo: "Ubuntu 10.04", "Windows 7" e "Ubuntu 9.10"). Se quiser manter o Recovery mode para o Linux instalado adicionar outra entrada igual a primeira com ro single em vez de ro quiet splash. #Entrada para o Ubuntu 10.04 em /dev/sda3 menuentry "Ubuntu 10.04" { set root=(hd0,3) 4/8

linux /vmlinuz root=/dev/sda3 ro quiet splash initrd /initrd.img } #Entrada para Windows 7 em /dev/sda1 menuentry "Windows 7" { insmod ntfs set root='(hd0,1)' chainloader +1 } #Entrada para Ubuntu 9.10 em /dev/sda6 menuentry "Ubuntu 9.10" { set root=(hd0,6) linux /vmlinuz root=/dev/sda6 ro quiet splash initrd /initrd.img } Salvar as alteraes. Lembrando: Nas atualizaes de kernel do Ubuntu voltar o modo executvel (sudo chmod +x /etc/grub.d/10_linux) para que a alterao seja incluida no grub.cfg (o mesmo se aplica para o arquivo /etc/grub.d/30_os-prober na troca de Windows ou outro Linux); depois retirar novamente ( sudo chmod -x...); o arquivo 40_custom pode permanecer o mesmo se no houver mudana nas parties. Depois de toda e qualquer alterao preciso executar sudo update-grub. 2- Entradas para boot de imagem ISO do Ubuntu. A- Imagem ISO do Live CD menuentry "10.04 on /dev/sda5" { loopback loop (hd0,5)/ubuntu-10.04-desktop-amd64.iso linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04-desktop-amd64.iso noprompt initrd (loop)/casper/initrd.lz } Essa entrada para o Live CD do Ubuntu 10.04 numa partio NTFS em /dev/sda5. B- Imagem ISO do Alternate CD menuentry "Lucid Altenate on /dev/sdb,1" { loopback loop (hd1,1)/lucid-alternate-amd64.iso

5/8

linux (loop)/install/vmlinuz boot=install iso-scan/filename=/lucid-alternate-amd64.iso noprompt initrd (loop)/install/netboot/ubuntu-installer/amd64/initrd.gz } Essa entrada para o Alternate CD do Ubuntu 10.04 no segundo HD (/dev/sdb,1). Essas entradas so para instalao do Ubuntu direto da imagem ISO no HD. Quem quiser experimentar consulte: Instalao do Ubuntu sem CD ou Pen-Drive. 3- Entrada para outro GRUB 2 menuentry "Grub 2 Ubuntu 10.10" { set root='(hd0,6)' chainloader +1 } Essa entrada para o GRUB 2 do 10.10 (alfa2) instalado em sda6. Consideraes sobre arquivos personalizados e edio do arquivo /boot/grub/grub.cfg. O arquivo grub.cfg pode tambm ser editado e modificado desde que seja dada permisso para isso. Para poder modificar: sudo chmod +w /boot/grub/grub.cfg. Para editar: sudo gedit /boot/grub/grub.cfg. Seria simples como mudar o menu.lst do GRUB legacy se essa permisso fosse estvel e o grub.cfg no fosse sobrescrito mas no isso que acontece. Por padro, e sempre que o comando update-grub executado, o arquivo grub.cfg feito "somente leitura" e sobrescrito sempre que houver uma atualizao, um kernel for adicionado/removido ou o usurio executar update-grub. D menos trabalho criar um arquivo personalizado que, a no ser que haja interveno do usurio, no ser sobrescrito e ser sempre executvel. O importante lembrar que o arquivo 10_linux precisa voltar a ser executvel nas atualizaes do Ubuntu. Outras alteraes do menu I- Retirando Kernel(s) antigo(s) No Synaptic em Procurar digite o kernel, ex.: 2.6.31-14-generic. Marque para remover linux-headers e linux-image desse kernel. II- Retirando Recovery mode Cdigo: sudo gedit /etc/default/grub Descomente a linha abaixo: GRUB_DISABLE_LINUX_RECOVERY="true" III- Retirando Memtest86+ Cdigo: sudo chmod -x /etc/grub.d/20_memtest86+ 6/8

Splash Images GRUB 2 Splash Images Instale o pacote padro GRUB 2 splash images: Cdigo:
sudo apt-get install grub2-splashimages

. A localizao padro para essas imagens /usr/share/images/grub. Configurando splash images As splash images do GRUB 2 so controladas pelo arquivo /etc/grub.d/05_debian_theme Edite esse arquivo como root: Cdigo: sudo gedit /etc/grub.d/05_debian_theme Para o Ubuntu 9.10, encontre a linha abaixo: for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga} ; do Usando a imagem Lake_mapourika_NZ.tga de /usr/share/images/grub a configurao ficou assim: for i in {/boot/grub,/usr/share/images/grub}/Lake_mapourika_NZ.{png,tga} ; do Para o Ubuntu 10.04 faa a alerao nessa linha: WALLPAPER="/usr/share/images/grub/Lake_mapourika_NZ.tga" Obs.: a imagem escolhida pode estar em qualquer diretrio; o importante colocar o caminho certo. Depois da alterao executar sudo update-grub. Configurando a cor do texto Estas linhas esto contidas em /etc/grub.d/05_debian_theme. Ubuntu 9.10: if background_image `make_system_path_relative_to_its_root ${bg}` ; then set color_normal=black/black (mudando para white/black = cor branca do texto) set color_highlight=magenta/black (blue/black = cor azul da entrada de menu default) else Ubuntu 10.04: WALLPAPER="/usr/share/images/grub/Lake_mapourika_NZ.tga" COLOR_NORMAL="black/black" (mudando para white/black = cor branca do texto) COLOR_HIGHLIGHT="magenta/black" (blue/black = cor azul da entrada de menu default) Criando CD de boot do GRUB 2 1- CD de Boot simples do GRUB 2 Com o Ubuntu funcionando normal abra um Terminal e digite: Cdigo:

7/8

grub-mkrescue grub2.iso

(para o 9.10) Cdigo:


grub-mkrescue --output=grub2.iso

(para o 10.04) Pode mudar grub2.iso por outro (cdboot.iso, por exemplo). A imagem ISO gerada vai para a sua pasta pessoal (Locais > Pasta pessoal). Grave a imagem iso em CD. 2- CD multiboot do GRUB 2 Com o Ubuntu inicializado e funcionando normal entre no Terminal e digite: Cdigo: sudo apt-get install grub-rescue-pc A imagem ISO vai para /usr/lib/grub-rescue. Grave a imagem ISO em CD. A principal utilidade dar o boot em caso de perda do GRUB 2 e para sua recuperao. Detalhes no tpico: Mil e uma maneiras de recuperar GRUB 2 e GRUB. Fontes consultadas: https://help.ubuntu.com/community/Grub2 http://ubuntuforums.org/showthread.php?t=1195275 http://ubuntuforums.org/showthread.php?t=1287602 http://ubuntuforums.org/showthread.php?t=1302743

8/8

Вам также может понравиться