2009年4月11日 星期六

ASUS eeepc 小筆電 XP OS in SDHC card 教學步驟

在這邊發表一下去年實作eeepc的流程,



相信各位周遭朋友或多或少有人購買了小筆電,



好不好用當然是見仁見智,







這篇文章所紀錄的是 如何在小小的SD記憶卡上, 灌入windows xp 作業系統





(注意, 成功後的xp 奇慢無比 我用不到幾天就砍掉了 在記憶卡上灌上xp只能說是堪用阿 要很有耐心)





這是工作台畫面, 白色eeepc上面正在灌xp啦~



真的要學國父十次革命失敗的精神, 我大概要三次的十次革命吧, 現在回頭想想我真是瘋子囧



























ASUS eeepc 4G surf –



Windows XP in SDHC(8G) ASUS Linux in SSD(4G)



實作紀錄











P.S.其中陰影部份為我的操作註記,其餘皆是網友提供資料




資料來源:http://www.mobile01.com/topicdetail.php?f=233&t=523189




STEP 1.安裝修改過的XP到外接的USB 裝置



0. 事前準備:



.EEEPC 703 (4G surf)一台



.3.5吋硬碟(IDE 80G ,劃分10GB為主要磁碟,其他為資料區)



.DVD可燒錄光碟機



.IDE – USB線材2條



.正版XP SP2光碟




.CABSDK 工具



.Hitachi Microdrive Filterxpfildrvr1224_320



.Nlite 工具



(以上三個軟體皆在網路上下載)



.燒錄軟體(nero)



.可開機隨身碟,程式包含SPFDISK




1.拿出正版的XP SP2光碟,放進不是EEEPC的電腦裡



2.依照下列步驟修改你的XP並重新打包成ISO檔




參考網址:



http://www.ngine.de/index.jsp?pageid=4176




以下引用自:http://wiki.eeeuser.com/howto:installxp




1. Copy all files from your XP disk to a folder on your C drive. 







2. Move these files from your C:\XP_disk\i386 folder to a separate temp dir:



TXTSETUP.SIF



DOSNET.INF



USB.IN_



USBPORT.IN_



USBSTOR.IN_







3. Install Microsoft cabsdk to the temp folder; cabsdk can be downloaded here







4. Open a command prompt. Type the following:



cabarc x USBSTOR.IN_



cabarc x USBPORT.IN_



cabarc x USB.IN_



Cabarc is located in the BIN directory created by CabSDK.



Cabarc does not support wildcards like '*' or '?'







5. Delete the following files:



USB.IN_



USBPORT.IN_



USBSTOR.IN_







6. Edit the files to match the following:



txtsetup.sif:



move the following lines from [InputDevicesSupport.Load] to [BootBusExtenders.Load]



usbehci = usbehci.sys



usbohci = usbohci.sys



usbuhci = usbuhci.sys



usbhub = usbhub.sys



usbstor = usbstor.sys







7. Move the following lines from [InputDevicesSupport] to [BootBusExtenders]



usbehci = “Enhanced Host Controller”,files.usbehci,usbehci



usbohci = “Open Host Controller”,files.usbohci,usbohci



usbuhci = “Universal Host Controller”,files.usbuhci,usbuhci



usbhub = “Generic USB Hub Driver”,files.usbhub,usbhub



usbstor = “USB Storage Class Driver”,files.usbstor,usbstor







8. Add the following line to the end of [HiveInfs.Fresh]



AddReg = usbboot.inf,usbservices







9. Add the following line to the beginning of [SourceDisksFiles]



usbboot.inf = 1,,,,,,_x,3,,3







10. Save file







11. Open Dosnet.inf







12. Change [Files] block so it looks like this:



[Files]



d1,usbboot.inf



d1,_default.pif



d1,12520437.cpx



d1,12520850.cpx











13. Save and close file







14. Open USB.inf







15. Change these two sections so they look like this:







16. Change the [StandardHub.AddService] and [CommonClassParent.AddService] sections:



