Se já aconteceu com você, não surte! É realmente muito fácil de resolver. O carregador de inicialização Grub 2 possui ferramentas especiais para digitalizar os discos rígidos instalados no seu computador para sistemas operacionais inicializáveis instalados em seus discos rígidos.
Neste artigo, mostrarei como resolver os problemas declarados acima e usar GRUB2-MKCONFIG ferramenta para resolvê -lo. Vou usar o Debian 9 Stretch para a demonstração, mas deve funcionar em qualquer distribuição moderna do Linux com o Grub 2 instalado. Vamos começar.
GRUB2-MKCONFIG é uma ferramenta realmente simples. Tudo o que faz é escanear os discos rígidos do seu computador em busca de sistemas operacionais de inicialização instalada (incluindo Window, Mac OS e quaisquer distribuições Linux) e gera um arquivo de configuração Grub 2. É isso.
Diferença entre GRUB2-MKCONFIG e GRUB-MKCONFIG:
Embora o Grub 2 esteja instalado em seu computador, o GRUB2-MKCONFIG O comando pode não estar disponível em sua distribuição Linux favorita. Mas o GRUB-MKCONFIG O comando pode estar disponível em sua distribuição Linux. Não há diferença entre GRUB-MKCONFIG e GRUB2-MKCONFIG Se o Grub 2 estiver instalado.
Observe que, se você tiver o Legacy instalado, então GRUB-MKCONFIG e GRUB2-MKCONFIG Os comandos não serão os mesmos.
Você pode verificar qual versão do GRUB está instalada em sua máquina Linux com o seguinte comando:
$ sudo grub2-mkconfig --version
Ou
$ sudo grub-mkconfig --versões
Como você pode ver, na minha máquina de trecer 9 Debian 9, Grub 2.02 está instalado. Eu também não tenho GRUB2-MKCONFIG Comando disponível no Debian 9 Stretch. É renomeado para GRUB-MKCONFIG. Então GRUB-MKCONFIG e GRUB2-MKCONFIG é o mesmo no meu caso.
Usando GRUB2-MKCONFIG:
O GRUB2-MKCONFIG ou o GRUB-MKCONFIG O comando tem apenas uma opção importante. O -o ou formato longo o -saída opção. É usado para dizer ao Grub 2 onde o arquivo de configuração do Grub gerado deve ser salvo.
Por padrão, GRUB2-MKCONFIG ou o GRUB-MKCONFIG O comando imprime o arquivo de configuração gerado para Stdout, Qual é o terminal do seu sistema operacional Linux.
Se é isso que você deseja, então corra GRUB2-MKCONFIG ou o GRUB-MKCONFIG Comando o seguinte:
$ sudo grub2-mkconfig
Ou
$ sudo grub-mkconfig
Como você pode ver, a configuração gerada Grub 2 é impressa na tela do terminal. Isso pode não ser muito útil.
Se desejar, você pode exportar a configuração gerada Grub 2 para um arquivo. O formato do comando é dado abaixo:
$ sudo grub2 -mkconfig -o file_path
Ou
$ sudo grub -mkconfig -o file_path
Se você preferir o formato longo, então
$ sudo grub2-mkconfig-output file_path
Ou
$ sudo grub-mkconfig-output file_path
OBSERVAÇÃO: Aqui, CAMINHO DE ARQUIVO é o caminho para o arquivo em que você deseja que a configuração gerada Grub 2 seja salva.
Digamos, você deseja salvar a configuração gerada Grub 2 em um arquivo grub.cfg no seu usuário LAR diretório.
Para fazer isso, execute o seguinte comando:
$ sudo grub2 -mkconfig -o ~/grub.cfg
Ou
$ sudo grub -mkconfig -o ~/grub.cfg
Como você pode ver, um novo arquivo de configuração Grub 2 é gerado.
Como você pode ver, grub.cfg O arquivo é gerado no meu usuário LAR diretório.
Como você pode ver, o conteúdo do gerado grub.cfg O arquivo é o mesmo que anteriormente, quando imprimi a saída no terminal.
Atualizando o arquivo de configuração do Grub 2 (BIOS):
Se você estiver usando placas -mãe antigas baseadas em BIOS, o arquivo de configuração do carregador de inicialização Grub 2 deve estar no /bota/grub/grub.cfg arquivo como você pode ver na captura de tela abaixo.
OBSERVAÇÃO: Em algumas distribuições Linux, como o CentOS 7 ou Rhel 7, o arquivo de configuração Grub 2 pode ser encontrado em /bota/grub2/grub.cfg. Se for o caso, certifique -se de ajustar o caminho antes de executar o GRUB2-MKCONFIG ou GRUB-MKCONFIG comando no artigo abaixo.
Para atualizar o arquivo de configuração do Grub 2 na instalação do Linux baseada no BIOS, execute o seguinte comando:
$ sudo grub2 -mkconfig -o/boot/grub/grub.cfg
Ou
$ sudo grub -mkconfig -o/boot/grub/grub.cfg
O arquivo de configuração Grub 2 deve ser atualizado.
Se você está esperando alguma alteração, reinicie o computador com o seguinte comando:
$ sudo reiniciar
Você deve ver o que está esperando no menu Grub logo após pressionar o botão liga / desliga.
Atualizando o arquivo de configuração do Grub 2 (UEFI):
Nas placas -mãe baseadas na UEFI, atualizar a configuração do Grub 2 é um pouco mais complicado.
Em instalações de Linux baseadas em EFI, o arquivo de configuração Grub 2 está no/boot/efi/efi/<Your_os>/grub.cfg
Aqui, é o nome do diretório onde o grub.cfg está localizado. O nome do diretório será diferente para cada distribuição do Linux. O truque é determinar o nome do diretório que está sendo usado no tempo de inicialização. Se você não brinca com diferentes distribuição do Linux, é mais altas que haverá apenas um diretório. Caso contrário, haverá muitos diretórios dos quais você terá para determinar o ativo.
Execute o seguinte comando para listar todos os diretórios disponíveis no Diretório/boot/efi/efi:
$ sudo ls/boot/efi/efi
Como você pode ver, na minha máquina CentOS 7, eu tenho apenas um diretório CentOS/
Agora, para atualizar o arquivo de configuração Grub 2, execute o seguinte comando:
$ sudo grub2 -mkconfig -o/boot/efi/efi/centOS/grub.cfg
Ou
$ sudo grub -mkconfig -o/boot/efi/efi/centOS/grub.cfg
O arquivo de configuração Grub 2 deve ser atualizado.
Agora reinicie seu computador e você verá as entradas esperadas no menu Grub.
Suponha que você atualizou o kernel da sua distribuição favorita do Linux. Após a instalação, você verificou a versão do seu kernel e fica surpreso por não ter sido atualizado! Oh não!
Bem, não fique chateado. O GRUB2-MKCONFIG ou o GRUB-MKCONFIG O comando também pode escanear o /bota diretório para verificar os kernels linux instalados e gerar uma entrada de bota Grub 2 para cada um deles.
Os comandos e os processos são os mesmos que dados no Atualizando o arquivo de configuração do Grub 2 (BIOS) e Atualizando o Arquivo de Configuração do Grub 2 (UEFI) Seções deste artigo acima.
Então é assim que você usa GRUB2-MKCONFIG ou GRUB-MKCONFIG comando para resolver muitos problemas de inicialização no Linux. Obrigado por ler este artigo.