雙系統啓動boot.ini文件的祕密

Windows NT類的操作系統,也就是Windows NT/2000/XP中,有一個特殊文件,也就是“BOOT.INI”文件,這個文件會很輕鬆地按照我們的需求設置好多重啓動系統。

  “BOOT.INI”文件會在已經安裝了Windows NT/2000/XP的操作系統的所在分區,一般默認爲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”選項卡,就會出現如圖所示的界面。在這裏,我們可以很方便地設置文件。言歸正傳,現在,來說明一下這個文件內容的含義。

  1.系統加載部分([boot loader])

  這一部分很簡單,只有兩個設定。那就是“timeout=”和“default=”。

“timeout=”就是設定開機時系統引導菜單顯示的時間,超過設定值則自動加載下面“default=”指定的操作系統。默認值是30,單位爲秒。我們可以在這裏面設定等待時間的長短。如果將其設爲“0”那麼就是不顯示系統引導菜單。

  “default=”則是設定默認引導的操作系統。而等號後面的操作系統必須是已經在“[operating systems]”中存在的。如果想默認爲加載另外的操作系統,我們可以參看“[operating systems]”中的操作系統列表,然後把想要加載的操作系統按照格式寫到“default=”後面就可以了。

  2.操作系統部分([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:\ = "Previous 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:\ = "Previous 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=”的選項,只要改動其中的某個數字或文件夾即可。此外,如果將選項的前後順序互換,在啓動時也隨即改變。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章