Назад | Перейти на главную страницу

Сервер Centos 7 не загружает X64 Тип исключения - 0D (#GP - Общая защита)

Я запустил yum update на сервере Centos 7, который ранее работал хорошо, затем попытался перезапустить его с помощью команды reboot.

Сервер - это экземпляр облачных вычислений Google.

Он бы не подошел.

Вывод на последовательную консоль:

BdsDxe: loading Boot0003 "CentOS Linux" from HD(1,GPT,C8B5C89A-17ED-480E-B9F6-0E811C16FEE3,0x800,0x64000)/\EFI\cent
os\shimx64.efi                                                                                                     
BdsDxe: starting Boot0003 "CentOS Linux" from HD(1,GPT,C8B5C89A-17ED-480E-B9F6-0E811C16FEE3,0x800,0x64000)/\EFI\cen
tos\shimx64.efi                                                                                                    
                                                                                                                   
UEFI: Attempting to start image.                                                                                   
Description: CentOS Linux                                                                                          
FilePath: HD(1,GPT,C8B5C89A-17ED-480E-B9F6-0E811C16FEE3,0x800,0x64000)/\EFI\centos\shimx64.efi                     
OptionNumber: 3.                                                                                                   
                                                                                                                   
!!!! X64 Exception Type - 0D(#GP - General Protection)  CPU Apic ID - 00000000 !!!!                                
ExceptionData - 0000000000000000                                                                                   
RIP  - 00000000BF2E6D5C, CS  - 0000000000000038, RFLAGS - 0000000000010006                                         
RAX  - 00000000BFF67E50, RCX - 000000000000001F, RDX - 00000000BFF39F28                                            
RBX  - 00000000BF352FB0, RSP - 00000000BFF39E50, RBP - 00000000000023C0                                            
RSI  - 00000000BFF39F28, RDI - 0000000000000068                                                                    
R8   - 00000000BDB79018, R9  - 000000000000211E, R10 - 00000000BDC59010                                            
R11  - 00000000BFF39E9A, R12 - 00000000BE6E63E8, R13 - 00000000BF339018                                            
R14  - 00000000BEE21018, R15 - 0000000000000068                                                                    
DS   - 0000000000000030, ES  - 0000000000000030, FS  - 0000000000000030                                            
GS   - 0000000000000030, SS  - 0000000000000030                                                                    
CR0  - 0000000080010033, CR2 - 0000000000000000, CR3 - 00000000BF401000                                            
CR4  - 0000000000000668, CR8 - 0000000000000000                                                                    
DR0  - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000                                            
DR3  - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400                                            
GDTR - 00000000BF3EEA98 0000000000000047, LDTR - 0000000000000000                                                  
IDTR - 00000000BEE1F018 0000000000000FFF,   TR - 0000000000000000                                                  
FXSAVE_STATE - 00000000BFF39AB0                                                                                    
!!!! Find image based on IP(0xBF2E6D5C) /build/work/af60adde42b1d1ad5be2a01e4924bb905248/google3/blaze-out/k8-opt/g
enfiles/third_party/edk2/ovmf_x64_csm_debug_workspace_dir/ovmf_x64_csm_debug_edk2_files_dir/Build/OvmfX64/DEBUG_CLA
NG38/X64/OvmfPkg/8254TimerDxe/8254Timer/DEBUG/Timer.dll (ImageBase=00000000BF2E5000, EntryPoint=00000000BF2E6AB5) !
!!!                                                                                                                

Понятия не имею, что я сделал не так.

Как мне избежать этого в будущем? :)

В CentOS возникла проблема, влияющая на экземпляры виртуальных машин в GCP, о ней сообщалось в дашборде состояния [1].

Вам необходимо выполнить следующие действия, чтобы вернуть ваш экземпляр виртуальной машины в рабочее состояние:

  • 1.-Остановите плохой экземпляр (он все равно не может загрузиться).
  • 2.-Отредактируйте, чтобы удалить загрузочный диск.
  • 3.-Отредактируйте другой хороший экземпляр (пакет shim еще не обновлен) в той же зоне, чтобы прикрепить загрузочный диск из плохого экземпляра в качестве дополнительного диска.
  • 4.-lsblk, чтобы узнать имя устройства подключенного диска, например: / dev / sdb.
  • 5. смонтируйте раздел efi, например: mount / dev / sdb1 / mnt
  • 6.-скопируйте старые файлы efi из хорошего экземпляра:
    • cp -f /boot/efi/EFI/BOOT/BOOTX64.EFI /mnt/EFI/BOOT/BOOTX64.EFI
    • cp -f /boot/efi/EFI/centos/*.efi / mnt / EFI / centos
  • 7.-umount / mnt
  • 8.-Отсоедините диск и снова подключите его к неисправному экземпляру в качестве загрузочного диска.
  • 9.-Загрузите плохой экземпляр, и теперь он может подойти.

[1] https://status.cloud.google.com/incident/compute/20009