[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







17. Save and close file.



Open usbport.inf:



Change the [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] and [ROOTHUB.AddService] sections:



[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







18. Save and close file.



Open USBSTOR.inf:



Change / Add the lines in the [USBSTOR.AddService] section:



[USBSTOR.AddService]



DisplayName = %USBSTOR.SvcDesc%



ServiceType = 1



StartType = 0



Tag = 3



ErrorControl = 1



ServiceBinary = %12%\USBSTOR.SYS



LoadOrderGroup = Boot Bus Extender







19. Save and close.







20. Create a new file:



new file: USBBOOT.INF




Create a new file called USBBOOT.INF in the same directory as your other changed files, and put the following content into it:



[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




Save and close file.







21. Repack the files:



把CABSDK壓縮檔解開,把三個檔案(usb.inf,usbport.inf ,usbstor.inf )放進cadsdk\BIN的目錄下,到DOS介面執行以下步驟




At the command prompt in the directory where you changed the files, type the following:



cabarc n USB.IN_ usb.inf



cabarc n USBPORT.IN_ usbport.inf



cabarc n USBSTOR.IN_ usbstor.inf 







22. Delete the files:



usb.inf



usbport.inf



usbstor.inf




23. Move the following files back into your i386 directory for windows XP:



USBBOOT.INF



DOSNET.INF



TXTSETUP.SIF



USB.IN_



USBPORT.IN_



USBSTOR.IN_








把以上六個檔案修改過後,丟進i386資料夾中。




3.完成上述步驟之後,用Nlite把改好的XP打包成ISO檔,其中選擇可開機燒成映像檔(.ISO),再用NERO燒出來就可以完成XP安裝片了!




製作此光碟花了大約4天時間,雖有正版光碟,但是只要其中一小步驟做錯,就會造成後來的程序失敗,另外還有SP1,SP2不同的問題,似乎網路上測試到SP1也可以的樣子,未查證,此處採用XP PROFESSION SP2光碟








4.安裝XP到USB外接硬碟裡:



此處我經歷過安裝不順利的過程,因要準備兩條USB TO IDE線材,還要有空硬碟,因為市面上的2.5吋外接式硬碟大多是SATA介面,似乎要另外加載驅動程式才可順利安裝XP,但我用新購買的WD 1TB SATA硬碟安裝不起來,選擇光碟開機後,不會進入原本的XP安裝程式…最後採取IDE硬碟來灌系統



1.準備好你的EEEPC







2.把外接USB硬碟、外接USB光碟機接到EEEPC上







3.修改好的XP光碟放入外接光碟機







4.按下EEEPC電源鍵







5.看到開機畫面後按下”F2”進入BIOS設定







6.關閉IDE master (把它從auto改設為Not detected),這樣裝XP重開機的時候就不會跑到SSD去了~







7.OS install請維持在FINISHED,這樣安裝比較快







8.開機順序改為1.USB硬碟→2.USB光碟機→3.Disable)







9.按”F10”儲存並離開BIOS,EEEPC會自動重新開機







10.看到開機畫面按下”ESC”,選擇USB光碟機開機







11.依照正常順序安裝XP到USB硬碟裡(記得USB硬碟要整個把磁區刪除之後再設定新的磁區,並且格式化為FAT格式,否則無法正常安裝)



(在此把10G格式化為FAT32)







12.耐心地等待它自動格式化→複製檔案→重新啟動→安裝(很久)→重新啟動







在安裝過程中,會一直詢問是否要繼續安裝,因為似乎偵測不到某些硬體(未裝驅動程式)







13.完成 (開機中途會出現”你沒有分頁檔”之類的錯誤訊息,並不會影響功能,按掉就好)




STEP 2.開機完成之後,進入系統設定,關閉分頁檔(我的電腦右鍵內容進階設定進階變更沒有分頁檔案設定按鈕)



STEP 3.接上外接光碟機,放入ASUS隨附的回覆光碟,安裝驅動程式,和你所有需要的軟體(在USB HDD上裝比較快,如果你要等到GHOST到SD上再裝,安裝要花的時間會比較長)




STEP 4.按照說明書上的步驟瘦身,把遠端協助、系統還原、休眠功能等等都關了,IE的暫存容量也調小一點(我是設成50MB),系統設定裡一些開始和復原的記錄功能也關一關




 








STEP 5.改變內建SD讀卡機的裝置性質 (USB card reader → HDD)



在eeepc上,外接灌好XP的硬碟上(XP系統),執行以下步驟







1.等到驅動程式灌好之後,在開始→執行→輸入regedit







2.找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR\



裏面有 Disk&Ven_USB2.0&Prod_CardReader_SD0&Rev_0100



選 Hardware ID==>按右鍵==>編輯, COPY 第一行的資料







3.解開Hitachi Microdrive Filter,編輯 cfadisk.inf , 找到 [cfadisk_device]



刪除全部,並加入一行



%MicroDrive_devdesc% = cfadisk_install,XXXXXXXX (Step2 copy的文字)



p.s.懶得做以上步驟,就copy下面這行也可以:



%Microdrive_devdesc% = cfadisk_install,USBSTOR\DiskUSB2.0__CardReader_SD0__0100



存檔,關閉







4.到裝置管理員,找到磁碟機/SD卡, 強行變更 driver 為 step3修改的 cfadisk.inf







5.關機,插入SD卡







6.開機,至”管理磁碟”及”我的電腦”檢查SD卡是否已被系統辦認為硬碟(這裡系統會花一點時間去辦認,要等一段時間)







7.如果是,那你就成功啦







8.關機,拔下SD卡及USB硬碟。




STEP 6.把裝好XP的USB 硬碟資料全部GHOST到SD卡上



1.把拔下來的USB硬碟及SD讀卡機都接到另一台非EEEPC的電腦



以下部分如果在eeepc上製作ghost,會失敗







2.利用SPSDISK把8G的SD卡切成兩個磁區,我是切4G+4G







3.用視窗版的GHOST執行Partition(USB 硬碟) to Image,先把xp的image存到非eeepc的電腦裡







4.再用ghost執行Partition(SD) from image,把剛才做的image復原到SD卡裡







5.GHOST完之後把SD拔下,先別急著插回EEEPC







6.啟動EEEPC,按F2進入BIOS,把先前關閉的IDE master改回Auto detect,按f10存檔離開,重開機(這是把SSD再重新啟動,要不然原本的LINUX就辦法用了)







7.重開機之後再按F2進BIOS,確定SSD已經被啟動了,再選擇Load default(或按F9)回復原本的BIOS設定(包括開機順序也會回復),按F10存檔離開,關機







8.這時可以把SD卡插入EEEPC了,開機,按ESC,選擇SD Card Reader開機







9.成功!進入系統後,XP會找到SSD這個裝置,並且安裝驅動,這段時間系統會很慢,先別急著使用其他程式,安裝完之後會要求重啟系統







10.重新開機之後就可以正常使用了!




另外,可以點兩下我的電腦,在你的C槽上按右鍵,



選內容,然後點選"硬體"標籤,選擇SD CARD READER後按下面的內容,再選擇"原則"標籤,把原則設成"磁碟效能最佳化",這樣系統會更順




P.S.如果開機之後進不了原本的LINUX系統的話,就只好做系統還原嚕,我幫幾個朋友灌了XP,有的人會出現這樣的情形,有的人不會。




 




 








後記:



 此製作過程中,難處有準備材料,看懂網路上零散文章,要對電腦硬體設施熟悉等,另外還要有細心度與耐心,因為一開始看別人的文章,絕對看不太懂,等到看到第3天時,才懂網友碰到的問題,或是整個討論串在說些什麼,我想以後如果遇到自己不懂得問題時,也會遭遇到此種困難,方法沒有別的,就是多問別人,或是多花時間蒐集資料,才能順利解決問題。



 在此感謝學長,同學,老師的大力幫忙與協助,eeepc能推起小筆電市場的波瀾不是沒有道理的,由此,更加覺得小筆電的多功能性,而改裝雙系統之後的效能穩不穩定,這就要看之後的人如何去應用了。



1 則留言: