CMD

문제 환경

  1. 윈도우(Windows 10)가 sdb 에 설치됨.
  2. 리눅스(Arch Linux, GRUB)를 sda에 설치 후, 리눅스에서 os-proberWindows의 진입점을 찾지 못함.

준비물

  • 부팅가능한 Windows 설치 미디어 (USB, DVD…)[1]

해결

  1. Windows 설치 미디어로 부팅한다.
  2. 문제해결 -> 고급 -> 명령 프롬프트
  3. diskpart
  4. list disk 입력 후 윈도우가 설치된 디스크X를 찾는다.
  5. sel disk X
  6. list vol 입력 후 EFI 파티션Y을 찾아보자. 파티션은 파일시스템 FAT32을 가지며 용량은 ~512MB 정도함.
  7. sel vol Y
  8. assign letter=T: EFI 파티션을 T:에 할당하자. (필요시 다른 곳에 할당해줘도 됨)
  9. exit로 diskpart를 종료.
  10. cd /d T:\EFI\Microsoft\Boot\, 부트로더 경로 이동.
    • 위 경로가 존재하지 않는다면 아래를 참고하자
    • T:\Boot\ or T:\ESD\Windows\EFI\Microsoft\Boot\ 시도.
    • cd /d T:\EFI 로 이동한 후
      • 위 경로로도 이동할 수 없다면 파티션 선택이 올바르지 않습니다. 처음부터 다시.
    • mkdir T:\EFI\Microsoft\Boot\, 로 디렉토리를 새로 만들자.
  11. bcdboot C:\Windows /s T: /f UEFI, C:\Windows는 윈도우가 설치 된 경로여야 함.

여기까지 진행했으면 리눅스로 부팅하여, os-prober 실행 후 정상적으로 윈도우를 찾을 수 있는지 확인 후, sudo grub-mkconfig -o /boot/grub/grub.cfg GRUB 설정을 새로 적용해주면 된다.