Shunze 學園 >電腦資訊學系 >吃軟不吃硬 > 《分享》DOS+Win31+Win98+Win2K+Linux多重開機 哈囉,還沒有註冊或者登入。請你[註冊|登入]
« 上一篇主題 下一篇主題 » 顯示成列印模式 | 增加到我的最愛
發表新主題 發表回覆
作者
主題
shunze
工友伯伯


註冊日期: 2002 04
來自: 潮汐終止之地
文章: 2392

shunze 離線
《分享》DOS+Win31+Win98+Win2K+Linux多重開機引用回覆 編輯/刪除文章 搜尋由  發表的其他文章 回報給版主 IP 位置 回此頁最上方

前陣子由於工作需求,需要純DOS可執行的程式,於是在DOS下重新跑起Turbo C。

這樣子的工作需求,讓我有了一個想法,為何不架起多重開機環境,以滿足各種需求?
基於這樣的一個想法,再加上80GB的大容量硬碟,讓我實際架起DOS+Win31+Win98+Win2K+Linux五個系統的多重開機環境。

完成這個工作所需的工具為SPFDisk,Ghost及Win98開機片。
而所需要的OS則視需求來決定。
以順子來說需要DOS 6.22,Windows 3.1,Windows 98,Windows 2000,Redhat 7.2。

必要觀念,一顆硬碟只能有四個主分割區或延伸分割區,請先想好你要的硬碟規劃.


我的磁碟規劃如下:

0
|
|第一主分割區,2G,FAT16格式
|安裝DOS+Win31+Win98
|
2G
|
|第二主分割區,10G,NTFS格式,active分割區
|安裝Win2K
|
12G
|
|延伸分割區,50G
|  +
|  |邏輯分割區1
|  |15G,FAT32格式,個人主要資料夾
|  |
|  +
|  |邏輯分割區2
|  |15G,FAT32格式,個人次要資料夾
|  |
|  +
|  |邏輯分割區3
|  |15G,FAT32格式,GHOST備份資料夾
|  |
|  +
|  |邏輯分割區4
|  |48M,EXT3格式,linux開機區,/boot
|  |
|  +
|  |邏輯分割區5
|  |9G,EXT3格式,linux主要磁區,/
|  |
|  +
|  |邏輯分割區6
|  |512M,SWAP格式,linux SWP
|  |
|  +
| 
67G
|
|Free,尚未規劃
|
77G



事實上Windows 3.1是依附在DOS之上的。
所以嚴格來說DOS是系統,而Windows 3.1是應用軟體,兩者其實是同一個系統上的應用。

而這一個系統要求的是灌在主分割區,僅支援FAT16格式在2014 MB容量下的空間,且無法識別8G以上的空間!
所以無庸置疑的,這個系統必需為第一個主分割區。

在這個FAT16分割區先灌好DOS6.22之後,就可以接著灌Windows 3.1了。


以順子來說,這個部分沒遇到困難。
唯一要考慮的是Windows 3.1的安裝目錄,預設目錄是在Windows下,這會與接下來的Windows 98衝突!
所以不是Windows 98要改系統目錄,就是Windows 3.1要改系統目錄。

由於DOS+Windows 3.1在現行環境下實用性比較小,所以順子是更改Windows 3.1的安裝目錄。

這個工作完成之後,我們可以用Win98開機片重新開機,做個GHOST備份,接下來就可以灌Windows 98了。


Windows 98我個人是跟Windows 3.1灌在同一個分割,然後以Windows 98來管理開機系統。
當然你也可以將98獨自安裝在同一目錄,這時就必需以SPFDisk來切割第二個主分割區,並調整active分割區。

安裝98之前建議先在DOS下,下達sys A:的指令。
這會在磁碟片中產MSDOS.sys,IO.sys,command.com這三個98的系統檔。
再將config.sys,autoexec.bat這兩個系統檔copy到磁碟片中,這時磁碟片中應該有五個系統檔案了。


現在開始要安裝98了。
先以98光碟片來開機,進入安裝畫面後,開始安裝98。
要注意的是不要把安裝Windows 3.1的目錄給覆蓋掉,也不要將分割區改為FAT32的格式
因為DOS+Windows 3.1並不認識FAT32的磁區,一旦改為FAT32 DOS跟Windows 3.1就不能用了,也失去多重開機的意義。

安裝完成後,進入Windows 98的操作畫面,先在檔案管理員中,打開顯示隱藏檔案的功能。
然後在根目錄下,修改MSDOS.sys這個檔案,加入
BootMenu=1
BootMenuDelay=10
BootKeys=1
以允許Win98進行多重啟動和允許Win98引導時使用系統功能。

然後copy MSDOS.sys,IO.sys,command.com,autoexec.bat,config.sys這五個檔案,並將其副檔名改為w40。
接著修改之前磁碟片中所儲存相同的五個檔案,將其副檔名改為dos,然後一樣存在根目錄C:下。

同時存在兩組不同副檔名的五個檔案,其目的是讓98來操控不同的OS啟動程序。
98使用的是w40系列,而DOS使用的是dos系列,進入系統後,系統會自行切換~
完成Windows 98後,再做個GHOST備份吧!


接著是關鍵Windows 2000的安裝。
為什麼是關鍵呢?因為Windows 2000的Boot loader會決定多重開機成敗。

我的做法是,以SPFDisk來切第二個主分割給Windows 2000,然後將第一個主分割給重切。
不過不要重新format,目的僅是讓其呈現無法使用的狀態。
注意!這個動作會把第一個分割區的既有系統給殺了!


然後設定active分割區為第二主分割區,再以Windows 2000光碟片開機並安裝系統在第二主分割區內。

為什麼要這樣做?
因為在舊系統的存在的環境下安裝2000,
2000會將boot loader安裝在第一主割區中,這會導致一個危機!

危機發生於當第一主分割區資料毀掉,必需重灌OS時,你會發現2000的分割區永遠無啟動!?

其實這是很正常的,因為2000的boot loader是在第一分割區;而第一個分割區在重灌後,並沒有對應資訊,結果當然無法開機!


而我那做法好處是在於由於第一分割區確實存在,但已經破壞,所以2000的boot loader會寫在本身所在第二分割區內。
第一主分割區日後的任何變化,對2000來說並無影響。
這樣98能隨時GHOST回來,2000也能隨時GHOST回去;兩者並不衝突~

不過,這樣一來,有一個更大的問題出現了!
那就是2000無法啟動98所在的第一主分割區。
因為對2000而言,它並不知道第一分割區裏有躲著一個舊的作業系統。

然而,這對我來說無所謂~
因為最後我是要以Linux來控管多重開機,所以就放心大膽去玩躲貓貓吧。

2000灌好了,接下來用GHOST做一下Windows 2000備份。
然後把98倒回來第一主分割區,準備灌Linux囉!


我用的Linux是Redhat 7.2 Linux,其預設的GRUB開機管程式,可以將安裝在邏輯分割區,磁柱1024以後的Linux正常啟動。
嘿~這下子順子可樂了!

將Linux光碟放入光碟機中以光碟開機,安裝Linux。
在分割區規劃好後,安裝過程應該都不會有問題。
安裝時請選用GRUB來管理多重開機,並將其裝在MBR中。

Linux可以抓到自己本身以外的其它開機磁區。
在這個開機選項中,我們還可以自由決定每個啟動OS的label。
你可以自由的標註你喜歡的名字。

隨著時間一分一秒的過去,我們Linux也灌好了,一切大功告成~

往後,不論是第一個分割區壞了,或是第二個分割區中毒了?
你都可以將以GHOST備份好的image file來還原。

不過萬一不小心MBR中毒了!?或是其它不確定因素給毀了?那怎麼辦??

別擔心,你可以用安裝Linux時所製作的開機片從軟碟開機,
然後下達以下指令將GRUB重新裝回MBR中。
grub-install /dev/hda

多重開機其實並沒有那麼難喔~



♥順子老婆的網拍,請多關照~

If you don't like something, change it.
If you can't change it, change your attitude.
Don't complain!


2003-07-18, 21:16 shunze 的個人資料 把 shunze 加入好友列表 發送Email給 shunze 瀏覽 shunze 的網站 MSN : shunze@gmail.com
  « 上一篇主題 下一篇主題 »
發表新主題 發表回覆
跳到:

Powered by: Burning Board 1.1.1 2001 WoltLab GbR