熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

nt與linux共存完全解決方案

2013-11-13 15:35:44  來源: Oracle 

  NT和Linux共存的最簡單的方法就是在安裝linux的lilo時選擇將lilo安裝在Linux主分區的引導區中然後使用win的啟動盤重新啟動以後運行fdisk將linux主分區設置為active這樣就可以實現在系統啟動時首先進入lilo選擇若不選擇linux則進入nt loader
  
  但是有時候為了方便而需要使用 nt loader 來引導linux下面就是實現的方法
  
  你應該牢牢記住的最重要的一點是許多軟件產品會利用硬盤上面僅有的那個寶貴的主引導記錄MBRNT是這樣沒有選擇余地Linux也可以這樣如果你喜歡機器的BIOS會執行儲存在當前激活分區的信息來初始化你希望的操作系統
  
  NT安裝後MBR會被修改成去引導一個在激活分區的根目錄下叫NTLDR的程序原來的MBR會被存到一個叫BOOTSECTDOS的小文件中NT安裝完成後要記住絕不能覆蓋這個MBR 否則NT將無法啟動以防萬一 NT的用戶需要NT的應急修復磁盤(Emergency Repair DiskERD)
  
  記住了這些後就要注意設定LILO時***不能***裝到MBR中去而是裝到Linux的root分區中去這樣對NT而言不會帶來問題而Linux沒有MBR也可以活下去
  
  NT的引導過程
  
  當NTLDR啟動 NT用戶看到OS Loader Vxx它會切換處理器到狀態並啟動一個非常小的文件系統接著它會去讀BOOTINI文件看是否有其它操作系統存在並顯示一個選擇菜單下面是一個典型的BOOTINI:
  
  [boot loader]
  timeout=
  default=multi()disk()rdisk()partition()WINNT
  
  [operating systems]
  multi()disk()rdisk()partition()WINNT=NT V is here
  multi()disk()rdisk()partition()WINNT=NT V VGAMODE /basevideo /sos
  C:=DOS is here
  BOOTINI有兩部分構成 boot loader section部分指定菜單在屏幕上的停留時間和缺省菜單選項opearating systems section 部分指定可選的操作系統種類可以看到機器可以啟動NT(以標准模式或VGA安全模式)和DOS從這個例子我們可以推斷DOS從硬盤C:(第一個硬盤的第一個分區)啟動而NT從第二個分區啟動典型安裝時會以DOS的FAT文件系統格式化一個C:的分區然後將NT裝在另外一個NTFS(NT文件系統)的分區
  
  如果用戶選擇了啟動NT 另外一個程序NTDETECTCOM就會開始進行硬件檢查如果一切正常NT內核就會被裝入正如我們都知道的那樣
  
  再來看如果啟動的不是NT的情形此時NTLDR 需要知道非NT OS引導所必需的引導扇區是哪個此時相應的引導扇區映象必須要在一個小小的字節的文件中比如要引導DOSNTLDR 將會尋找一個叫BOOTSECTDOS的引導扇區映象文件 這個映象文件是NT的安裝程序產生的
  
  那麼 引導Linux又是怎樣呢?這很簡單需要的只是一個引導扇區映象文件姑且稱之為BOOTSECTLIN (在本文稍後會看到如何得到這個文件) 必須將BOOTSECTLIN 放到C: 並要修改 BOOTINI此時operating systems ection部分看起來應該是這樣的
  
  [operating systems]
  multi()disk()rdisk()partition()WINNT=NT V is here
  multi()disk()rdisk()partition()WINNT=NT V VGAMODE /basevideo /sos
  C:=DOS is here
  C:BOOTSECTLIN=Now Linux is here
  修改BOOTINI 可以用任何普通ASCII文本編輯器(比如記事本)這個文件的正常屬性為系統隱藏只讀所以你必須用 attrib DOS 命令或在NT中用文件屬性對話框中來變更屬性
  
  現在我們將注意力轉到Linux我們需要安裝Linux定制LILO產生BOOTSECTLIN文件
  
  第一步是裝好Linux我們都知道怎麼做為Linux選適當的系統SWAP和用戶分區運行安裝程序等等一切順利時這一步在分鐘之內就可以完成
  
  接下去就要定制LILO我們知道怎麼做但要注意*不能* 將LILO裝到MBR中去(除非你想將NT吞了:))設定LILO時要選擇將它裝到你Linux 的root分區如果你還不知道如何設定LILO 就花幾分鐘讀讀HOWTO文獻或者就用一些好的安裝程序我是用SuSE 因此我的安裝程序就是 yast (Yet Another Setup Tool)
  
  LILO定制好之後(為行文方便 此處假設Linux的root分區是/dev/hda)我們必須用dd來產生引導記錄映象文件以root Login後按以下做:
  
  # dd if=/dev/hda bs= count= of=/dosc/bootsectlin
  
  如果沒有能將FAT C: partition mount成為 /dosc譬如說由於這個分區被以NTFS方式格式化不能訪問這個分區此時可以將 BOOTSECTLIN寫到一個以DOS方式格式化的磁盤中或者NT能讀的其它什麼分區也可以如果BOOTSECTLIN不是被放到C:要記住此時應相應修改BOOTINI文件
  
  現在你老板可以從她的NT Loader菜單中選擇Linux了NTLDR將會裝載BOOTSECTINI她就可以看到LILO的提示她就可以去嘗試她新的Linux機器了最後你可以設定LILO在選擇提示時能去引導Linux和C: 上的DOS你的老板就可以再次回到C: 分區上的NT Loader前文描述的方法可以反復進行如果你希望能選擇引導多個Linux就必須為每一個Linux都產生一個相應的引導扇區映象文件
  

From:http://tw.wingwit.com/Article/program/Oracle/201311/16977.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.