UEFI를 사용한 Grub: 외부 SSD에 재설치한 후 로컬 Debian이 부팅되지 않습니다.

UEFI를 사용한 Grub: 외부 SSD에 재설치한 후 로컬 Debian이 부팅되지 않습니다.

BIOS가 UEFI 모드(레거시 없음)만 활성화하는 ThinkPad 노트북이 있습니다. 부팅 시 Grub을 통해 선택할 수 있는 이중 부팅 옵션으로 Windows와 Debian12를 모두 설치합니다. 최근에 제 아들은 이 노트북을 사용하여 외장 SSD 드라이브에 데비안을 설치하기로 결정했습니다. 모든 것이 잘 진행되었고 외장 SSD 드라이브에서 새 Debian으로 부팅할 수 있었지만 노트북의 Grub에서 변경된 사항이 있어서 이제 OS를 선택하는 부팅 메뉴를 제공하지 않고 Windows로 직접 부팅됩니다(Debian은 기본 운영 체제입니다). 시스템이 시작됩니다).

  1. 무슨 일이에요? 나는 이 과정을 따르지 않았지만 데비안 설치가 사전 경고 없이 그렇게 급격한 변화를 일으킨다는 것이 이상합니다...

  2. 이제 이전 Grub 부팅 메뉴를 다시 가져오려면 어떻게 수정해야 합니까?

일부 관련 출력(외부에서 Fedora를 부팅하는 경우):

sudo lsblk -f -o +PARTUUID
NAME        FSTYPE FSVER LABEL  UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
                                                                                              PARTUUID
sda                                                                                           
├─sda1      vfat   FAT32        B7E4-5065                             581.4M     3% /boot/efi f53afd02-d970-4764-a560-93dab8cf172d
├─sda2      ext4   1.0          83c95001-37bc-47f8-b1ed-f9795ad1e50e  659.9M    25% /boot     0055d417-41d1-4d56-a442-7f8bfc092912
└─sda3      btrfs        fedora 80b304cc-ed4e-4024-8953-7e622aa49c31  445.9G     4% /home     ea394dcd-f563-4016-b058-5303e6ba94e5
                                                                                    /         
sdb                                                                                           
zram0                                                                               [SWAP]    
nvme0n1                                                                                       
├─nvme0n1p1 vfat   FAT32        7892-C839                                                     9860d2db-9326-4a98-bfc8-e4ec84887136
├─nvme0n1p2                                                                                   c69f083e-f0c0-4ceb-843e-4016ccab4515
├─nvme0n1p3 ntfs                20CA9615CA95E776                                              222a0d1e-ca4f-4f84-a142-53c072758867
├─nvme0n1p4 ntfs                5CFEA3A4FEA374C4                                              b568758e-1d6c-4208-ae8d-0e62b30045a4
├─nvme0n1p5 ext4   1.0          dcb0d97a-513a-427c-be6c-618cd5dcf1d2                          1a8a88f2-3a34-4449-8528-fee23e43cb2e
└─nvme0n1p6 swap   1            c4acdea6-8ae5-453f-af91-58f75a5c6e7c                          7b3cf8d9-e418-4350-8e20-beb9f65cbf2e

그리고:

