실제 하드 드라이브를 직접 사용하는 대신 VHD를 사용하는 이유는 무엇입니까? VHD를 사용하면 하드 디스크 공간만 충분하면 파티션 문제를 고려할 필요 없이 10~20개의 시스템을 넣을 수 있기 때문입니다. 각 시스템은 단지 VHD 파일일 뿐입니다. 제거도 매우 편리합니다. 해당 VHD를 삭제한 다음 해당 bcd 부팅 항목을 삭제하면 됩니다. 또 다른 새로운 모바일 시스템을 만드는 것은 훨씬 더 간단합니다. VHD를 다른 모바일 하드 드라이브에 복사한 다음 부팅을 다시 구축하면 모든 것이 정상입니다.
VHD 사용을 좋아하지 않는 학생들의 경우 실제 하드 드라이브에서도 방법은 동일합니다. 모바일 하드 디스크/U 디스크에서 win7을 부팅하려면 bcd 부팅 항목을 수정하세요.
USB 플래시 드라이브에 설치하는 경우 먼저 USB 플래시 드라이브의 용량이 충분히 커야 합니다! 둘째, 완료 후 win7을 지원하는 fbwf를 설치해야 합니다(설치해야 합니다! 그렇지 않으면 U 디스크가 곧 중단됩니다. 포럼에 다운로드가 있습니다)
——————————————————————————————————————————
먼저 VHD에 WIN7을 설치한 다음 이 VHD를 사용하여 컴퓨터를 시작하고 WIN7을 실행해야 합니다. 이 단계는 매우 쉬워서 포럼에 관련 게시물이 있습니다.
아래에서 계속해서 WIN7이 설치된 VHD를 모바일 하드 디스크에 이식한 다음 모바일 하드 디스크를 사용하여 컴퓨터를 시작하고 VHD에서 WIN7을 실행합니다.
제작된 모바일 버전은 WIN7과의 호환성이 매우 뛰어납니다! 저는 이 모바일 버전의 WIN7을 사용하여 두 대의 노트북인 Lenovo Y450과 Dell의 D630을 전혀 문제 없이 시작했습니다. 또한 2001년에 사용하던 기존 데스크탑 컴퓨터인 P4 1.5G, 512M 메모리, USB1.1, BIOS 없음 USB도 시작했습니다. 부팅 옵션. 유일한 문제는 새 컴퓨터를 처음 시작할 때 드라이버를 다시 설치하는 것입니다. win7 모바일 버전의 성능은 첫째, USB2.0의 속도 제한입니다. 둘째, VHD 읽기 및 쓰기 드라이버는 하드 디스크 읽기 및 쓰기 속도를 약간 늦추지만 그렇지 않습니다. 이번 포스팅 마지막에는 로컬 win7과 모바일 win7의 성능 비교표를 올려드리겠습니다.
도구 준비
- Lenovo Y450 노트북, Windows 7 Ultimate Edition이 설치되어 모바일 WIN7을 부팅하고 win7.vhd의 내용을 수정하는 데 사용됩니다. (win7은 필요하지 않지만 어쨌든 WINPE3.0 버전과 같은 모바일 win7을 부팅하고 수정할 수 있습니다.)
- Win7.vhd, 15G, Y450 D: 드라이브에 있음
- 모바일 하드 디스크는 2개의 파티션으로 나누어진 80G입니다. 첫 번째 파티션은 다른 시스템의 시스템 파티션이고, 두 번째 파티션은 데이터 디스크입니다.
단계
1. Y450을 시작하여 Win7을 시작하고, win7 디스크 관리 도구를 열고, vhd 파일을 연결하고, D:/win7.vhd를 시스템에 연결합니다. 성공하면 컴퓨터에 새 파티션이 생성된 것을 볼 수 있습니다. 여기에 할당한 드라이브 문자는 V:이므로 V: 드라이브에는 사전 설치된 전체 win7 시스템 파일이 포함되어 있습니다.
2. USB 드라이버로 인해 이 VHD의 win7이 모바일 하드 디스크에서 시작되면 블루 스크린 오류가 보고됩니다: 007B! 따라서 다음 단계는 VHD win7의 USB 드라이버를 수정하는 것입니다.
2.1 V:windowsinf 폴더에 들어가서 다음 파일을 찾아 두 번 클릭하여 열고 해당 부분을 찾은 다음 내용을 다음과 같이 수정합니다(빨간색 문자가 내용이 추가됩니다. 빨간색 ; 기호에 주의하세요), 그런 다음 원본 파일을 저장하고 덮어씁니다.
usb.inf
;[서명속성]
;usbccgp.sys=SignatureAttributes.DRM
;usbhub.sys=SignatureAttributes.DRM
[표준허브.추가서비스]
DisplayName = %StandardHub.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0;
오류컨트롤 = 1; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbhub.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 시스템 버스 확장기
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0; SERVICE_DEMAND_START
오류컨트롤 = 1;
ServiceBinary = %12%usbccgp.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 부팅 버스 확장기
————————————————————————————————————
usbport.inf
[제어플래그]
;BasicDriverOk = *
;ExcludeFromSelect = *
;[서명속성]
;usbehci.sys=SignatureAttributes.DRM
;usbhub.sys=SignatureAttributes.DRM
;usbohci.sys=SignatureAttributes.DRM
;usbport.sys=SignatureAttributes.DRM
;usbuhci.sys=SignatureAttributes.DRM
;[서명속성.DRM]
;DRM레벨=1300
[EHCI.AddReg.NT]
HKR,,EnumPropPages32,,"usbui.dll,USBControllerPropPageProvider"
HKR,,컨트롤러,1,01
;HKLM,시스템CurrentControlSetServicesusbehci,BootFlags,0x00010003,4
[EHCI.AddService]
디스플레이 이름 = %EHCIMP.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0;
오류컨트롤 = 1;
ServiceBinary = %12%usbehci.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 부팅 버스 확장기
[OHCI.AddReg.NT]
HKR,,EnumPropPages32,,"usbui.dll,USBControllerPropPageProvider"
HKR,,컨트롤러,1,01
;HKLM,시스템CurrentControlSetServicesusbohci,BootFlags,0x00010003,4
[OHCI.추가서비스]
디스플레이 이름 = %OHCIMP.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0;
오류컨트롤 = 1;
ServiceBinary = %12%usbohci.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 부팅 버스 확장기
[UHCI.AddReg.NT]
HKR,,EnumPropPages32,,"usbui.dll,USBControllerPropPageProvider"
HKR,,컨트롤러,1,01
;HKLM,시스템CurrentControlSetServicesusbuhci,BootFlags,0x00010003,4
[UHCI.AddService]
디스플레이 이름 = %UHCIMP.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0;
오류컨트롤 = 1;
ServiceBinary = %12%usbuhci.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 부팅 버스 확장기
[ROOTHUB.AddReg.NT]
HKR,,EnumPropPages32,,"usbui.dll,USBHubPropPageProvider"
;HKLM,시스템CurrentControlSetServicesusbhub,BootFlags,0x00010003,4
[ROOTHUB.AddService]
디스플레이 이름 = %ROOTHUB.SvcDesc%
서비스 유형 = 1; SERVICE_KERNEL_DRIVER
;시작 유형 = SERVICE_DEMAND_START;
시작 유형 = 0;
오류컨트롤 = 1; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbhub.sys
;LoadOrderGroup = 기본
LoadOrderGroup = 시스템 버스 확장기
——————————————————————————————————
usbstor.inf
[USBSTOR.추가서비스]
디스플레이 이름 = %USBSTOR.SvcDesc%
서비스 유형 = 1
;시작 유형 = 3
시작 유형 = 0
오류제어=1
ServiceBinary = %12%USBSTOR.SYS
LoadOrderGroup = 시스템 버스 확장기
2.2 v:WindowsSystem32DriverStoreFileRepository를 입력합니다.
usb.inf_...라는 폴더를 찾은 다음 여기에서 방금 변경한 usb.inf 파일을 복사하여 원본 파일을 덮어씁니다.
그런 다음 계속해서 usbport.inf_...라는 폴더를 찾고 여기의 원본 파일을 수정된 usbport.inf 파일로 덮어씁니다.
계속해서 usbstor.inf_...라는 폴더를 찾고 여기의 원본 파일을 수정된 usbstor.inf로 덮어씁니다.
(참고: 이 위치에 있는 폴더 및 파일의 소유권은 TrustedInstaller에 속합니다. 직접 변경할 수는 없습니다. 먼저 로그인한 사용자에게 소유권을 변경하고 모든 권한을 부여해야 수정할 수 있습니다. 검색해 보세요. 수정 단계는 온라인으로 확인하세요.)
2.3 파일을 수정한 후 다음 단계는 레지스트리 V:windows를 수정하는 것입니다. 레지스트리를 수정하는 방법은 여러 가지가 있습니다. 아래에서 사용하는 방법이 가장 간단합니다.
2.3.1 워드패드를 열고 다음 코드를 워드패드에 복사한 후 usb1.reg로 저장합니다(usb1.reg.txt가 아님에 유의하세요!)
REGEDIT4
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesUsbBootWatcherService]
"유형"=dword:00000010
"시작"=dword:00000002
"ErrorControl"=dword:00000000
"이미지 경로"=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,73,79,73,74,65,6d,33,
32,5c,55,73,62,42,6f,6f,74,57,61,74,63,68,65,72,2e,65,78,65,00
"DisplayName"="USB 부팅 감시자 서비스"
"ObjectName"="로컬시스템"
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSafeBootMinimalUsbBootWatcherService]
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSafeBootNetworkUsbBootWatcherService]
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicespciide]
"시작"=dword:00000000
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesintelide]
"시작"=dword:00000000
2.3.2 워드패드를 열고 다음 코드를 워드패드에 복사한 후 usb2.reg로 저장합니다.
Windows 레지스트리 편집기 버전 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbccgp]
"그룹"="부팅 버스 확장기"
"시작"=dword:00000000[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbehci]
"그룹"="부팅 버스 확장기"
"시작"=dword:00000000[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbhub]
"그룹"="부팅 버스 확장기"
"시작"=dword:00000000[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbohci]
"그룹"="부팅 버스 확장기"
"시작"=dword:00000000[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesUSBSTOR]
"시작"=dword:00000000
"그룹"="부팅 버스 확장기"[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesusbuhci]
"그룹"="부팅 버스 확장기"
"시작"=dword:00000000
2.4 종료하고 다시 시작하여 로컬 VHD Win7인 V: 디스크에 Win7을 입력합니다. 2.3에서 생성된 usb1.reg, usb2.reg 파일을 찾아 더블클릭하여 실행하면 해당 파일의 내용이 VHD Win7 레지스트리에 기록됩니다.
2.5 다시 시작하고 로컬 Windows7로 들어갑니다.
3 2단계에서 USB 드라이버가 변경되었으며 이제 win7.vhd의 시스템을 모바일 하드 디스크에서 실행할 수 있습니다. 모바일 하드 디스크를 연결하고 D:win7.vhd 파일을 G:에 복사합니다. (모바일 하드 디스크 데이터 디스크, 15G 이상의 여유 공간을 미리 준비하십시오.)
4. 모바일 하드 디스크를 사용하여 컴퓨터를 시작하려고 서두르지 마십시오. 부팅이 아직 설정되지 않았기 때문입니다! 다음으로 G:win7.vhd에 대한 부팅을 수동으로 생성하겠습니다.
4.1 로컬 Windows 7 시스템 디스크의 boot 폴더 및 bootmgr 파일을 모바일 하드 디스크 F:의 루트 디렉터리에 완전히 복사합니다(모바일 하드 디스크의 C 드라이브에 해당).
4.2 c:windowssystem32 폴더에 들어가서 다음 세 파일을 F:boot 폴더에 복사합니다.
bootsect.exe - 모바일 하드 디스크 MBR에 부팅 정보를 쓰는 데 사용됩니다.
bcdedit.exe - bcd 부팅 항목을 생성하고 수정하는 데 사용됩니다.
bcdboot.exe - bcd 부팅 항목을 복사하는 데 사용됩니다.
4.3 cmd를 실행하여 명령줄을 입력하고 다음 명령을 순서대로 실행합니다.
bcdboot c:windows /sf: - 로컬 Windows 7 부팅 항목을 F: 드라이브(예: 모바일 하드 디스크)에 복사합니다.
bootsect /nt60 f: /mbr - 이 명령은 nt60 버전의 부팅 정보를 모바일 하드 디스크의 mbr에 기록합니다! 따라서 잘못된 드라이브 문자를 얻지 않도록 주의하십시오!
bcdedit /store f:bootbcd /copy {기본값} /d "Windows 7 VHD USB"
Enter 키를 누른 후 GUID를 {********-****-****-****-************} 형식으로 반환합니다. 후속 조치 명령에서 대신 {GUID}를 사용합니다.
bcdedit /store f:bootbcd /set {GUID} 장치 vhd=[g:]win7.vhd
bcdedit /store f:bootbcd /set {GUID} osdevice vhd=[g:]win7.vhd
bcdedit /store f:bootbcd /set {GUID} discoverhal on - 모바일 win7의 호환성에 매우 중요한 감지 매개변수를 켭니다. 이 기능은 hal(일반적으로 전원 관리 모드라고 함)을 강제로 감지하는 것입니다. 시작 시 시스템에 패키지되어 있습니다. 모두가 이 일의 중요성을 알고 있습니다. XP에는 이 기능이 없습니다...
bcdedit /store f:bootbcd /displayorder {GUID} /addlast
bcdedit /store f:bootbcd /timeout 5
이것저것 바꾸더니 드디어 모든 것이 바뀌었습니다. 자, 이제 모든 것이 준비되었습니다.
5 기기를 종료하고 모바일 하드 디스크를 사용하여 Y450을 시작합니다...
6 Dell D630을 시작할 때도 사용할 수 있습니다. ㅎㅎ... Windows7을 처음 시작할 때 드라이버가 자동으로 설치됩니다.
7 또한 이를 사용하여 2001년 빈티지 컴퓨터인 P4 1.5G, 512M 메모리, USB1.1을 시작할 수 있습니다. BIOS에는 USB 부팅 옵션이 없습니다. 모바일 하드 디스크를 연결한 후 모바일 하드 디스크를 볼 수 있습니다. 하드 디스크 항목으로 부팅한 후 WIN7 USB VHD 시스템에 성공적으로 진입하십시오! 물론 USB1.1이라 기동시간은 5분인데... 실행속도는 확실히 정체감이 느껴지네요... 설마, 이 옛날에는 USB2.0이 없었을 텐데요. 기계가 공장을 떠났습니다. 네트워크 카드, 사운드 카드, 그래픽 카드 드라이버 등 인식이 안되는 것도 있는데... 너무 낡았습니다!
8 내년 주류 컴퓨터인 USB3.0+SSD 솔리드 스테이트 드라이브를 시작하는 데에도 사용할 수 있습니다. 로컬 하드 드라이브보다 빠르지 않나요? ! 침 흘리는 YY...
참고: Windows 7 버전 선택과 관련하여, 최종 버전만 VHD를 지원하므로 먼저 최종 버전을 선택해야 합니다! 둘째, Windows 7 활성화 문제를 고려해야 합니다. 다른 컴퓨터에서 이 시스템을 시작하면 하드웨어가 변경되었기 때문에 Windows에서 다시 활성화하라는 메시지를 표시하기 때문입니다... 귀하의 버전이 특정 OEM 버전인 경우 다음과 같을 가능성이 높습니다. 다른 컴퓨터를 시작할 수 없습니다.