Ferramentas do usuário

Ferramentas do site


proxmox:corrigir_grub_upgrade

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

proxmox:corrigir_grub_upgrade [2026/05/12 10:39] – criada adminproxmox:corrigir_grub_upgrade [2026/05/12 10:41] (atual) – admin
Linha 1: Linha 1:
-====== POP - Recuperação de Boot EFI/GRUB no Proxmox VE e Proxmox Backup Server ======+====== POP - Diagnóstico e Recuperação de Boot EFI/GRUB no Proxmox VE e Proxmox Backup Server ======
  
 ===== Objetivo ===== ===== Objetivo =====
  
-Este procedimento operacional padrão (POP) tem como objetivo auxiliar na identificação e recuperação de falhas relacionadas ao boot EFI/GRUB em ambientes:+Este POP tem como objetivo auxiliar administradores na: 
 + 
 +* Identificação de falhas de boot 
 +* Descoberta da estrutura de discos do ambiente 
 +* Identificação de partições EFI 
 +* Identificação de RAID/ZFS 
 +* Descoberta do local do sistema operacional 
 +* Recuperação do GRUB/EFI 
 +* Recuperação pós-upgrade 
 +* Recuperação após falhas de boot 
 + 
 +Compatível com:
  
 * Proxmox VE * Proxmox VE
 * Proxmox Backup Server * Proxmox Backup Server
-* Debian com EFI +* Debian 
-* Ambientes RAID1 (mdadm) +* RAID mdadm 
-* Ambientes ZFS+* ZFS 
 +* EXT4 
 +* UEFI
  
-Problemas de boot podem ocorrer após:+===== Cenários Comuns =====
  
-* Atualizações de kernel +* Sistema não sobe após upgrade
-* Atualizações do Proxmox +
-* Falhas de energia +
-* Corrupção de EFI +
-* Falha de discos +
-* Atualizações incompletas +
-* Problemas em initramfs +
-* Inconsistências no GRUB +
- +
-===== Sintomas Comuns ===== +
- +
-* Sistema não inicia após upgrade +
-* Tela preta após BIOS/UEFI +
-* Mensagem ''grub rescue>''+
 * Kernel panic * Kernel panic
-* Boot loop +* GRUB corrompido 
-* Sistema entra apenas em rescue mode +* Loop de boot 
-* Erro de EFI/bootloader +* Boot travado 
-* Falha após atualização do Proxmox+* "No bootable device" 
 +* Erro de EFI 
 +* Sistema inicia apenas em rescue 
 +* Ambiente inacessível após atualização do Proxmox
  
 ===== Pré-requisitos ===== ===== Pré-requisitos =====
  
-* Acesso via Rescue System / Live Linux+* Acesso ao Rescue System ou Live Linux
 * Acesso root * Acesso root
-* Conhecimento básico de Linux+* Conhecimento básico Linux
 * Backup recomendado * Backup recomendado
  
 ===== 1. Identificando Estrutura do Ambiente ===== ===== 1. Identificando Estrutura do Ambiente =====
  
-==== Verificar discos e partições ====+===== Listar discos =====
  
 <code bash> <code bash>
Linha 48: Linha 51:
 </code> </code>
  
-==== Identificar UUIDs e tipos de partição ====+===== Exemplo ===== 
 + 
 +<code> 
 +NAME         SIZE TYPE 
 +sda          5.5T disk 
 +sdb          5.5T disk 
 +sdc          5.5T disk 
 +sdd          5.5T disk 
 +nvme0n1      476G disk 
 +nvme1n1      476G disk 
 +md2            1G raid1 
 +md3          450G raid1 
 +</code> 
 + 
 +===== Como interpretar ===== 
 + 
 +^ Estrutura ^ Interpretação ^ 
 +| HDDs grandes | Geralmente storage ZFS | 
 +| SSD/NVMe menores | Geralmente sistema operacional | 
 +| mdX | RAID mdadm | 
 +| zfs_member | Disco pertencente ao pool ZFS | 
 +| vfat | Partição EFI | 
 +| ext4 | Sistema Linux | 
 + 
 +===== Identificar partições =====
  
 <code bash> <code bash>
Linha 54: Linha 81:
 </code> </code>
  
