Windows 8의 UEFI에서 듀얼 부팅 우분투 12.10 (GRUB-오류 : 명령 드라이브 맵을 찾을 수 없음)


8

안녕하세요, Ubuntu 12.10 amd64를 성공적으로 설치 한 후 Windows 8을 부팅 할 수 없습니다.

내 행동은 다음과 같습니다.

  1. Windows 8 컴퓨터 관리에서 우분투를위한 공간 (15GB)
  2. EFI 및 보안 부팅이 활성화 된 부팅 우분투 12.10 amd64 LiveUSB
  3. 마지막에 2 개의 새 파티션 생성 (13GB Ext4 Root amd 2GB 스왑)
  4. 부트 로더 설치를 위해 선택된 Windows 8 EFI 시스템 파티션

Grub은 부팅 할 때 제공합니다.

  1. 우분투 (문제없이 작동)
  2. Windows 복구 환경 (많은 오류)
  3. Windows 8 (아래에 설명 된 2 개의 오류 메시지)

두 가지 오류 메시지는 다음과 같습니다.

  • error: can't find command drivemap.
  • error: invalid EFI file path

정류 나는 부트 로더를 설치하기 위해 "새로 생성 된 EFI 시스템 파티션"을 선택했지만 실제로는 Windows 8 EFS에 부트 로더를 설치했습니다.
Kouros

미리 백업을 했습니까? 즉, Windows 8 시작 / 시스템 파티션은 150-350MB와 같은 작은 크기이므로 아마도 했 dd if=/dev/sda1 of=/media/some_usb_pendrive/backupfile습니까? 그러한 백업이 존재하는 경우 "손상된"Windows 시스템 / 시작 partitio를 복원합니다.
humanandANDpeace

백업은 미안하지만 복구 환경을 사용하여 Windows 8을 다시 가져 왔습니다 (전원 버튼 대신 지원 버튼을 누름)
Kouros

자신의 질문을 진지하게 복제 했습니까? Windows 8을 따라 UEFI에 Ubuntu 12.10을 설치
duxk.gh

참고 : 13.04로 업그레이드하면 설치시이 변경 사항이 제거되었습니다.
gcb

답변:


6

임시 해결책을 찾았습니다.

GRUB 부트 메뉴에 사용자 정의 항목 추가

아래 코드를에 추가하십시오 /etc/grub.d/40_custom.

menuentry "Windows 8" {
    insmod part_gpt
    insmod chain
    set root='(hd0,gpt1)'
    chainloader /EFI/microsoft/BOOT/bootmgfw.efi
}

당신은 사용할 수 있습니다 Ctrl+ Alt+ T터미널을 열고 실행하려면 sudo nano /etc/grub.d/40_custom, 다음 코드를 복사하여 붙여 넣습니다. 마지막으로 Ctrl+ O를 눌러 저장하고 Ctrl+ X를 눌러 종료합니다.

헤딩 업 : hd0,gpt1 여기 내 EFI 시스템 파티션 (ESP)의 ID가 있습니다. 부팅하는 동안 ESP가 첫 번째 하드 드라이브의 첫 번째 파티션이 아닌 경우 다른 파티션입니다 ! 예 hd1,gpt2를 들어 두 번째 드라이브의 두 번째 파티션입니다.

교체 part_gptpart_msdos드라이브가 MBR 및 기존의 파티션을 사용하는 경우도 변경 hd0,gpt1hd0,msdos1각각.

GRUB에 변경 사항 적용

다음 명령을 실행하면 새 사용자 정의 항목을 포함하여 새 GRUB 구성이 생성됩니다.

sudo update-grub

이제 재부팅하십시오. 이제 Windows 8을 부팅 할 수 있습니다. 그렇지 않으면 Windows가 손상된 BCD 구성에 대해 불평하면 수퍼 유저를 계속 하십시오. Windows 8 EFI Bootloader를 어떻게 복구 할 수 있습니까?


경고 : 경우에 따라 Windows 8을 부팅하면 GRUB이 기본 부팅 관리자로 Windows 부팅 관리자로 대체됩니다.


무엇을 '목적'해야합니까? 나는 그것이 Windows 데이터 파티션 (여기서는 gpt4)이라고 생각했지만 그것이 내가 가지고있는 유일한 EFI 파티션 인 gpt1과 함께 작동했습니다. 비록 ubuntu를 설치하면 grub이 MBR에하는 것처럼 EFI 파티션의 Windows 내용을 덮어 쓰게되었지만 ...
gcb

