SPecialFDisk

程 式 介 紹

SPFDisk 是一支綜合了『硬碟分割工具(FDisk)』及
 『啟動管理程式(Boot Manager) 』的軟體,它是完全
 免費的,只要使用者不具任何商業交易行為(對於
 合理的酌收媒 體或載體之費用,例如:磁片、光碟
 、網路通訊...等等,則不含在此條件內 ),歡
 迎您隨意拷貝使用,但是,只要違反上述條件,
 作者將有權隨時停止您對於本程式的使用及複製權

◎ 本軟體內建系統所顯示的中文字,
 是採用國喬電腦股份有限公司所授權之中文字型,
 在進入本軟體時您會看到一句授權的字串,在該授權
 的條約限制之下,使用者絕不可對此軟體進行任何買賣
 行為,包括作者本人在內,除非作者不再使用該公司的字型
 ,控制權才會完全屬於作者!

◎ 內容介紹:

. 啟動管理程式簡介
. MS-DOS 下安裝的啟動管理程式
. MS-DOS 硬碟分割工具(FDISK)之威力加強版
. 對分割表的認識
. 本啟動管理安裝程式及硬碟分割工具的特點
. 硬體需求
. 安裝前的建議
. 挽救損毀的分割表 ?!
. 後記
 


. 啟動管理程式簡介:

  啟動管理程式(Boot Manager)是促進各作業系統間彼此合平共存的產物。若一部電腦灌了兩套以上的作業系統,啟動管理程式就派上用場了,它能讓使用者於開機時選擇想要進入的作業系統。既然是作業系統前的程式,藏身的地點就有別於一般程式,通常可安裝的地方有 MBR (Master Boot Record)及軟、硬碟的啟動磁區,前者安裝最方便,但相容性較差,而後者相容性雖高,但必須再以分割程式(FDISK)建立一個新的 Partition 才可以安裝。


. MS-DOS 下安裝的啟動管理程式:

  LILO (LInux's LOader)是筆者見過最強的啟動管理程式,而 OS/2 則是使用者介面最佳的,但它們均無法在 MS-DOS 環境下安裝,實在是相當可惜,畢竟使用微軟作業系統的佔了絕大多數,因此,筆者試著綜合兩套的優點,寫了一支全新的啟動管理程式,雖然離目標相去甚遠,不過應該足以應付目前 PC 常用的作業系統。再一 次的強調,它是完全免費的呦! 


. MS-DOS 硬碟分割工具(FDISK)之威力加強版:

 本程式的另一個工具是硬碟分割程式(FDISK),筆者會想撰寫的原因,實在是因為 MS-DOS 提供的硬碟分割程式(FDISK)功能不足,舉例如下:

  1. 一部硬碟只能建立一個主分割(Primary)
  2. 無法更動系統 ID (分割種類)。此功能在 Linux's FDISK 具備,且在多作業系統共存的環境下,筆者認為它是需要的。
  3. 無法隨心所欲設定分割在硬碟上的位置。
  4. 使用 Linux's FDISK 所建出來的分割表,在某些情況下會發生 MS-DOS FDISK 無法順利讀出,或者是讀出的資訊不正確。
  5. 建立分割一定會破壞啟動磁區內容,故無法用來救援分割表。
  6. 最後一點是筆者覺得最嚴重的,在每一次的更改動作之後就立即儲存,絲毫沒有反悔的餘地(粗心人最怕)

由於上述的種種使得筆者興起撰寫一套 FDISK 的念頭,其中包含幾個MS-DOS FDISK 所沒有提供的功能,且可以在不傷資料的情況下輕易完成分割大小的調整,也可以像 MS-DOS's FDISK 般放棄分割內的資料產生新的分割,最主要的是在本程式中,不論使用者做了何種可能危害硬碟資料的動作,例如:砍掉分割...等等,只要沒有選擇儲存,則絕對不會更動硬碟上的任何資料,所以除了儲存的選項之外,使用者可以儘情的去試驗每一項功能,同時本程式在儲存分割表方面也提供了建立 UNDO 檔的功能,讓試用者可以比較安心的試用。  


. 對硬碟分割表的認識:

  分割表是硬碟分區塊使用時的資訊儲存處,位於第 0 面、第 0 軌、第 1 磁區,若將一部 1.2GB 的硬碟分成 500MB 700MB,則某些資訊會以特定的格式存放在硬碟分割表中,每個分出來的區域稱為一個分割(Partition),像上例就有兩個分割。每個分割在硬碟上的開始與結束位置均不同,是故分割表內必須記錄各自的邊界資料,有的分割程式(包括本程式)於建立分割時會要使用者輸入『啟始磁柱』和『結束磁柱』,如此就是直接在設定邊界了。

  分割可分為幾個種類,分別是主分割(Primary)、擴充分割(Extended)和邏輯分割(Logic),其中,主分割的數量固定為 4 個,而擴充分割也是主分割的成員之一, 唯一不同的是,擴充分割內還可建立一個新的邏輯分割表,該分割表上又可產生一 個邏輯分割,如果要建一個以上的邏輯分割,則分割程式會自動在方才建立的邏輯分割表上產生一個擴充分割,這樣就可再建立新的邏輯分割表,如此不斷的延續下去,猶如一條鏈子,直到主要的擴充分割所涵蓋之區域用盡,故可將一部硬碟切成 N 塊區域使用。不過,只要其中的一個邏輯分割表壞了,則其後方所延續下去的邏輯分割表將無法順利找到,因為鏈子斷了!

  不同種類的分割在佔據硬碟的區域上就有不同的限制,主分割及擴充分割可配置的範圍是整部硬碟的空間,而邏輯分割則是存在擴充分割內部,故受限於該擴充分割的啟始及結束邊界。 



. 本啟動管理安裝程式及硬碟分割工具的特點:

▲ 啟動管理安裝程式:

  1. MS-DOS 環境下執行。
  2. 使用者介面全面中文化,對於初學者來說或許能降低其陌生的感覺。
  3. 可針對某個開機選項或整體選項加駐『通行密碼』。
  4. 可選擇安裝在 MBR 或某部硬碟上的某個主分割之啟動磁區,也可安裝在軟碟上。
  5. SPFDisk 安裝入的啟動管理程式(SPF Boot Manager),於開機時所呈現之開機選單是採用光棒式操作介面。
  6. 本程式使用者介面幾乎都採用是光棒式操作選單,可讓使用者用的較輕鬆。
  7. 可啟動第二部硬碟上的主分割 DOS ,且將該部硬碟化為第一部硬碟!
  8. 開機時可隱藏同種類之主分割,使其不會相互干擾開機。
  9. 可將軟碟啟動加入本啟動管理程式,不需再更改 CMOS 設定!
  10. 安裝時可選擇是否建立 UNDO 檔,如果由於程式本身的 Bug 導致安裝時 破壞了使用者的磁碟系統,則可利用此檔立即復原安裝前的分割狀態!
  11. 可設定虛擬按鍵,開機時自動模擬按下使用者設定的數個按鍵,倘若有第二道選單時,將能減化選單的層數!例如 Win95 開機時若按下 F4 可進入舊版的 MS-DOS,而本程式可達成將 Win95 DOS 均加入開機選單內,且選用 MS-DOS 開機時由本程式代替按下 F4 鍵進入。

▲ 硬碟分割工具:

  1. 支援超過 8.4GB 之硬碟。
  2. 不論在此工具中作了何事,只要沒有在出現『將立即動作』的對話框時回答 Y,且離開時沒有選擇儲存,則絕不會侵犯硬碟。
  3. 可建立四個主分割。
  4. 提供『破壞性』及『非破壞性』兩種儲存方式,如此便可讓使用者決定是否要清除啟動磁區,這對『分割大小的調整』或『救援』來說有相當的幫助,使用者可以在調整 DOS 分割大小之後仍不會傷害到原來的資料。
  5. 可以更動 System ID
  6. 建立主分割時可由使用者自定啟始磁柱,故可跳過損壞的磁柱區域。
  7. 可隱藏硬碟上的某個分割,使其重新開機後如隱形一般。
  8. 可調換同一部硬碟上同種類(指主分割或邏輯分割)之兩分割順序。
  9. 儲存分割表時可讓使用者選擇建立 UNDO 檔,如果由於程式本身的 bug 導致儲存後破壞了使用者的磁碟系統,則可利用此檔立即復原安裝前的磁碟分割狀態!
  10. 若更動某個 DOS or OS/2 分割的尾部邊界(該空間會變大或變小),則理論上當選擇『非破壞性』儲存時,該分割的啟動磁區內容也應該要隨著調整,本程式內建的硬碟分割工具可讓使用者選擇是否由程式代為調整。


. 基本需求


. 安裝前的建議:

  如果您是初次使用本程式,那麼筆者建議您,先建立一張開機片,且磁片內至少要有同版本的 sys.com format.comdebug.exefdisk SPFDisk,並閱讀本程式附上說明檔內的注意事項,若要安裝本啟動管理程式,最好先安裝到軟碟上試驗,等確定可以開機後,再進行硬碟的安裝;如果不能順利開機,很可能是該啟動選項的硬碟、分割資訊設定錯誤,或是本程式發現了新的 Bug ,請等到問題解決後,再安裝到硬碟上,以免發生無法開機的糗境,同時也建議您,當程式詢問是否建立 Undo 檔時,最好選擇建立在軟碟上!。  


. 挽救損毀的分割表 ?!

  使用特殊工具事先備份分割表,當損壞時再使用特殊工具蓋回即可,一般的防毒程式都有這個功能,所以這個問題應該如此解決,但如果沒有備份要怎麼辦呢? Norton DiskEdit 是一套絕對不會錯的選擇,它可讓使用者以最簡單的方式隨意填入分割表的內容,但缺點是分割表的內容都必須由使用者自行負責,這點倒是蠻累的,所以筆者建議讀者可試著將 SPFDisk Norton's DiskEdit 配合使用,以彌補那一點點的美中不足,畢竟 Norton Utilities 在筆者及多數人心目中是最強的修復程式!

  SPFdisk 的非破壞性存檔在重建分割表時不會破壞啟動磁區,且只要輸入啟始磁柱及結束磁柱,有必要時更改系統 ID ,或者利用本程式提供的『顯示磁區』功能查看資料,其餘的部份皆由程式自動計算產生,如此對於分割表的救援就更容易了。本程式也具備搜尋啟動物件的功能,同時也提供由 DOS 啟動磁區參考『復原』分割表的功能,這些都可以善加利用!

 ※ 救援範例:

  1. 硬碟原本只有一個佔滿空間的主分割:
  1. 使用 SPFdisk 的硬碟分割工具建立一個涵蓋整部硬碟的主分割,然後選擇 非破壞性儲存,如此便救回來了(檔案系統 ID 要記得設為原來的)
  2. 若啟動磁區也損壞,則除可用 DiskEdit 來復原之外,也可以使用 SPFDisk 分割選單裡〔DOS 工具〕子選單下的『挽救啟動磁區』功能輔助回復工作。 
  1. 硬碟上原本有數個主分割,但無擴充分割:
  1. 進入 SPFDisk 硬碟分割工具並選擇等待救援的硬碟,按 [TAB] 出現主功能選單,選擇搜尋開機物件的功能,此時會開始找尋啟動啟動物件,請將找到的啟動磁區位置記錄下來(可按 Pause 鍵暫停搜尋)
  2. 由於主分割最多只可能建立四個,且使用者不見得有建這麼多個分割,若搜尋結果疑似啟動磁區的分割數量正好為使用者原先分割的數量,那麼不必考慮,以這些搜尋到的磁柱資料作為各分割的啟始磁柱,且結束磁柱為下一個分割的啟始磁柱減1,兩個分割不應該出現重疊的區域。建立完成後儲存時選用非破壞性儲存,且詢問是否調整 DOS 啟動磁區時選擇 N (假設啟動磁區並未損毀),如此便將分割表救回來了。
  3. 倘若搜尋結果超過四個,則還必須進行過濾的作業。
  4. 復原過程裡如果有 DOS 的分割,則可用〔參考復原〕的功能進行回復(假設啟動磁區並未損毀),此功能從 99-002 版開始支援!
  1. (II),但有擴充分割:

  方法與 (II) 雷同,但必須注意的是那些啟動磁區是是主分割的,而那些是邏輯分割的,也必須找出擴充分割的啟始及結束磁柱,使用法 (II) 所搜尋出來的不僅是啟動磁區,也會摻雜邏輯分割表在裡面,所以要特別分清楚,最好是先還原主分割,如此最後剩下的空間就可以說都是擴充分割的區域了,除非您尚有保留空間,否則請都剩餘空間建立一個擴充分割!

  通常搜尋結果若在同一個磁軌上第0面找出的是[分割表],而第1面找出的是[啟動磁區],那麼這個分割幾乎可以斷定是邏輯分割了,使用者只要知道原本建立了多少個邏輯分割,然後將搜尋到的邏輯分割位置在紙上排列一下,檢查有無重疊的區域,若有則必須判斷何者才是真正原本的分割,此時進行邏輯分割的建立,以方才紙上所記錄的磁柱資料逐一建立,建立完成後對每個分割執行〔傾印內容〕的功能,看是否所顯示的都是啟動磁區,可經由啟動磁區的標籤辨視,例如: MS-DOS MS-DOS 5.0Win95/98 以上版本則是 MSWIN4.1 Linux 安裝在 Super Block LILO 同樣是LILOWinNT 則是 NTFS.....等等。

  同樣的,復原過程裡如果有 DOS 的分割,則可用〔參考復原〕的功能輔助回復工作(假設啟動磁區並未損毀)


. 後記:

  本程式的 System ID Table 資料是由 Linux's FDisk 抄錄,故該表內容可說是一模一樣(實際上也是很少變動的),不過程式絕對是由筆者親自撰寫。

  對於英文版來說,由於筆者的英文基礎非常差勁,所以程式中的英文語句幾乎都是中國式的英文,還請使用者多多包涵。

  請注意!本程式已歷經多代的改良與測試,目前雖使用情況良好,當然,不可否認的,也曾經出現過大肥蟲,造成使用者的困擾,不過這些臭蟲目前已清除,筆者自己也在使用,如果因為本程式存有任何尚未發現的 Bug,而導致使用者硬碟上的資料損毀,則後果請自行負責,不論何時,筆者均有權停止任何人對本程式的使用權。

  這套工具筆者已經用了 n 遍,包括替朋友安裝 SPF Boot Manager 及建立硬碟分割,且筆者的三部硬碟百分之百是以 SPFDisk 建立的 Partition,目前安裝過有 MS-DOSWindows 95/98Windows NTOS/2LinuxFreeBSD,若您在使用上發現了任何的 Bug ,期盼您能抽出些許時間 Mail一封郵件告知筆者!

  倘若是如何設定或如何使用之類...等等的問題,希望能夠先將問題丟上 news 或是 BBS ,看看是不是有人可以給您答覆,如果真的沒有的話仍然歡迎您將問題丟到筆者這兒,由於筆者目前是上班族,有時可能工作繁忙,所以在這種情況下回信遲滯就不一定了,或許會拖延蠻久的,且難得的休假總是希望能夠大玩特玩,看到一堆信件總讓我感到一個頭兩個大,還盼各位賢者能多多見諒與包函,各位的支持是 SPFDisk 改版的原動力,在此祝各位使用愉快,非常感謝您的使用與支持!

  若發現 Bug 時, 請於Mail內詳註您的硬體及環境,例如:電腦規格、 硬碟容量、作業系統版本、使用的 SPFDisk 版本及使用那些步驟後會出現何種 Bug 等等,尤其以最後的三項資訊最需要!
 

∼∼阿彌陀佛∼善哉∼善哉∼∼  作者:馮緒平


回首頁 查看改版記錄 下載新版程式 FAQ