sudo efibootmgr
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0004,0001,0003,0002,001C,0010,0011,0012,0013,0017,0018,001A,0000,0019,001B,001D,001E,001F,0024
Boot0000* Windows Boot Manager  HD(1,GPT,9860d2db-9326-4a98-bfc8-e4ec84887136,0x800,0x32000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000061000100000010000000040000007fff0400
Boot0001* debian    HD(1,GPT,e0c16116-3b12-42eb-b28f-6f2b50950004,0x800,0x100000)/File(\EFI\debian\shimx64.efi)
Boot0002* Fedora    HD(1,GPT,7f992509-1fa6-4ca8-b42f-99492160a566,0x800,0x12c000)/File(\EFI\fedora\shimx64.efi)
Boot0003* Fedora    HD(1,GPT,01540828-ce9e-4881-897b-751b02b41f92,0x800,0x12c000)/File(\EFI\fedora\shimx64.efi)
Boot0004* Fedora    HD(1,GPT,f53afd02-d970-4764-a560-93dab8cf172d,0x800,0x12c000)/File(\EFI\fedora\shimx64.efi)
Boot0010  Setup FvFile(721c8b66-426c-4e86-8e99-3457c46ab0b9)
Boot0011  Boot Menu FvFile(126a762d-5758-4fca-8531-201a7f57f850)
Boot0012  Diagnostic Splash Screen  FvFile(a7d8d9a6-6ab0-4aeb-ad9d-163e59a7a380)
Boot0013  Lenovo Diagnostics    FvFile(3f7e615b-0d45-4f80-88dc-26b234958560)
Boot0014  Startup Interrupt Menu    FvFile(f46ee6f4-4785-43a3-923d-7f786c3c8479)
Boot0015  Rescue and Recovery   FvFile(665d3f60-ad3e-4cad-8e26-db46eee9f1b5)
Boot0016  MEBx Hot Key  FvFile(ac6fd56a-3d41-4efd-a1b9-870293811a28)
Boot0017* USB CD    VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,86701296aa5a7848b66cd49dd3ba6a55)
Boot0018* USB FDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6ff015a28830b543a8b8641009461e49)
Boot0019* NVMe1 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,001c199932d94c4eae9aa0b6e98eb8a401)
Boot001A* NVMe0 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,001c199932d94c4eae9aa0b6e98eb8a400)
Boot001B* ATA HDD0  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f602)
Boot001C* USB HDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,33e821aaaf33bc4789bd419f88c50803)
Boot001D* PCI LAN   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,78a84aaf2b2afc4ea79cf5cc8f3d3803)
Boot001E  Other CD  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a35406)
Boot001F  Other HDD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f606)
Boot0020* USBR BOOT CDROM   PciRoot(0x0)/Pci(0x14,0x0)/USB(11,1)
Boot0021* USBR BOOT Floppy  PciRoot(0x0)/Pci(0x14,0x0)/USB(11,0)
Boot0022* ATA HDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f6)
Boot0023* ATAPI CD  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a354)
Boot0024* PCI LAN   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,78a84aaf2b2afc4ea79cf5cc8f3d3803)

답변1

  1. 무슨 일이에요?

주석의 분석은 올바른 것 같습니다. 의 debian기존 항목은 efibootmgr시스템의 ESP와 일치하지 않으며 일치하는 유일한 Fedora항목은 Boot0004외부 부팅의 Fedora를 참조합니다 sda.

외부 드라이브에 설치하면 원래 debian항목을 덮어써야 합니다.

  1. 지금 어떻게 고칠 수 있나요[...]?

외부에서 부팅된 Fedora를 실행할 때, 먼저 Debian이 사용하는 파일 시스템을 Debian 설치에 마운트해야 합니다:

sudo mount /dev/nvme0n1p5 /mnt           # root filesystem
# if you had a separate /boot for Debian, it would be mounted to /mnt/boot here
sudo mount /dev/nvme0n1p1 /mnt/boot/efi  # EFI System Partition
sudo mount -t proc none /mnt/proc        # /proc virtual filesystem
sudo mount --rbind /dev /mnt/dev         # /dev and /dev/pts
sudo mount --rbind /sys /mnt/sys         # /sys and /sys/firmware/efi/efivars
sudo chroot /mnt /bin/bash               # chroot into Debian

이제 Debian이 실제로 실행되는 것과 정확히 동일한 파일 시스템 "보기"를 사용하여 루트 사용자로 Debian 설치에 액세스할 수 있습니다. 부트로더에 발생할 수 있는 문제를 즉시 해결하는 가장 쉬운 방법은 다음을 실행하는 것입니다 grub-install.

grub-install /dev/nvme0n1

이렇게 하면 등이 shimx64.efi올바른지 자동으로 확인하고 UEFI NVRAM 부팅 변수도 자동으로 다시 빌드합니다.grubx64.efi/boot/efi/EFI/debian

그런 다음 chroot를 종료하고 이 지점에 도달하기 위해 수행해야 했던 모든 준비를 취소할 수 있습니다.

exit
sudo umount /mnt/sys
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/boot/efi
sudo umount /mnt

...그리고 재부팅하세요. 부팅 항목의 우선 순위가 가장 높은지 확인하기 위해 BIOS 설정에 액세스해야 할 수도 있지만 debian, 그 후에는 시스템이 문제 없이 데비안으로 다시 부팅되어야 합니다.

또는 시스템에서 액세스할 수 없는 디스크, 즉 Boot0002최소한 Boot0003. 다음과 같은 방법으로 이 작업을 수행할 수 있습니다 efibootmgr.

sudo efibootmgr -b 0002 -B
sudo efibootmgr -b 0003 -B

Boot0004(불필요한 불편을 피하기 위해 시스템이 이제 정상적으로 Debian으로 부팅할 수 있는지 확인할 때까지 이 변수를 삭제하지 마십시오. 이 부팅 변수는 현재 외부 Fedora 설치로 부팅을 담당합니다.)

관련 정보