Substitua os identificadores de partição baseados em nome de dispositivo por UUID s no arquivo de configuração do GRUB para evitar falhas de inicialização após operações de disco, como importações de imagem.
Contexto
Nomes de dispositivo como /dev/vda1 podem mudar após operações como importação de imagens. Se o nome do dispositivo na configuração do GRUB não apontar mais para a partição correta, o kernel não carregará o sistema de arquivos e a instância não iniciará.
Procedimento
Configure o GRUB para identificar a partição raiz por UUID e garantir uma inicialização confiável.
A modificação da configuração do GRUB é uma operação de alto risco. Alterações incorretas podem impedir a inicialização da instância. Antes de prosseguir, crie um snapshot da instância para garantir a segurança dos dados.
Verifique a versão do GRUB
O GRUB possui duas versões principais: GRUB2 e GRUB Legacy. O GRUB Legacy recebe apenas correções de bugs. Verifique a versão do GRUB conforme descrito abaixo.
-
Identifique a versão do
GRUB:GRUB2
Verifique a estrutura do diretório de configuração do
GRUB:sudo ls /etc/grub.d/Se a saída incluir arquivos como
00_headere40_custom, você está usando oGRUB2. Exemplo de saída:00_header 05_debian_theme 10_linux 20_linux_xen 30_os-prober 30_uefi-firmware 40_custom 41_customGRUB Legacy
Verifique o conteúdo do diretório
/boot/grub/:sudo ls /boot/grub/Se o diretório
/boot/grubcontiver um arquivomenu.lst, você está usando oGRUB Legacy.
Localize o arquivo de configuração
O GRUB2 e o GRUB Legacy usam caminhos diferentes para o arquivo de configuração.
GRUB2:/boot/grub/grub.cfgou/boot/grub2/grub.cfg.GRUB Legacy:/boot/grub/menu.lstou/boot/grub/grub.conf.
Acesse o diretório /boot para localizar o arquivo de configuração do GRUB.
Obtenha os UUIDs das partições de disco
Obtenha o UUID de cada partição de disco para uso no arquivo de configuração do GRUB.
-
Visualize os UUIDs das partições de disco:
sudo blkidExemplo de saída:
/dev/vda1: LABEL="/" UUID="e7e8xxxx-xxxx-xxxx-xxxx-xxxxb9263645" TYPE="ext4" PARTUUID="0efbxxxx-01"Neste exemplo, o
UUIDde/dev/vda1ée7e8xxxx-xxxx-xxxx-xxxx-xxxxb9263645.
Modifique o arquivo de configuração
-
Faça backup do arquivo de configuração atual do
GRUB:sudo cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bakImportantePara restaurar o arquivo de configuração do
GRUB, execute:sudo cp -f /boot/grub2/grub.cfg.bak /boot/grub2/grub.cfg -
Abra o arquivo de configuração do
GRUB:sudo vim /boot/grub2/grub.cfg -
Pressione
ipara insira no modo de inserção. Substitua todas as ocorrências deroot=/dev/vda1porroot=UUID=e7e8xxxx-xxxx-xxxx-xxxx-xxxxb9263645.linux /boot/vmlinuz-3.16.0-4-amd64 root=/dev/vda1 ro single debian-installer=en_US net.ifnames=0 vga=792 console=tty0 console=ttyS0,115200n8Linha modificada:
linux /boot/vmlinuz-3.16.0-4-amd64 root=UUID=e7e8xxxx-xxxx-xxxx-xxxx-xxxxb9263645 ro single debian-installer=en_US net.ifnames=0 vga=792 console=tty0 console=ttyS0,115200n8 Pressione
Escpara sair do modo de inserção e digite:wqpara salve e sair.-
(Opcional) Verifique se todos os identificadores de partição de disco no
GRUBagora usamUUID:sudo cat /boot/grub2/grub.cfg
Referências
Para configurar o arquivo fstab e montar automaticamente um disco de dados, consulte Montagem automática de disco de dados usando UUID.