
Bitlocker 및 Secure Boot를 사용하는 Lenovo Yoga C930에서 Grub 및 UEFI를 통해 Manjaro와 Windows를 이중 부팅했습니다. BIOS에서 보안 부팅을 비활성화하면 Manjaro로 성공적으로 부팅할 수 있고, BIOS에서 보안 부팅을 다시 활성화하면 Windows로 부팅할 수도 있습니다. 알 수 없는 이유로 무작위로 보이는 이유로 Linux 부트로더를 잃어버리게 되었습니다. 삭제되는 건지, 갑자기 인식이 안되는 건지, 뭔지는 모르겠지만 부팅이 안 되고, 바이오스 옵션에도 안 뜨네요.
Wiki의 지침에 따라 Grub을 다시 설치할 수 있지만 결국에는 사라지게 됩니다. 무슨 일이 일어나고 있으며, 이런 일이 발생하지 않도록 하려면 어떻게 해야 합니까?
답변1
나는 Windows가 시스템을 "암 없는" 상태로 유지하고 있다고 가정합니다.
[편집] 사용하는 부팅 방법(레거시 및 UEFI)에 따라 두 가지 솔루션이 있습니다.
유산:
bcd
부팅 관리자로 사용하여 Windows 또는 Linux를 시작할 수 있습니다 .
grub이 Windows EFI 파티션 에 설치되어 /dev/sda
있다고 가정합니다./dev/sda1
리눅스에서:
mount /dev/sda1 /mnt
dd if=/dev/sda of=/mnt/linux.bin bs=512 count=1
Windows의 경우:
bcdedit /create /d "Linux" /application bootsector
BCDEdit는 나머지 단계에서 {ID}라고 지칭할 이 항목에 대한 영숫자 식별자를 반환합니다. {ID}를 실제 반환된 식별자로 바꿔야 합니다. {ID}의 예는 {d7294d4e-9837-11de-99ac-f3f3a79e3e93}입니다. 다음으로 linux.bin 파일의 복사본을 호스팅하는 파티션을 지정해 보겠습니다.
bcdedit /set {ID} device partition=c:
linux.bin 파일의 경로:
bcdedit /set {ID} path \linux.bin
부팅 시 표시되는 메뉴 항목:
bcdedit /displayorder {ID} /addlast
마지막으로 메뉴 선택 사항이 표시되는 시간을 지정해 보겠습니다.
bcdedit /timeout 30
그게 다야! 이제 재부팅하면 Windows 또는 Linux로 부팅하도록 선택할 수 있는 메뉴가 표시됩니다. Linux를 선택하면 Linux 부팅을 선택할 수 있는 부트로더 메뉴로 이동하게 됩니다.
https://www.iceFlatline.com/2009/09/how-to-dual-boot-windows-7-and-linux-using-bcdedit/
[편집하다] UEFI
Windows 시스템에는 부팅되는 EFI 파티션이 있습니다. Linux에서는 이를 /boot
. 그런 다음 grub.cfg
uuid를 사용하여 루트 파티션을 찾고 있는지 확인하십시오(기본적으로는 그렇습니다). 예를 들어, linux /vmlinuz-4.4.0-1-default root=UUID=6159e15d-f224-499d-88e0-437b5538f0f1 quiet splash=silent
그렇지 않은 경우 blkid
루트 파티션의 UUID를 나열하고 에서 grub 구성을 조정합니다 /etc/grub.d
.
grub 구성을 다음과 같이 작성합니다./boot/boot/efi/EFI/manjaro/grub.cfg
grub2-mkconfig -o /boot/boot/efi/EFI/manjaro/grub.cfg
재부팅하면 "가야"할 수 있습니다.
답변2
저는 거의 2년 전에 Windows 8에서 Trisquel Linux를 이중 부팅하면서 이와 비슷한 문제를 겪었습니다. 질문/답변을 게시했습니다.여기슈퍼 유저에 대해(당시 어떤 이유에서인지 듀얼 부팅 질문이 U&L에서 주제와 다르다고 들었습니다).
해당 게시물에서 볼 수 있듯이 문제는 Windows가 GRUB를 삭제하거나 덮어쓰는 것이 아니라 GRUB가 아닌 Windows 부트로더를 사용하도록 UEFI 설정을 주기적으로 변경하는 것이었습니다. 해결책은 Windows에서 bcdedit를 사용하여 기본 부트로더 경로를 GRUB로 설정하여 문제를 해결하는 것이었습니다.
동일한 솔루션이 귀하에게 도움이 될지는 모르겠지만 시도해 볼 가치가 있습니까?
(또한 Windows를 부팅하기 위해 보안 부팅을 활성화할 필요는 없다고 생각합니다. 보안 부팅을 비활성화한 상태에서 Windows 8로 부팅해도 괜찮습니다.)
답변3
나는 실제로 이것을 스스로 알아 냈습니다. efibootmgr
새로운 부팅 항목을 수동으로 생성하고 높은 우선순위를 부여하는 데 사용해야 했던 것으로 나타났습니다 . 여태까지는 그런대로 잘됐다.