มือเซียน
เป็นสมาชิกเมื่อ: 17/4/2007 16:25
กลุ่ม:
ผู้คุ้มกฎ
|
วิธีการติดตั้ง Windows XP ใน USB Harddiskมีหลายๆ คนที่ได้ Asus Eee PC มาแล้วเปลี่ยนระบบปฏิบัติการเป็น Windows XP ทันทีโดยไม่ลังเล แต่ก็มีหลายๆ คนที่อยากใช้ Eee ในแบบที่มันเป็นแม้จะต้องเรียนรู้ระบบปฏิบัติการใหม่อย่าง Xandros Linux ก็ตาม และก็มีหลายๆ คนที่อยากใช้ทั้งสองระบบปฏิบัติการในเครื่องเดียวกันเลย ผมเองก็เป็นหนึ่งในนั้น และการใช้ Xandros Linux นั้น จำเป็นต้องใช้กับหน่วยความจำ SSD ในเครื่องเท่านั้น ดังนั้นหากต้องการใช้ Windows XP ด้วย ก็ต้องใช้งานหน่วยความจำอื่น ผมเลือก USB Harddisk มาเป็นพระเอกของเรา การติดตั้ง Windows XP ในหน่วยความจำ SSD ในเครื่องนั้นง่ายแสนง่าย ก็เหมือนการติดตั้งในเครื่องคอมพิวเตอร์ทั่วไป เพียงแค่บูทแผ่นติดตั้งด้วย External CD แล้วก็ตอบคำถามไปเรื่อยๆ รอสักเกือบๆ ชั่วโมงก็จะได้ Windows XP ใน Eee มาใช้งานแล้ว แต่การติดตั้งไปที่หน่วยความจำภายนอก เช่น USB Harddisk นั้นกลับทำไม่ได้ง่ายๆ แบบนั้น เนื่องจากตัวระบบปฏิบัติการเองไม่ยอมให้ติดตั้ง ต้องมีการแก้ไขค่าต่างๆ พอสมควร จึงจะทำการติดตั้งได้ สิ่งที่ต้องมี :- เครื่องคอมพิวเตอร์ที่มี CD Writer
- แผ่นติดตั้ง Windows XP SP1/SP2 ดั้งเดิมที่ไม่ถูกดัดแปลงมาก่อน
- โปรแกรมแก้ไขไฟล์ ISO เช่น WinISO หรือ UltraISO
- โปรแกรม CAB SDK
- โปรแกรมเขียนแผ่น CD ที่สามารถเขียนแผ่นจากไฟล์ ISO ได้
มาเริ่มขั้นตอนยากๆ กันดีกว่า1. ขั้นแรกให้เปิดโปรแกม WinISO หรือ UltraISO ขึ้นมา ขอยกตัวอย่างเป็น UltraISO ก็แล้วกัน แล้วสร้างไฟล์นามสกุล ISO ขึ้นจากแผ่นติดตั้ง Windows XP ที่อยู่ใน CD Drive โดยคำสั่ง Tool > Make CD/DVD Image จากนั้นก็เปิดไฟล์ ISO ที่เพิ่งสร้างขึ้นมาด้วยคำสั่ง File > Open 2. คัดลอกไฟล์ต่อไปนี้ออกมาไว้ที่โฟลเดอร์ใหม่ - TXTSETUP.SIF
- DOSNET.INF
- USB.IN_
- USBPORT.IN_
- USBSTOR.IN_
3. คลายไฟล์ zip ของ cabsdk ที่ดาวน์โหลดมา แล้วคัดลอกโปรแกรมชื่อ CABARC.EXE มาไว้ในโฟลเดอร์ที่เก็บไฟล์ทั้งห้าข้างต้น
4. ไฟล์นามสกุล IN_ เป็นไฟล์ที่ถูกบีบอัดมา ดังนั้นต้องใช้โปรแกรม CABARC.EXE ช่วยในการคลายไฟล์ออกมา ให้เข้า Command prompt และเปลี่ยนไปอยู่ในโฟลเดอร์ที่เก็บไฟล์ทั้งห้านั้นๆ แล้วใช้คำสั่ง cabarc x usb.in_ cabarc x usbport.in_ cabarc x usbstor.in_ หลังจากนั้นจะได้ไฟล์ใหม่อีกสามไฟล์ชื่อ USB.INF, USBPORT.INF และ USBSTOR.INF สามารถลบไฟล์นามสกุล *.IN_ เดิมออกได้เลย
5. คราวนี้ก็มาถึงนานยากหน่อยแล้ว คือต้องแก้ไขค่าต่างๆ ในไฟล์ทั้งหมดนี้
5.1 เริ่มต้นกันที่ไฟล์ TXTSETUP.SIF ก่อนเลย ขั้นแรกคือย้ายค่าต่างๆ เหล่านี้ในส่วน [InputDevicesSupport.Load] ไปที่ [BootBusExtenders.Load]
[BootBusExtenders.Load] pci = pci.sys acpi = acpi.sys isapnp = isapnp.sys acpiec = acpiec.sys ohci1394 = ohci1394.sys usbehci = usbehci.sys usbohci = usbohci.sys usbuhci = usbuhci.sys usbhub = usbhub.sys usbstor = usbstor.sys
[InputDevicesSupport.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys usbccgp = usbccgp.sys hidusb = hidusb.sys serial = serial.sys serenum = serenum.sys
usbstor = usbstor.sys แล้วก็ย้ายค่าต่างๆ จาก [InputDeviceSuport] มาที่ [BootBusExtender] [BootBusExtender]pci = "PCI-Bustreiber",files.pci,pciacpi = "ACPI Plug &Play-Bustreiber",files.acpi,acpi isapnp = "ISA Plug &Play-Bustreiber",files.isapnp,isapnp acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec ohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394 usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci usbohci = "Open Hostcontroller",files.usbohci,usbohci usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor [InputDevicesSupport]
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci usbohci = "Open Hostcontroller",files.usbohci,usbohci usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhu hidusb = "HID-Parser",files.hidusb,hidusb serial = "Treiber f�r seriellen Anschluss",files.none,serial serenum = "Enumerator f�r seriellen Anschluss",files.none,serenum
usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp
จากนั้นก็เพิ่มค่าใน [HiveInfs.Fresh] [HiveInfs.Fresh] AddReg = hivedef.inf,AddReg AddReg = hivesys.inf,AddReg AddReg = hivesft.inf,AddReg AddReg = hivecls.inf,AddReg AddReg = hiveusd.inf,AddReg AddReg = dmreg.inf,DM.AddReg AddReg = usbboot.inf,usbservices
และที่ [SourceDisksFiles] สำหรับค่านี้จะเติมตรงไหนก็ได้ในส่วนนี้ จะเป็นที่บรรทัดแรกก็ได้ ไม่จำเป็นต้องไล่หาตามตัวอย่าง [SourceDisksFiles] usbboot.inf = 1,,,,,,_x,3,,3 bootvid.dll = 1,,,,,,3_,2,0,0,,1,2 kdcom.dll = 1,,,,,,3_,2,0,0,,1,2
หลังจากแก้ไขแล้วก็บันทึกไฟล์ให้เรียบร้อย 5.2 มาที่ไฟล์ DOSNET.INF ให้เพิ่มค่าเข้าไปหนึ่งค่าในส่วน [Files] จากนั้นก็บันทึกไฟล์ให้เรียบร้อย [Files] d1,usbboot.inf d1,_default.pif d1,12520437.cpx d1,12520850.cpx
5.3 แ้ก้ไขไฟล์ USB.INF บ้าง โดยให้แก้ไขค่าตามที่ทำตัวเข้มไว้ในส่วน [StandardHub.AddService] และ [CommonClassParent.AddService]
[StandardHub.AddService] DisplayName = %StandardHub.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbhub.sys LoadOrderGroup = Boot Bus Extender CommonClassParent.AddService] DisplayName = %GenericParent.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbccgp.sys LoadOrderGroup = Boot Bus Extender
5.4 มาที่ไฟล์ USBPORT.INF ให้แก้ไขค่าในส่วนต่างๆ ตามตัวอย่าง แล้วก็บันทึกไฟล์ให้เรียบร้อย [EHCI.AddService] DisplayName = %EHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbehci.sys LoadOrderGroup = Boot Bus Extender [OHCI.AddService] DisplayName = %OHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbohci.sys LoadOrderGroup = Boot Bus Extender [UHCI.AddService] DisplayName = %UHCIMP.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbuhci.sys LoadOrderGroup = Boot Bus Extender [ROOTHUB.AddService] DisplayName = %ROOTHUB.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 0 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\usbhub.sys LoadOrderGroup = Boot Bus Extender
5.5 แก้ไขและเพิ่มค่าในไฟล์ USBSTOR.INF ตามตัวอย่าง แล้วบันทึกไฟล์ให้เรียบร้อย [USBSTOR.AddService] DisplayName = %USBSTOR.SvcDesc% ServiceType = 1 StartType = 0 Tag = 3 ErrorControl = 1 ServiceBinary = %12%\USBSTOR.SYS LoadOrderGroup = Boot Bus Extender
5.6 สร้างไฟล์ใหม่ชื่อ USBBOOT.INF แล้วใส่ค่าดังต่อไปนี้ แล้วก็บันทึกไฟล์ไว้ในโฟลเดอร์เดียวกัน [usbservices]
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft
USB Universal Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1
6. จัดการบีบอัดไฟล์ให้เหมือนเดิมโดยใช้โปรแกรม CABARC.EXE โดยใช้คำสั่งดังนี้ cabarc n USB.IN_ usb.inf cabarc n USBPORT.IN_ usbport.inf cabarc n USBSTOR.IN_ usbstor.inf
7. ลบไฟล์ USB.INF, USBPORT.INF และ USBSTOR.INF ออกไปได้เลย 8. คัดลอกทุกไฟล์คือ TXTSETUP.SIF, DOSNET.INF, USBBOOT.INF, USB.IN_, USBPORT.IN_ และ USBSTOR.IN_ กลับไปไว้ในไฟล์ ISO เดิมแล้วก็บันทึกไฟล์ ISO นั้นๆ ให้เรียบร้อย 9. นำไฟล์ ISO ที่ได้ไปเขียนเป็นแผ่นซีดีด้วยโปรแกรมเขียนแผ่นที่เปิดไฟล์ ISO ได้ เช่น Nero Buring ROM จะได้แ่ผ่นติดตั้ง Windows XP ที่สามารถติดตั้งไว้ใน USB Harddisk หรือ USB Flash Disk ได้ 10. เสียบ External CD Drive ที่มีแผ่นติดตั้ง Windows XP ที่แก้ไขแล้ว และ USB Harddisk หรือ USB Flash Disk ไว้ที่ Eee แล้วเปิดเครื่อง 11. เมื่อหน้าจอบูทปรากฎขึ้น ให้กด F2 เข้าสู BIOS เลือกไปที่ Advanced > IDE Configuration แล้วเปลี่ยนค่า IDE Master ให้เป็น Type : Not Installed 12. ไปที่ Boot > Hard Disk Drives แล้วเปลี่ยนค่าของ HDD:SM-SILICONMOTI] เป็น Disabled เปลียนค่าของ Boot Devices Priority ให้ 1st Boot Device เป็น ATAPI CD-ROM 13. เลือก Exit > Exit &Save Change 14. เครื่องจะบูทอีกครั้ง สามารถติดตั้ง Windows XP ตามปกติ โดยไดรฟ์ปลายทางที่ติดตั้งจะเป็น USB Harddisk / USB Flash Disk ซึ่งในหน้าที่แสดงพาร์ติชั่นต่างๆ ไดร์ฟนี้จะต้องเป็น C: หากยังไม่ใช่ ให้ย้อนกลับไปตรวจสอบการแก้ไข BIOS ก่อนหน้านี้ 15. หลังจากติดตั้งเสร็จเรียบร้อยแล้ว ให้แก้ไขค่าใน BIOS กลับมาเหมือนเดิม เวลาจะบูทเข้า Windows XP ให้กด ESC ในหน้าบูท จะมีเมนูมาให้เลือกว่าจะบูทจากอุปกรณ์ตัวไหน หากทำทุกอย่างถูกต้อง ก็จะสามารถใช้ Windows XP ที่อยู่ใน USB Harddisk ได้อย่างสบายๆ อาจจะทำงานช้ากว่าหน่วยความจำ SSD ภายในเครื่องบ้าง แต่ก็ทำให้สามารถเลือกใช้สองระบบปฏิบัติการได้ในเครื่องเดียวกัน ?
โพสเมื่อ : 3/12/2007 9:07
|