GPT에서 BIOS를 사용하여 Windows 7/8을 부팅하는 방법이 있습니까? BIOS 부트 로더에 대한 지원을 추가하지

기존 IBM PC BIOS 설정에서 GPT 디스크에 Windows 7 또는 Windows 8 Developer Preview를 설치하는 방법이 있는지 알고 싶습니다. 물론 Windows 7은 UEFI가 없기 때문에 GPT 파티션을 거부합니다. 글쎄, 데비안과 Grub 2는 잘 작동하는 것 같습니다 … 그래서 Windows가 제대로 작동하도록하는 방법이 있는지 알고 싶습니다.

그것은 아주 깨지기 쉬운 그리고 Feel로는 hackish 때문에 심각하게, 하이브리드 MBR / GPT을 피하고 선호 싶지만, 그것은 하지 작업. 주요 차단제는 Microsoft가 단순히 GPT에 대한 BIOS 부트 로더에 대한 지원을 추가하지 않는다고 가정합니다. 이해할 수 있습니다. 어떤 의지가 있습니까?

내가 보는 방식에는 몇 가지 가능한 해결책이 있습니다.

  1. Windows 커널 용 대체 부트 로더가 있습니다. 체인 로더가 아닙니다. 내가 아는 한 아무것도 존재하지 않습니다. 부끄러운 일입니다.
  2. 대체 MBR 기반 디스크에 가능한 적은 저장. 이 아이디어를 좋아하지는 않지만 가능합니다. 해결 방법만큼 문제에 대한 해결책이라고 생각하지 않습니다.
  3. EFI 부트 로더가 작동하도록 충분히 EFI를 에뮬레이트합니다. UEFI-on-BIOS 에뮬레이터에 대해 조금은 들었지만 지금은 아무것도 찾을 수 없습니다. 나는 이것이 가능하다고 가정하지만, 아직 수요가 많지 않을 수도 있고, 설정하는 것이 전혀 재미 없을 것입니다. GRUB 2는 필요한 EFI 에뮬레이션으로 해킨토시를 부팅 할 수있는 것 같지만 관심이없는 것 같습니다 / UEFI 2가 접근하기가 더 어렵다고 생각합니다.
  4. TainoCore를 사용한 Coreboot. Coreboot는 (내가 아는 한) 내 마더 보드에서 작동하지 않으며 GSoC 중에이 작업을 수행하기위한 마지막 노력이 실패했음을 확신합니다. 그래도이 솔루션이 효과가 있다면이 솔루션을 정말 좋아합니다.

아무것도 빠졌습니까?



답변

글쎄, 내가 처음이 질문을 한 이후 상황이 바뀌 었습니다. 하나, 내 PC는 이제 UEFI 기반이므로 더 이상이 문제가 없습니다. 글쎄요. 랩톱에서 유사한 설정 (GPT 파티션 등)을 가져 오는 데 관심이 있었지만 마침내 작동하는 Tianocore UEFI DUET 설정을 얻을 수있었습니다.

이것은 모든 반짝이고 새로운 설정을 원한다고 가정합니다. 이전 설정을 실제로 변환하려면 행운을 빈다 . 실제로 어떤 상황에서도 드문 작업이므로 행운을 빕니다.

경고의 말 : 빠른 부팅 시간의 팬이라면 이 결정을 다시 생각할 수 있습니다 . UEFI DUET은 느리지 않지만 부팅 프로세스에 또 다른 단계를 추가하므로 BIOS / POST가 빠르지 않으면이 방식이 마음에 들지 않을 수 있습니다.