1
이 솔루션은 나를 위해 작동하지 않습니다. 캐릭터 `set root='(hd0,gpt1)'의도 한 것 입니까? 해당 문자가 없어도 (gpt3으로 시도) 오류가 발생합니다. 오류는 (hd0,gpt1)찾을 수 없습니다.
iammilind

3

GRUB의 잘못된 Windows 항목은이 버그로 인한 것입니다 : https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1024383

해결 방법 : 실행 부팅 수리Recommended Repair라이브 CD (또는 liveUSB)에서.


1
이것이 작동하기 전에 BIOS에서 "보안 부팅"을 비활성화해야했습니다.
Robin Winslow

@RobinWinslow 예, 부팅 수리도 (레노버 씽크 패드 S540) 나를 위해 일하지만 나는 장애인의 경우 SecureBoot윈도우 8, 그렇지 않으면, BIOS에서 여전히 불평 ...이 유지 SecureBoot 동안 일을 할 수 있다면겠습니까 좋을
fpghost

0

Windows 8을 종료하는 방법을 찾았습니다. 참조 /superuser/499923/preinstalled-windows-8-and-linux-uefi-dual-boot-on-a-laptop/528581를

W8의 관리자 권한 명령 창에서 powercfg / h off를 실행하십시오. 이 작업을 수행 할 때 W8은 이미 EFI 파티션을 덮어 썼을 수 있습니다. bootmgfw.efi를 변경하고 멈출 때까지 재설정하는 데 몇 번의 반복이 필요했지만 이제는 행복합니다.

W8 부팅만으로 충분하거나 로그인 한 다음 다시 부팅해야하는지 알 수 없습니다. 아마도 더 많은 인내심을 가진 사람 (반나절 이상이 일을하고 있었을 것입니다)이 말할 수 있습니다.


0

내 Asus-x202 랩톱에서 동일한 문제가 있습니다 (W8 및 Ubuntu 13.04 실행).

부팅 메뉴에서 시스템으로 이동하십시오 (또는 아마도 f2를 사용하여 처음부터 BIOS를 시작하십시오). 재정의를 사용하여 부팅하면 Windows가 정상적으로 시작됩니다.


1
"부팅 무시"란 정확히 무엇을 의미합니까? 나는 당신의 대답의 그 부분을 이해하지 못합니다.
gertvdijk

0

"부팅 무시"는 마더 보드 구성 메뉴의 "부팅"탭에있는 메뉴입니다. 리그에 아직 설치되어있는 부트 로더를 선택하고 즉시 시작할 수 있습니다.


1
@edwin이 답변은 확장을 사용할 수 있지만, 질문에 대한 답변을 시도한 것으로 보입니다. vic : Ubuntu에 오신 것을 환영합니다! 이 기능을 사용하는 방법에 대한 자세한 정보와이 문제를 해결하는 이유에 대한 자세한 설명을 추가하려면이 기능을 편집하는 것이 좋습니다. 감사.
Eliah Kagan

0

새 HP Pavillion Sleekbook, Model 15-b142dx와 비슷한 문제가 있습니다. W8이 사전로드 된 상태로 제공됩니다. Windows에서 Windows 파티션의 크기를 조정 한 다음 썸 드라이브에서 64 비트 Ubuntu 13.04를 설치했습니다. 그러나 재부팅시 W8은 부팅 메뉴없이 정상적으로 시작되었습니다. 그래서 "부팅 복구"를 사용하여 시스템을 부팅 할 수 없게 만들었습니다. 시작할 때 다음과 같이 인쇄됩니다.

Failed to open \EFI\Microsoft\Boot\grubx64.efi - 800000000000000E 
Failed to load grub
Failed to open \EFI\BOOT\grubx64.efi - 800000000000000E
Failed to load grub
Failed to open \EFI\BOOT\grubx64.efi - 800000000000000E
Failed to load grub

그런 다음 종료됩니다.

약간의 시행 착오 끝에 부팅 중에 F10을 누르면 BIOS로 이동하여 보안 부팅을 비활성화 할 수 있음을 알았습니다. 다음 부팅에서는 grub에서 LONG 메뉴를 얻었습니다.

Windows UEFI bkpbootmgfw.efi
Windows Boot UEFI loader
EFI/HP/BIOSUpdate/CryptRSA32.efi
.
.
.

이것들은 모두 "/etc/grub.d/25_custom"파일에 들어있었습니다. 해당 파일의 백업 복사본을 만든 다음 Windows Boot UEFI 로더를 제외한 모든 항목을 제거했습니다. (이는 W8 부팅을 허용하는 항목 중 하나입니다). 그런 다음 "update-grub"을 실행하고 훨씬 더 멋진 부팅 메뉴를 사용하여 OS를 부팅 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.