-==== Validar arrays RAID ====+===== Exemplos Importantes ===== 
 + 
 +==== EFI ===== 
 + 
 +<code> 
 +TYPE="vfat" 
 +LABEL="EFI_SYSPART" 
 +</code> 
 + 
 +==== RAID ===== 
 + 
 +<code> 
 +TYPE="linux_raid_member" 
 +</code> 
 + 
 +==== ROOT ===== 
 + 
 +<code> 
 +LABEL="root" 
 +TYPE="ext4" 
 +</code> 
 + 
 +==== BOOT ===== 
 + 
 +<code> 
 +LABEL="boot" 
 +TYPE="ext4" 
 +</code> 
 + 
 +==== ZFS ===== 
 + 
 +<code> 
 +TYPE="zfs_member" 
 +</code> 
 + 
 +===== 2. Descobrindo Onde Está o Sistema Operacional ===== 
 + 
 +===== Estrutura mais comum em RAID1 ===== 
 + 
 +^ Partição ^ Função ^ 
 +| /dev/md3 | Root do sistema | 
 +| /dev/md2 | /boot | 
 +| /dev/nvme0n1p1 | EFI principal | 
 +| /dev/nvme1n1p1 | EFI secundária | 
 + 
 +===== Identificando ROOT ===== 
 + 
 +Normalmente: 
 + 
 +<code> 
 +LABEL="root" 
 +TYPE="ext4" 
 +</code> 
 + 
 +===== Identificando BOOT ===== 
 + 
 +Normalmente: 
 + 
 +<code> 
 +LABEL="boot" 
 +TYPE="ext4" 
 +</code> 
 + 
 +===== Identificando EFI ===== 
 + 
 +Normalmente: 
 + 
 +<code> 
 +TYPE="vfat" 
 +</code> 
 + 
 +===== Identificando Storage ZFS ===== 
 + 
 +Exemplo: 
 + 
 +<code> 
 +/dev/sda1 
 +/dev/sdb1 
 +/dev/sdc1 
 +/dev/sdd1 
 +</code> 
 + 
 +===== 3. Validando RAID ===== 
 + 
 +===== Verificar status =====
  
 <code bash> <code bash>
Linha 60: Linha 171:
 </code> </code>
  
-==== Verificar pools ZFS ====+===== Resultado esperado ===== 
 + 
 +<code> 
 +md3 : active raid1 
 +md2 : active raid1 
 +</code> 
 + 
 +===== Ver detalhes ===== 
 + 
 +<code bash> 
 +mdadm --detail --scan 
 +</code> 
 + 
 +===== Ver array específico ===== 
 + 
 +<code bash> 
 +mdadm --detail /dev/md3 
 +</code> 
 + 
 +===== Se RAID não subir ===== 
 + 
 +<code bash> 
 +mdadm --assemble --scan 
 +</code> 
 + 
 +===== 4. Validando ZFS ===== 
 + 
 +===== Descobrir pools =====
  
 <code bash> <code bash>
Linha 66: Linha 204:
 </code> </code>
  
-===== Estruturas Mais Comuns =====+===== Importar pool =====
  
-==== Ambiente RAID1 EXT4 ====+<code bash> 
 +zpool import -f NOME_DO_POOL 
 +</code>
  
-Exemplo:+===== Verificar status =====
  
-^ Partição ^ Função ^ +<code bash> 
-| /dev/md2 | /boot | +zpool status 
-| /dev/md3 | / | +</code>
-| /dev/nvme0n1p1 | EFI | +
-| /dev/nvme1n1p1 | EFI |+
  
-==== Ambiente ZFS Root =====+===== Ver datasets =====
  
-Exemplo:+<code bash> 
 +zfs list 
 +</code>
  
-^ Pool ^ Função ^ +===== Interpretação =====
-| rpool | Sistema operacional | +
-| bpool | Boot | +
-| EFI | Partição EFI |+
  
-===== 2. Validando o Tipo de Boot =====+Se o pool aparecer como:
  
-==== Verificar se o ambiente usa UEFI ====+<code> 
 +ONLINE 
 +</code> 
 + 
 +Há forte indicativo de integridade do storage. 
 + 
 +===== 5. Validando UEFI ===== 
 + 
 +===== Verificar se sistema usa UEFI =====
  
 <code bash> <code bash>
 ls /sys/firmware/efi ls /sys/firmware/efi
 </code> </code>
 +
 +===== Interpretação =====
  
 Se existir conteúdo: Se existir conteúdo:
  
-* Sistema utiliza UEFI+* Ambiente utiliza UEFI
  
-===== 3. Montando o Sistema =====+===== 6. Montando o Ambiente =====
  
-==== Montar Root =====+===== Montar ROOT =====
  
-Exemplo EXT4 RAID:+Exemplo:
  
 <code bash> <code bash>
Linha 109: Linha 256:
 </code> </code>
  
-==== Montar Boot =====+===== Montar BOOT =====
  
 <code bash> <code bash>
Linha 116: Linha 263:
 </code> </code>
  
-==== Montar EFI =====+===== Montar EFI =====
  
 <code bash> <code bash>
Linha 123: Linha 270:
 </code> </code>
  