더 이상 고민하지 않고 :

  1. Linux 설정이 필요합니다. 나는 USB 스틱 (UNetBootin 포함)에서 Fedora 16을 사용했으며 실제로 사용하기 때문에 권장합니다. 어쨌든 USB 드라이브가 필요하므로 USB 드라이브가 없으면 계속하지 마십시오.

  2. UEFI DUET 빌드를 가져옵니다. 의심의 여지없이, 이것을 얻을 수있는 가장 좋은 곳은 여기 입니다. 실제 빌드 타르볼은 여기 에서 첫 번째 저장소의 마스터 브랜치 아래에 있습니다 . 오래된 것을 줘 tar -xf.

  3. 파티션을 설정하십시오. 디스크 어딘가에 200MB를 예약해야합니다 (아주 시작 부분과 첫 번째 파티션). FAT32로 포맷 할 수는 있지만 나중에 다시 포맷하는 중입니다. 파티션으로 표시되는지 확인하십시오. 여기서 GPT를 사용해야합니다.

  4. 이제 필요한 추가 소프트웨어를 설치하십시오. Fedora Live 배포판에서 필자가 필요하다는 것을 알았습니다 yum install gdisk. 그게 다인 것 같아

  5. 이제 추출 된 빌드 디렉토리로 이동하십시오. chmod +x ./duet-install./duet-install -64 -F -m /dev/sda1(여기서 /dev/sda1원하는 EFI 시스템 파티션입니다.)

  6. 손가락을 쥐고 다시 부팅하십시오. 운이 좋으면 잠시 후 TianoCore 로고가 표시됩니다. 그렇다면 당신은 아마 좋을 것입니다! USB 드라이브에 OS 설치 파일을 설정해야합니다. Tianocore는 CD-ROM / DVD-ROM 드라이브를 기본적으로 지원 하지 않습니다 (드라이버도 모릅니다).

일부 UEFI 셸 바이너리를 가지고 놀 수도 있습니다. 나는 여기 에서 일부를 발견 했다 . 그러나 아직 Tianocore로 테스트하지 않았습니다.

어쨌든 도와 주신 모든 분들께 감사드립니다.


답변

두 번째 MBR 디스크없이 BIOS 설정으로 GPT 디스크에서 Windows 8.1을 부팅 할 수있었습니다.

내 노트북은 아치 리눅스 만 설치된 상태에서 BIOS + GPT 설정 상태였습니다. 최근에 가상 머신이 할 수없는 Windows에서 일부 작업을 수행해야하므로 기존 BIOS + GPT 설정에서 Windows를 설치하는 데 어려움을 겪고 있습니다. Milind의 답변 에 따르면 Windows 부팅 파일 (Boot, bootmgr 등)을 (작은) MBR USB 드라이브에 설치했습니다. USB 드라이브가 연결된 노트북을 켤 때마다 Windows 8.1로 부팅 한 다음 드라이브를 안전하게 꽂을 수 있습니다.

단점은 분명합니다. Windows를 부팅하려면 USB 드라이브를 가지고 다녀야합니다. 그래서 나는 항상 그것을 없애려고 노력했습니다.

다른 방법으로 시도한 후 마침내 syslinux 프로젝트의 memdisk 모듈이 작동하는 것을 발견했습니다.

  • Windows 부팅 관리자를 포기해야합니다.
  • syslinux를 설치할 필요가 없습니다. 만 memdisk 모듈 (26 킬로바이트 파일)이 필요하다.
  • 많은 부트 로더를 사용하여이 모듈을로드 할 수 있습니다. 제 경우에는 제가 좋아하는 부트 로더 GRUB (버전 2)입니다.

방법에 대한 개요는 다음과 같습니다.

  • GRUB의 요구, 즉 core.img를 포함하는 작은 파티션을 충족시키기 위해 GPT 디스크를 분할하십시오. 상세 링크
  • 작은 파티션에 GRUB을 설치하십시오.
  • 로 Windows를 설치하십시오 imagex.그리고 사용 bootsect하고 bcdboot작은 MBR의 USB 디스크에 Windows 부팅 파일을 설치합니다..
  • 사용 dd또는 dd_rescue디스크 이미지로 작은 USB 디스크를 복제합니다. (USB 디스크의 작업이 완료되었습니다.) 이미지가 너무 커서 memdisk를로드 할 수 없을 수 있습니다. 이미지를 마운트하고 파일 시스템 / 파티션을 축소 할 수 있습니다.
  • 내 테스트에 따르면 Windows 부팅 파일을 설치하기 위해 실제 MBR 디스크가 필요하지 않습니다. vhd 파일을 만들어 실제 디스크로 취급 할 수 있습니다.vhd에 Windows 부팅 파일을 설치 한 후 VirtualBox 또는 QEUM에서 제공하는 도구를 사용하여 원시 (dd 스타일) 디스크 이미지로 변환 할 수 있습니다.type=fixed만들면 vhd 파일은 512 바이트 바닥 글이있는 일반 원시 디스크 이미지 (dd 스타일)입니다. 바닥 글은 “분할되지 않은 공간”으로 인식되어 무시되므로 type=fixedvhd 파일을 변환하지 않고 MEMDISK에 직접 공급하여 Windows를 부팅 할 수 있습니다.
  • memdisk를 사용하여이 디스크 이미지를로드하도록 GRUB을 구성하십시오.
  • Windows가 부팅됩니다.

