Editando diretamente o arquivo controlador do GRUB 2

Publicado por Alberto Federman Neto. em 13/03/2013

[ Hits: 57.666 ]

Blog: https://ciencialivre.blog/

 


Editando diretamente o arquivo controlador do GRUB 2



Introdução

No GRUB 1, Grub Legacy, você podia facilmente editar o arquivo /boot/grub/menu.list e fazer as alterações necessárias:
No GRUB 2, porém, é recomendado não editar o arquivo de controle: /boot/grub/grub.cfg, mas você pode fazê-lo, se tiver CUIDADO:
Mas em alguns casos ele estará, inclusive, protegido ou setado com permissões para que não seja editável, mesmo como Root. Se você tentar editá-lo (como dito acima) e salvar as modificações, as mesmas não serão salvas e o arquivo voltará ao original.

O arquivo grub.cfg é complicado na sintaxe e muito delicado, por isso não se recomenda editá-lo diretamente. Para fazer alterações no GRUB 2, o procedimento recomendado é editar os arquivos acessórios de configuração, por exemplo, da pasta /etc/grub.d ou da /etc/default/grub e depois gerar um novo GRUB (update-grub) e/ou apenas um novo arquivo grub.cfg (grub-mkconfig). Alguns exemplos nos Links a seguir:

Editando diretamente

Porém, tomando bastante CUIDADO, é possível desproteger e editar o /boot/grub/grub.cfg diretamente. Bom, como o arquivo é essencial, primeira coisa que devemos fazer é copiá-lo, para protegê-lo. Execute estes comandos:

cd /
$ cd boot/grub
$ sudo cp grub.cfg grub.cfg.original


Caso qualquer coisa indesejável aconteça você terá o arquivo original para restaurar. Assim:

cd /
$ cd boot/grub
$ sudo rm -f grub.cfg
$ sudo mv grub.cfg, original grub.cfg


Copiado, vamos agora desproteger o arquivo e modificar as permissões, tornando-o editável:

sudo chmod -v +w grub.cfg

Agora o arquivo é editável. É com você, por sua conta e risco.

Edite o Arquivo com um editor de textos em modo root e faça as modificações desejadas ou necessárias. Se for fazer vários testes, recomendo que faça uma cópia de segurança do arquivo editado:

sudo kate grub.cfg
sudo cp grub.cfg grub.cfg.modificado

Obs.: ao invés kate, pode usar kwrite, nano, gedit etc... seu editor favorito.

Se for modificar os cheat-codes ou os parâmetros de Kernel, lembro que o Kernel de Boot principal são as linhas que costumam ficar imediatamente abaixo do seguinte trecho:


### BEGIN /etc/grub.d/10_linux ###

Outras dicas deste autor

Sabayon Linux com MATE ou KDE: Botão de Desligar sumiu [Resolvido]

GkrellM - Um Monitor Completo

Scripts adduser (para criar usuários) em distros não Debian - Para iniciantes

Sabayon perdeu o Grub [Resolvido]

Atualização controlada de Sabayon Linux

Leitura recomendada

Adicionando mais núcleos ao Conky do CrunchBang

MATE Desktop no Ubuntu 13.04

Wireless RTL8187SE no Fedora 15

Atualizando Fedora 21 para 22 sem usar FedUp, Yumex ou Fedy

Banco do Brasil no Ubuntu 14.04 LTS - Permissão de acesso

  

Comentários
[1] Comentário enviado por sergelli em 30/03/2013 - 06:16h

Acho, que em alguns sistemas, o diretótio /boot/grub não existe.
No seu lugar, o que existe é /boot/grub2. Assim, fica fácil identificar que NÃO estamos usando o gub1

[2] Comentário enviado por mrvinicius em 19/12/2013 - 13:20h

ola amigo no meu aqui não funcionou ja tentei e instalei dois editores e nada meu sistema operacional e o backtrack5 r3 tava dando erro na inicialização do modo gráfico consegui resolver e instalei mas agora na inicialização deu o mesmo problema e não consigo editar o grub.cfg por favor me ajude vlws!!!

[3] Comentário enviado por albfneto em 23/10/2014 - 19:50h

ATUALIZAÇÃO E COMPLEMENTOS:

24 de Abril de 2018.

Sim, o arquivo /boot/grub/grub.cfg pode estar em /boot/grub2, em algumas distros, como OpenSUSE, por exermplo.

Esta é outra Dica, onde é usada a edição direta do Grub2:

http://www.vivaolinux.com.br/dica/GRUB-2-Ubuntu-1404-Editando-nome-sistema-default-e-tempo-de-boot

DETALHES PARA EDIÇÃO:

Por exemplo, se você usa distros Rolling Release (que trocam o kernel automático) ou usa muitas distros, seu GRUB pode ficar "bagunçado".... Por exemplo os UUIDs não são mais achados pelo GRUB
Estas edições diretas de grub.cfg, podem ajudar a solucionar, se feitas com cuidado...

Exemplo.... suponha vc tenha um sistema, hipotético onde a swap é sda2, a Raiz, /, é sda3 e a /home é sda4.

Edite o arquivo /boot/grub/grub.cfg remova os UUIDs e coloque isto na linha do kernel:

resume=/dev/sda2 root=/dev/sda3 home=/dev/sda4
OU
real_resume=/dev/sda2 real_root=/dev/sda3 real_home=/dev/sda4

Salve o arquivo... agora, lembre-se também de editar o arquivo /etc/fstab. Nele, comente as linhas com UUIDs e deixe assim.

/dev/sdb2 swap swap sw 0 0
/dev/sdb3 / ext4 defaults 1 1
/dev/sdb4 /home ext4 defaults 1 2

Mais uma Dica: Suponha, você teve os GRUBs bagunçados, eles não funcionam, mas os grub.cfg de cada distro estão intactos.

Edite o /boot/grub/grub.cfg principal (o que funciona) e coloque as linhas de boot, de cada um de seus Linux, entre as linhas que tem a string "40", assim:

### BEGIN /etc/grub.d/40_custom ###
# 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.
COLOQUE AS LINHAS DE CADA BOOT< DE CADA UM DE SEUS LINUX< AQUI.
### END /etc/grub.d/40_custom ###

Essas técnicas que descrevo nesta Dica, insisto, precisam ser feitas com cuidado, porque se errar, você pode perder o boot,ou a montagem de alguma partição.

Elas se baseiam em configurações clássicas, do tempo do "Dinossauro" UNIX.

Espero ter ajudado, até a próxima.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts