![Solus/Windows 10 이중 부팅이 작동을 멈추고 GRUB가 자동으로 복구되지 않습니다.](https://linux55.com/image/210896/Solus%2FWindows%2010%20%EC%9D%B4%EC%A4%91%20%EB%B6%80%ED%8C%85%EC%9D%B4%20%EC%9E%91%EB%8F%99%EC%9D%84%20%EB%A9%88%EC%B6%94%EA%B3%A0%20GRUB%EA%B0%80%20%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C%20%EB%B3%B5%EA%B5%AC%EB%90%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
내 시스템은 Windows 10 및 Solus Linux를 이중 부팅하도록 설정되어 있지만 보조 드라이브 중 하나에 몇 가지 문제가 발생한 후(결국 해당 드라이브를 제거하고 Windows는 한동안 이 드라이브 없이 작동했습니다) GRUB에서 Windows를 부팅하려고 하면 다음과 같은 오류가 발생했습니다. 기억이 나지 않으며 올바르게 부팅하려면 터미널을 통해 Solus를 업데이트해야 했습니다(제 기억이 맞다면). 이제 Solus는 제대로 부팅되지만 Windows는 GRUB에 전혀 표시되지 않습니다. 몇 시간 동안 솔루션을 조사하고 시도한 후에는 벽돌 벽에 머리를 부딪히는 듯한 느낌이 듭니다. 내가 본 것 중 권장되고 시도했지만 작동하지 않은 것:
os-prober
및 를 실행하여 자동으로 수정해 보십시오update-grub
.WARNING: Failed to connect to lvmetad. Falling back to device scanning.
처음에는 문제가 해결되면 다음과 같은 오류 메시지가 표시되었습니다 .lvmetad 서비스를 다시 시작하십시오., 아무 것도 출력하지 않습니다. GRUB는 구성을 업데이트했지만 여전히 Windows는 없다고 말합니다.Windows 10 시작 항목을 수동으로 추가해 보세요.주로 다음과 같습니다이것가이드님, 어렵게 구했는데
fs-uuid
드디어 찾았네요. 하지만 여전히 작동하지 않고hints_string
항상 오류가 발생합니다grub-probe: warning: unknown device type nvme0n1.
. 또한/EFI/Microsoft/Boot/bootmgfw.efi
Windows 설치에서 있어야 할 위치를 찾을 수 없습니다 . 대신 존재하지 않는 다른 위치에 액세스하려고 하면 오류가 발생합니다bootmgfw.efi
./Windows/Boot/EFI/bootmgfw.efi
이러한 장애에도 불구하고 나는 다음을 수동 입력으로 계속 추가했지만/etc/grub.d/40_custom
결과는 실망스러웠습니다error: invalid signature
.
# Microsoft Windows 10
menuentry "Windows 10" {
insmod part_gpt
insmod ntfs
insmod search_fs_uuid
insmod chain
search --no-floppy --fs-uuid --set=root 2E6E49286E48E9E3
chainloader /Windows/Boot/EFI/bootmgfw.efi
}
- 부팅 가능한 Windows 10 USB에서 부팅 복구를 실행해 보세요.다음과 같은이것제안된 답변은 Windows 10 설치 프로그램 USB로 부팅하고 "컴퓨터 복구"로 이동하여 "시동 복구"를 선택했는데 Windows에서 문제를 파악할 수 없다는 메시지를 듣고 "종료"라고만 했습니다.
이 시점에서 나는 지쳤습니다. 온라인에서 찾은 내용이 계속해서 맴돌고 있는 것 같고 다른 방법으로는 효과가 없을 것 같습니다. 저는 Linux 전문가가 아닙니다. 터미널에 대해서는 상당히 잘 알고 있지만, 처음부터 직접 고치기에는 이 기능이 어떻게 작동하는지 잘 모릅니다. Solus만큼 훌륭하지만 여전히 제가 겪었던 몇 가지 문제가 있습니다(비록 여기서의 큰 문제와는 관련이 없지만). 저는 여전히 Windows를 실행할 수 있는 유능한 데스크톱 컴퓨터를 갖고 싶습니다. 그래서 그냥 Windows를 버립니다. 분할은 내가 받아들이고 싶은 것이 아닙니다. 무엇이든 감사합니다. 미리 감사드립니다.
fdisk -l
참고로(도움이 된다면) 내 부팅 드라이브와 관련된 출력은 다음과 같습니다.
Disk /dev/nvme0n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: INTEL SSDPEKNW512G8
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x313ff715
Device Boot Start End Sectors Size Id Type
/dev/nvme0n1p1 2048 499578836 499576789 238.2G 7 HPFS/NTFS/exFAT
/dev/nvme0n1p2 999153664 1000210431 1056768 516M 27 Hidden NTFS WinRE
/dev/nvme0n1p3 499578880 957210623 457631744 218.2G 83 Linux
/dev/nvme0n1p4 957210624 999153663 41943040 20G 82 Linux swap / Solari
Partition table entries are not in disk order.
setupact.log
또한 내가 찾은 결과에 따르면 Windows가 레거시 모드로 부팅될 것이라고 확신합니다.이것찾을 수 있도록 안내합니다.
답변1
귀하가 따르는 지침UEFI 시스템에 적용 가능합니다. Windows 운영 체제는 부팅 방법 선택을 파티션 시스템 선택과 연결하므로 디스크가 MBR 스타일로 파티션되어 있다는 사실( Disklabel type: dos
출력에 로 표시됨 fdisk -l
)은 Windows가 기존 BIOS 스타일로 부팅된다는 의미입니다.
/etc/grub.d/40_custom
이는 기본적으로 항목에서 세 가지 사항을 수정 해야 함을 의미합니다 .
insmod part_gpt
사용. . . 교체insmod part_msdos
.- 해당 줄의 UUID가 파티션을
search
참조하는 경우/dev/nvme0n1p1
해당 파티션은 Windows 부트 로더가 있는 위치가 아닙니다. 최신 Windows에서는 파티션 ID를 사용하여 "시스템" 파티션에 넣습니다 .27
귀하의 경우에는 UUID( 또는 사용 )/dev/nvme0n1p2
를 찾아 현재 UUID 대신 해당 줄에 넣습니다.lsblk -o +UUID
blkid
search
chainloader /Windows/Boot/EFI/bootmgfw.efi
사용. . . 교체chainloader +1
. (즉, 이전 줄에서 선택한 파티션의 첫 번째 청크를 로드search
하고 실행합니다.)
이러한 변경을 수행한 후 update-grub
루트로 실행하고 Windows를 다시 시작해 보십시오.