reboot.pro 에서 Milind의 스레드에 대한 자세한 답변 을 찾을 수 있습니다 .


답변

작은 예비 드라이브 가있는 경우 BIOS의 GPT에서 Windows (32 또는 64 비트)를 부팅 할 수 있습니다. 플로피가 할 것입니다.

Windows 설치 / 복구 디스크로 부팅하십시오.

작은 디스크 / 플로피에 시스템 드라이브를 작성하고 bcdboot부팅 파일을 작은 디스크의 새로 작성된 드라이브에 넣습니다. 로 부트 섹터를 추가하십시오 bootsect. 변화 {bootmgr} device에를 boot. 작은 디스크로 부팅하십시오.

단계는 여기 에 자세히 설명되어 있습니다 .


답변

wzyboy에게 큰 감사합니다.

6Tb RAID를 사용하여 Windows 2012를 Dell PowerEdge 2950에 설치하려고 할 때이 문제에 직면했습니다. UEFI가 아닙니다.

나는 몇 가지 실험을 수행했다. 먼저 wzyboy가 말한 것처럼 32Mb 가상 HDD를 만들고 Microsoft 예약 파티션에서 모든 항목을 간단히 복사했습니다. Windows가 정상적으로 시작되었습니다. 그러나이 솔루션을 사용하면 Hyper-V 서비스를 시작할 수 없습니다.

memdisk wiki는 이미지 크기, 어떤 종류의 미디어를 에뮬레이트해야하는지 자동으로 결정합니다. 따라서 WMware 환경에서 가상 720K 플로피를 만들고 bootmgr, BCD 및 bootstat.dat를 복사했습니다 (만약 BCD 저장소에서 memtest 하위 메뉴를 삭제했습니다). 플로피 크기 가능한 한 작게 선택했기 때문에 더 크거나 작을 수도 있지만 시도하지 않았습니다.

이제 GPT 드라이브에서 부팅되고 Hyper-V가 잘 작동합니다.

PS는 타사 소프트웨어의 도움이 될 수 있습니다. 아무도 이런 식으로 아무것도 사용하지 않았습니까?
https://www.terabyteunlimited.com/bootit-bare-metal.htm


답변

BIOS에서 UEFI 로의 변환 기사에서는 TainoCore UEFI DUET을 사용하는 방법에 대해 자세히 설명합니다.

TainoCore 사용에 문제가 있음을 이해하지만이 기사가 도움이 될 것입니다.

기사는 말합니다 :

일부 컴퓨터는 UEFI DUET에서 작동하지 않습니다. 가장 중요한 것은 64 비트 x86-64 컴퓨터, 특히 이진 형식에서만 유용합니다. 실제로 일부 x86-64 컴퓨터에서도 제대로 시작되지 않습니다. 5 대의 x86-64 시스템에서 테스트 한 결과, 하나 또는 두 버전 모두 3 대의 컴퓨터에서 작동했습니다. 우연의 일치 일 수도 있지만 나에게 가장 적합한 두 대의 컴퓨터는 Intel CPU를 사용했지만 최악의 두 대와 버전 2.1에서는 작동했지만 버전 2.3에서는 작동하지 않는 컴퓨터에는 모두 AMD CPU가있었습니다.

이것은 포기하기 전에 여러 버전의 UEFI DUET을 시도해야 함을 의미합니다.

컴퓨터 모델을 아는 것이 도움이 될 것입니다.


답변

모든 바이오스 펌웨어가 GPT 드라이브를 다룰 수있는 것은 아니라는 점을 명심해야합니다. 공장에서 GPT 인 USB Seagate 4 Tb 드라이브가 있으며 두 컴퓨터 중 어느 것도 USB 포트에 연결된 드라이브로 부팅 할 수 없습니다.

기계는 F2 Enter Setup F10 Boot 메뉴 화면에서 정지되며이 시점에서 수행 할 수있는 유일한 작업은 전원을 껐다가 다시 켜는 것입니다.

드라이브를 MBR로 변환하여 약 2TB의 드라이브 공간을 제거하면 두 시스템 모두 드라이브가 연결된 상태에서 정상적으로 시작되고 OS로 부팅됩니다.

이 문제를 해결하기 위해 BIOS 패치를 찾고 있습니다.