因為有備份/分割/救援的需求,需要開機到 DOS 下來進行一些操作。由於 Windows XP 已經沒有製作開機片的工具了,找了一下發現網路上有一些相關教學,可以利用 FreeDOS 來製作 USB 隨身碟/SD 卡的開機媒體,遂整理如下:
參考以下文章:
- EEEPC_SD卡開機片製作(含工具程式)與GHOST 系統備份(XP)教學(圖解) - Mobile01 討論群組
- 愛作夢的男人: FreeDOS 用 USB Flash 開機
1. 取得 HP USB Disk Storage Format Tool
目的是取得 HPUSBFW.EXE 檔案,可以從 Google 搜尋單檔或是自 HP 支援中心下載安裝檔案:Windows-based Format Utility for HP Drive Key or DiskOnKey USB Device下載頁面。安裝完畢後也同樣可以取得這個執行檔。HP提供的這個工具可以幫我們把 USB/SD 卡給格式化成開機用媒體,而不像以前的 Windows 只限軟碟機。
2. 取得 FreeDOS 可開機映像檔
FreeDOS 是一套相容 MS-DOS 的自由作業系統,版權方面沒有疑慮。雖然網路上可以找到許多 Bootdisk 是 MS-DOS 的,但畢竟是版權物。用 FreeDOS 不僅取得容易,也沒有版權疑慮,可以安心使用。
我們必須下載由 FreeDOS 官方作好的 Bootdisk,如果你是下載官方的 iso 映像檔的話那還需要安裝才能用,就跟其他作業系統一樣。我們要的是已經能開機執行的 Bootdisk。
官方 Bootdisk 提供點: http://www.fdos.org/bootdisks/
我們下載 FDSTD.288.imz 來用。
3. 下載 WinImage (共享軟體)
要在 Windows 下處理 .img/.imz 檔實在沒有什麼好方案,只有共享軟體 WinImage 比較好用,可惜它只能試用30天,反正我們用來取出 Bootdisk 內容後就夠了。
安裝完 WinImage 或直接取得 zip 解壓取得執行檔後,用 WinImage 開啟 FDSTD.288.imz,執行 Image → Extract,將所有檔案解壓到資料夾,這個即是 FreeDOS。搭配 HPUSBFW.EXE 可以格式化出一個開機媒體。
4. 進行格式化
使用 HPUSBFW.EXE 工具格式化 USB 隨身碟。勾選 Quick Format 快速格式化,並勾選 Create a DOS startup disk,指定剛才解壓 Bootdisk 的資料夾,按下 Start 開始格式化並完成開機媒體製作。
雖然現在 USB 隨身碟/SD 卡已經可以用來開機,但是裡面只有最基本的 Kernel 和 Shell,我們再把更完整的 FreeDOS 丟進去。再丟進去之前我們先更新一下。
5. 補/更新一些驅動 (進階者使用)
Bootdisk 附上的驅動程式其實已經過時了,有些如滑鼠、光碟機驅動也沒有附上去。如果有需要可以自行升級,我的建議是全部升一升免得到時候會用到。
- UMBPCI [http://www.uwe-sieber.de/umbpci_e.html]
內建的 UMBPCI 太舊了,像 EeePC 的 Intel 945GM 晶片組就在舊版不支援,如果有要使用的話記得要下載新版取代舊版,才能在 EeePC 環境正常載入。取出 umbpci.sys 即可。
- CTMOUSE [http://cutemouse.sourceforge.net/]
滑鼠驅動,讓操作更方便。只需要 ctmouse.exe 即可。
- XCDROM [if CD-ROM needed]
光碟機驅動。如果你有需求的話請從 FreeDOS 官方 XCDROM 下載。只需要 xcdrom.sys 檔案。
- 4DOS [http://4dos.isgreat.org/]
更強的 Shell,自行決定是否使用。如果需要只需抽出 4dos.com 即可。
- JEMM [http://www.japheth.de/] (取代內建 EMM386 嚴重錯誤時用)
內建的 EMM386 在我的 EeePC 一載入就發生嚴重錯誤,無法繼續工作。如果你不想用過度依賴晶片組的 UMBPCI 可以選用 JEMM386 取代 EMM386,至少載入後不會當機。
6. 大改 config.sys 和 autoexec.bat
Bootdisk 預設的 config.sys 和 autoexec.bat 都不太適合,我們為他做些修改。如果你以前就熟悉這兩個檔案,那就放手大改吧。不熟悉的話也有範例可以參考。以下是我的設定 (我使用新版 UMBPCI 取代內建 EMM386)
config.sys
LASTDRIVE=Z
BUFFERS=20
FILES=40
DOS=HIGH,UMB
DEVICE=\FDOS\HIMEM.EXE
DEVICE=\UMBPCI.SYS
DEVICE=\XCDROM.SYS /D:ATAPICDD ; if CD-ROM needed only
;SHELLHIGH=\COMMAND.COM /E:256 /P ; FreeDOS default shell
SHELLHIGH=\4DOS.COM \ /P ; if your want 4dos as your default shell
autoexec.bat
@ECHO OFF
\FDOS\CTMOUSE
\FDOS\SHSUCDX /D:ATAPICDD
SET PATH=.;\FDOS
CLS
ECHO Welcome to FreeDOS (http://www.freedos.org)!
參考:FreeDOS Wiki CONFIG.SYS example
7. COPY 完整內容到 USB/SD卡
只要將剛剛解壓 Bootdisk 的資料夾內所有檔案丟到 USB/SD 覆蓋就可以了。
完成之後,就可以在 BIOS 下設定由 USB 磁碟或 SD 卡開機,請參照主機板說明書。開機後讀取應該就可以看到 FreeDOS Kernel FAT 等等字樣,代表成功了。
再來就可以丟 spfdisk, ghost (原檔請購買 Ghost 授權或自行大顯神威) 等救援/分割用程式,讓這開機碟更有作用。
只是要提取IMG/IMZ中的檔案的話用7-Zip 9.x開啟即可。
回覆刪除而Jack所寫的xcdrom有新版(UIDEJR)
http://johnson.tmfc.net/dos/driver.html
我看新版要搭配XMGR.SYS檔,就沒特別寫了。
回覆刪除舊版的應該也能順利驅動ATAPI CD-ROM才對。
其實整個過程我最難理解的,還是HIMEM/EMM386的記憶體關係了。
什麼EMS, UMA, XMS...
好像有的不載入運作程式也不會出事的模樣。
還有UMBPCI應該可以取代EMM386吧?兩個作的事好像不太一樣耶。
其實我直接用這個了
回覆刪除http://www.hiren.info/pages/bootcd-on-usb-disk
記憶體管理的部分可以只載入一個JEMMEX.EXE就全部搞定了,
回覆刪除一個抵兩個,又簡單。這樣就不必看晶片組或者煩惱什麼XMS,UMA的。
>>bootcd-on-usb-disk
不錯,直接拿救援CD套裝塞進USB/SD,不過我喜歡土法煉鋼。
煉出一個作業環境後再丟些工具也是OK的。
JEMMEX穩定性沒MS HIMEM+MS EMM386好,有時用JEMMEX會遇到unhandled exception死掉。
回覆刪除Jack的U系驅動程式不用搭配XMGR.SYS也能用。