-===== 4. Preparando Chroot =====+===== 7. Preparando Chroot =====
  
-==== Montar pseudo-filesystems =====+===== Montar pseudo-filesystems =====
  
 <code bash> <code bash>
Linha 134: Linha 281:
 </code> </code>
  
-==== Entrar no ambiente =====+===== Entrar no ambiente =====
  
 <code bash> <code bash>
Linha 140: Linha 287:
 </code> </code>
  
-===== 5. Reinstalando o GRUB EFI =====+===== 8. Validando Estrutura EFI =====
  
-==== Reinstalação padrão =====+===== Verificar conteúdo =====
  
 <code bash> <code bash>
-grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=proxmox+ls -R /boot/efi
 </code> </code>
  
-===== 6. Regenerando Configurações =====+===== Estrutura esperada =====
  
-==== Atualizar configuração do GRUB =====+<code> 
 +/boot/efi/EFI/proxmox 
 +</code>
  
-<code bash> +===== Arquivos esperados ===== 
-update-grub+ 
 +<code> 
 +grubx64.efi 
 +shimx64.efi 
 +grub.cfg
 </code> </code>
  
-==== Regenerar initramfs =====+===== 9. Corrigindo GRUB EFI ===== 
 + 
 +===== Reinstalar GRUB =====
  
 <code bash> <code bash>
-update-initramfs -u -k all+grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=proxmox
 </code> </code>
  
-===== 7. Validando Estrutura EFI =====+===== Possível Warning =====
  
-==== Verificar arquivos EFI =====+<code> 
 +EFI variables cannot be set on this system 
 +</code> 
 + 
 +===== Interpretação ===== 
 + 
 +Comum em Rescue Systems. 
 +Não impede funcionamento do boot. 
 + 
 +===== Atualizar configuração =====
  
 <code bash> <code bash>
-ls -R /boot/efi+update-grub
 </code> </code>
  
-Estrutura esperada:+===== Regenerar initramfs ===== 
 + 
 +<code bash> 
 +update-initramfs -u -k all 
 +</code> 
 + 
 +===== Possível Warning =====
  
 <code> <code>
-/boot/efi/EFI/proxmox +No /etc/kernel/proxmox-boot-uuids found
-/boot/efi/EFI/BOOT+
 </code> </code>
  
-===== 8. Criando Fallback EFI =====+===== Interpretação ===== 
 + 
 +Pode ocorrer em ambientes sem proxmox-boot-tool.
  
-Alguns servidores não gravam corretamente variáveis EFI na NVRAM.+===== 10. Criando Fallback EFI =====
  
-Nestes casos é recomendado criar fallback EFI.+Alguns servidores/provedores não gravam corretamente EFI na NVRAM.
  
-==== Criar estrutura =====+===== Criar estrutura =====
  
 <code bash> <code bash>
Linha 189: Linha 360:
 </code> </code>
  
-==== Copiar loader =====+===== Criar fallback =====
  
 Recomendado: Recomendado:
Linha 197: Linha 368:
 </code> </code>
  
-Alternativa:+===== Alternativa =====
  
 <code bash> <code bash>
Linha 203: Linha 374:
 </code> </code>
  
-===== 9. Ambientes com ZFS =====+===== 11. Validando Discos =====
  
-==== Validar pools =====+===== Instalar smartmontools =====
  
 <code bash> <code bash>
-zpool status+apt install smartmontools -y
 </code> </code>
  
-==== Importar pool manualmente =====+===== Verificar disco =====
  
 <code bash> <code bash>
-zpool import -f rpool+smartctl -a /dev/sda
 </code> </code>
  
-==== Validar datasets =====+===== Validar ===== 
 + 
 +* Reallocated_Sector_Ct 
 +* Current_Pending_Sector 
 +* Offline_Uncorrectable 
 +* Erros ATA 
 + 
 +===== 12. Validando Espaço ===== 
 + 
 +===== Verificar utilização =====
  
 <code bash> <code bash>
-zfs list+df -h 
 +</code> 
 + 
 +===== Validar especialmente ===== 
 + 
 +* / 
 +* /boot 
 +* datastore 
 +* storage ZFS 
 + 
 +===== 13. Logs e Diagnóstico ===== 
 + 
 +===== Ver logs do boot ===== 
 + 
 +<code bash> 
 +journalctl -xb 
 +</code> 
 + 
 +===== Ver mensagens do kernel ===== 
 + 
 +<code bash> 
 +dmesg 
 +</code> 
 + 
 +===== Ver erros críticos ===== 
 + 
 +<code bash> 
 +journalctl -p 3 -xb 
 +</code> 
 + 
 +===== 14. Serviços Proxmox ===== 
 + 
 +===== Proxmox VE ===== 
 + 
 +<code bash> 
 +systemctl status pveproxy 
 +systemctl status pvedaemon 
 +systemctl status pvestatd 
 +</code> 
 + 
 +===== Proxmox Backup Server ===== 
 + 
 +<code bash> 
 +systemctl status proxmox-backup 
 +systemctl status proxmox-backup-proxy 
 +</code> 
 + 
 +===== 15. Rede ===== 
 + 
 +===== Interfaces ===== 
 + 
 +<code bash> 
 +ip a 
 +</code> 
 + 
 +===== Rotas ===== 
 + 
 +<code bash> 
 +ip route 
 +</code> 
 + 
 +===== DNS ===== 
 + 
 +<code bash> 
 +cat /etc/resolv.conf
 </code> </code>
  
-===== 10. Finalização =====+===== 16. Finalização =====
  
-==== Sair do chroot =====+===== Sair do chroot =====
  
 <code bash> <code bash>
Linha 231: Linha 475:
 </code> </code>
  
-==== Desmontar ambiente =====+===== Desmontar ambiente =====
  
 <code bash> <code bash>
Linha 237: Linha 481:
 </code> </code>
  
-==== Reiniciar =====+===== Reiniciar =====
  
 <code bash> <code bash>
Linha 243: Linha 487:
 </code> </code>
  
-===== 11. Problemas Comuns =====+===== 17. Problemas Comuns =====
  
-==== "EFI variables cannot be set on this system" =====+===== Sistema continua entrando em Rescue =====
  
-Normal em ambientes rescue/live Linux.+Verificar:
  
-Não impede funcionamento do boot.+* Rescue mode desabilitado 
 +* ISO virtual removida 
 +* Ordem de boot correta 
 +* Disco correto configurado
  
-===== "No /etc/kernel/proxmox-boot-uuids found" =====+===== Pool ZFS não importa =====
  
-Pode ocorrer em ambientes sem proxmox-boot-tool.+Executar:
  
-Não necessariamente indica falha.+<code bash> 
 +zpool import -f NOME_DO_POOL 
 +</code>
  
-===== Sistema continua entrando em rescue =====+===== RAID degradado =====
  
 Verificar: Verificar:
  
-* Modo rescue desabilitado no provedor +<code bash> 
-* Ordem de boot da BIOS/UEFI +cat /proc/mdstat 
-* Disco correto selecionado +</code> 
-* ISO virtual removida+ 
 +===== Kernel não encontrado ===== 
 + 
 +Verificar: 
 + 
 +<code bash> 
 +ls /boot 
 +</code> 
 + 
 +===== EFI vazia ===== 
 + 
 +Reinstalar GRUB. 
 + 
 +===== Sem espaço em /boot ===== 
 + 
 +Remover kernels antigos.
  
-===== 12. Recomendações =====+===== 18. Boas Práticas =====
  
-* Manter backup atualizado+* Manter múltiplas EFI 
 +* Validar SMART periodicamente
 * Validar RAID periodicamente * Validar RAID periodicamente
-* Validar SMART dos discos +* Validar boot após upgrades 
-* Testar recuperação em ambientes críticos +* Testar recovery 
-* Manter múltiplas EFI em RAID1 +* Manter documentação da estrutura do ambiente 
-* Validar espaço em /boot +* Possuir backup externo 
-* Validar status do ZFS após upgrades+* Monitorar espaço em /boot
  
-===== 13. Comandos Úteis =====+===== 19. Comandos Rápidos =====
  
-==== Status RAID =====+===== Discos ===== 
 + 
 +<code bash> 
 +lsblk 
 +fdisk -l 
 +blkid 
 +</code> 
 + 
 +===== RAID =====
  
 <code bash> <code bash>
Linha 285: Linha 558:
 </code> </code>
  
-==== Status EFI =====+===== EFI =====
  
 <code bash> <code bash>
Linha 291: Linha 564:
 </code> </code>
  
-==== Status ZFS =====+===== ZFS =====
  
 <code bash> <code bash>
 zpool status zpool status
 +zpool import
 zfs list zfs list
 </code> </code>
  
-==== Espaço em disco =====+===== Espaço =====
  
 <code bash> <code bash>
Linha 304: Linha 578:
 </code> </code>
  
-==== Kernels instalados =====+===== SMART =====
  
 <code bash> <code bash>
-ls /boot+smartctl -a /dev/sda 
 +</code> 
 + 
 +===== Logs ===== 
 + 
 +<code bash> 
 +journalctl -xb 
 +dmesg
 </code> </code>
  
proxmox/corrigir_grub_upgrade.1778593155.txt.gz · Última modificação: por admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki