設定過程
Windows NT類的作業系統,也就是Windows NT 4.0/2000/XP/2003中,有一個特殊檔案,也就是“BOOT.INI”檔案,這個檔案會很輕鬆地按照我們的需求設定好多重啟動系統。
“BOOT.INI”檔案會在已經安裝了Windows NT 4.0/2000/XP/2003的作業系統的所在分區,一般默認為C:\下面存在。但是它默認具有隱藏和系統屬性,所以你要設定你的資料夾選項,以便把“BOOT.INI”檔案顯示出來。我們可以用任何一種文本編輯器來打開他它。一般情況下,它的內容如下:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows XP Professional" /fastdetect
在Windows 2000或者是XP系統中,我們可以很容易的設定“BOOT.INI”檔案。那就是在“我的電腦”上麵點擊右鍵,選擇“屬性”打開“系統屬性”對話框,再點擊“高級”選項卡,在“啟動和故障修復”裡面點擊“設定”按鈕,就可以打開“啟動和故障修復”對話框了,在這裡面我們就可以對它進行詳細設定。
如果你擁有Windows XP作業系統,那么你可以用“系統配置實用程式”來更方便的編輯“BOOT.INI”檔案。具體做法是:打開“開始”選單,點擊“運行”命令,再在彈出的文本框中輸入“msconfig”點擊“確定”後就會彈出“系統配置實用程式”,再點擊“BOOT.INI”選項卡,就會出現如圖所示的界面。在這裡,我們可以很方便地設定檔案。言歸正傳,現在,來說明一下這個檔案內容的含義。
系統載入部分([boot loader])
這一部分很簡單,只有兩個設定。那就是“timeout=”和“default=”。
“timeout=”就是設定開機時系統引導選單顯示的時間,超過設定值則自動載入下面“default=”指定的作業系統。默認值是30,單位為秒。我們可以在這裡面設定等待時間的長短。如果將其設為“0”那么就是不顯示系統引導選單。
“default=”則是設定默認引導的作業系統。而等號後面的作業系統必須是已經在“[operating systems]”中存在的。如果想默認為載入另外的作業系統,我們可以參看“[operating systems]”中的作業系統列表,然後把想要載入的作業系統按照格式寫到“default=”後面就可以了。
作業系統部分([operating systems])
在這裡面,列出了機器上所安裝的全部作業系統。比如機器上只有一個作業系統,那么就只有一條信息,那就是“multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows XP Professional" /fastdetect” 在這裡需要注意的是,在英文引號內的文字就是引導作業系統選單時顯示出來的讓我們選擇作業系統的提示文字,在這裡面我們可以隨意更改。而“multi(0)disk(0)rdisk(0)partition(1) \Windows”這一句就需要些解釋了。因為它涉及ARC(高級RISC計算機)命名,它是x86或RISC計算機中用於標識設備的動態方法。 ARC命名的第一部分用於標識硬體適配卡/磁碟控制器,它有兩個選項CSI和Multi。
Multi表示一個非SCSI硬碟或一個由SCSI BIOS訪問的SCSI硬碟,而SCSI則表示一個SCSI BIOS禁止的SCSI硬碟。(x)是硬體適配卡序號。Disk(x)表示SCSI匯流排號。如果硬體適配卡為Multi,其正確表示方法就為disk(0),rdisk(x)則表示硬碟的序號,如果硬體適配卡為SCSI則忽略此值;
partition(x)表示硬碟的分區序號。了解這些,我們就可以解釋前面那條信息的含義了,即“multi(0)disk(0)rdisk(0)partition(1) \Windows”為,在0號非SCSI設備上的第0號磁碟上的第一個分區裡面的“Windows”目錄下可以找到能夠啟動的作業系統。
等號後的內容前面已經說過,那個就是引導選單顯示出來的供我們選擇的提示文字。而後面的“/fastdetect”又是作什麼用的呢?這是一個開關符,用來控制啟動該作業系統時的具體選項,下面再來詳細的介紹各種開關符的含義:
/3GB:這是Win2000 SP3新引入的。這使得用戶區和系統區分為3G比1G的比例。只有用戶使用NT企業版,應用程式也支持3GB選項時,此選項才生效。
/BASEVIDEO:使用標準VGA方式啟動。這種方式主要用於顯示驅動程式失效時。
/BAUDRATE:指出用於調度的波特率,如果用戶不設定,則使用默認的9600,而對於線纜Modem則使用19200。
/BOOTLOG:使Win2000將日誌寫入 %SystemRoot%\NTBTLOG.TXT 。
/BURNMEMORY=:使NT在已知的記憶體上少使用指定的數量,如果/burnmemory=64,則有64M記憶體NT不使用。
/CRASHDEBUG:調度器在NT啟動時啟動,只有在核心錯誤時才有用,如果系統經常會無故出錯,這個選項就很有用了。
/DEBUG:在啟動NT時調入調度器,它可以在任何時間激活,在錯誤可以再次出現時使用它比較合適。
/DEBUGPORT= comx :指定用於調度的連線埠,其它X就指連線埠號。
/FASTDETECT:對於Win2000啟動時,它使系統不檢查串列口和並行口。
/HAL=:允許用戶不使用默認的HAL。
/INTAFFINITY:設定多處理器HAL(HALMPS.DLL),使編號最大的處理器接收中斷請求。如果不設定此選項,Win2000會使所有處理器接收中斷請求。
/KERNEL=:與上面的功能相同,不過是針對SMP中的核心而言的。
/MAXMEM:n:指定NT可以使用的最大記憶體數,如果一個記憶體片損壞,這個開關就十分有用了。
/NODEBUG:不使用調試信息。
/NOGUIBOOT:指定此選項會使Win2000不載入VGA驅動程式,也就不會顯示啟動過程和失敗時的蘭屏信息。
/NOSERIALMICE=[COMx | COMx,y,z…]:在特定的COM中上禁止對串列滑鼠的檢測。如果用戶有一個非滑鼠設備接在COM口上,這個選項會十分有用。如果此開關未加參數,系統會禁止所有COM口。
/NUMPROC=n:只允許前N個系統處理器工作。
/ONECPU:在多處理器中只使用一個處理器。
/PCILOCK:不讓NT為PCI設定分配IO/IRQ資源,而啟用BIOS設定。
/SAFEBOOT:安全啟動,這個大家一定十分熟悉,Win2000隻啟動HKLM\System\CurrentControlSet\ Control\SafeBoot中的驅動程式和服務,其後跟三個參數MINIMAL,NETWORK或DSREPAIR之一。MINIMAL和NETWORK在允許網路下啟動系統。而DSREPAIR要求系統從備份設備中調入活動目錄的設定。還有一個選項是"(ALTERNATESHELL)",它讓系統調入由HKLM\System\CurrentControlSet\ SafeBoot\AlternateShell指定的SHELL程式,而不使用默認的Explorer。
/SOS:在調入驅動程式名時顯示它的名字,在因驅動問題而無法啟動時使用比較好。
/WIN95:在裝有三個系統DOS、Win9x和Windows NT的系統上,讓NTLDR直接調用Win9x。啟動檔案BOOTSECT.W40。
/WIN95DOS:在裝有三個系統DOS、Win9x和Windows NT的系統上,讓NTLDR直接調用DOS啟動檔案BOOTSECT.DOS
/YEAR=:使用指定的年份,如果設定為/YEAR=2005,那現在的時間就是2005年,此選項僅對NT4+SP4和Win2000生效。
了解了以上這些,我們就可以更加輕鬆控制好我們系統的啟動
下面是一個典型的Boot.ini檔案:
[boot loader] timeout=30 default=scsi(0)disk(0)rdisk(0)partition(1)\winnt
[operating systems] scsi(0)disk(0)rdisk(0)partition(1)\winnt = "Windows NT" /NODEBUG C:\ = "revious Operating System on C:\"
下面是上述的Boot.ini檔案一行行的解釋:
[boot loader] timeout = 30
在選擇默認作業系統之前,Timeout指定了Windows Nt的等待時間。
default=scsi(0)disk(0)rdisk(0)partition(1)\winnt
Default指定了默認的作業系統。注意:無論什麼時候只要作業系統是Windows NT,新的存儲路徑語法就被使用。對於這個語法的更多信息,在下面微軟知識庫中的詞中得到查詢。
[operating systems] scsi(0)disk(0)rdisk(0)partition(1)\winnt = "Windows NT" /NODEBUG C:\ = "revious Operating System on C:\"
Scsi(0)意思是primary controller(通常只是一個)對設備負責。如果有兩個SCSI卡並且磁碟掛起第二個,那么它將呼叫scsi(1)。
disk(0) 參考涉及物理磁碟1。
rdisk(0)-rdisk()參數涉及哪一個SCSI logical unit (LUN)被使用,哪一個可能成為一個分離的磁碟,但是大量的SCSI setups每個SCSI ID只有一個LUN。
在此例子中的partition(1)是計算機中第一個驅動器的唯一的分區。如果有兩個分區,C和D,C將是partition(1)並且D將是partition(2)。
\winnt 是多重引導將考慮的目錄,通過它從特殊的SCSI卡的磁碟和分區之一來引導。
/NDOEBUT 詳細說明沒有調試信息被監測。調試信息僅僅對開發者有用處,同時它也會稍微減慢Windows NT的速度。
當Windows NT引導過程中/SOS轉換被載入的時候,它們被添加來顯示驅動器的名字。依據默認情況,OS Loader screen僅僅回送進程點。
The Previous Operating System on C:\ implies that it is MS-DOS, because "C:\" is an MS-DOS path.
雙啟動選單boot.ini檔案的秘密
boot.ini檔案的位置在C糟根目錄雙擊打開,只有寥寥幾行:
[boot loader]
timeout=3
default=multi(0)disk(0)rdisk(0)partition(1)WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINNT="Microsoft Windows 2000 Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)WINDOWS="Microsoft Windows XP Professional" /fastdetect
“timeout=3”是設定系統等待時間的,最少可以是0秒,最多……幾個月是沒問題的。
“default=multi(0)disk(0)rdisk(0)partition(1)WINNT”是啟動時被自動標亮的選項。當時間為0時,系統將啟動此處所設系統。
“[operating systems]”列出了供我們選擇的啟動項。我的電腦是“Microsoft Windows 2000 Professional”與“Microsoft Windows XP Professional”,如果你看慣了原來的提示,盡可以用其他的內容代替,並且支持漢字,將你想要的內容放到引號中即可。你還可以多加幾條假的選項,用來迷惑隨便動你電腦的人,方法是在“[operating systems]”下加入類似“multi(0)disk(0)rdisk(0)partition(1)WINNT=”的選項,只要改動其中的某個數字或資料夾即可。此外,如果將選項的前後順序互換,在啟動時也隨即改變。