歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Linux + NT OS Loader mini-HOWTO中譯版

  1. 摘要   2. NT OS Loader 是如何運作的?   3. 如何安裝 Windows NT 及 Linux 在同一系統上的提示   3.1. 安裝 Windows NT   3.2. 分割磁碟   3.3. 安裝 Linux   3.4. Lilo   4. Bootpart   5. Linux 部份的工作   6. Windows NT 部份的工作   7. 再做一次   8. 排除問題   9. 其它   9.1. 參考資料   9.2. 感謝   9.3. 回饋   9.4. 譯注: 以 NT Loader 啟動 FreeBSD     1. 摘要  本文件描述了使用 Windows NT boot loader 來啟動 Linux 的方法.本過程已在 Windows NT 4.0 Workstation 版及 Linux 2.0 上測試過.    2. NT OS Loader 是如何運作的?  NT OS loader 希望來自其它作業系統的啟動磁區變成一檔案來取用.它讀入這檔案並啟動選擇的作業系統,也就是說,或是不同模式運作的 Windows NT 或是任何其它的作業系統.    3. 如何安裝 Windows NT 及 Linux 在同一系統上的提示  3.1. 安裝 Windows NT  先試著安裝 Windows NT.如果你想使用 NTFS 作為你 Windows NT 分割區的檔案系統,記住,目前版本的 Linux 無法取用 NTFS 的分割區.一個可以讀 NTFS 分割區的 Alpha 版驅動程式可在 http://www.informatik.hu-berlin.de/~loewis/ntfs 找到.你可建立另外一個 FAT 分割區作為資料交換用,或是你可以使用 DOS 格式化的軟碟片.    3.2. 分割磁碟  另外一個 mini-howto 建議不要使用 NT 的"磁碟系統管理員"來建立 Linux 的置換以及根目錄分割區.它會留下一些空間.我也建議使用 Linux 的 fdisk.    3.3. 安裝 Linux  現在從磁片上啟動 Linux,建立置換及根目錄分割區.Fdisk 會將 NTFS 分割區認為是 HPFS 分割區,這是正常的.再次從磁片啟動 Linux 並按你的喜好安裝 Linux.    在安裝過程中建議你掛上它找到的 HPFS 分割區時: 忽略它.    3.4. Lilo  當你做到安裝 Lilo 的部份時,指定你的 Linux 根目錄分割區作為你的啟動裝置因為你磁碟的主啟動記錄(MBR)現在是 Windows NT 所有.這表示在你 /etc/lilo.conf 的 root 項目及 boot 項目會有相同的值.如果你有一個 IDE 硬碟且你的 Linux 分割區是在第二塊分割區上,你 /etc/lilo.conf 的 boot 項目看起來會像:    boot=/dev/hda2    如果你有兩個磁碟機而且你的 Linux 位於第二顆磁碟的第一個分割區上,你 /etc/lilo.conf 的 boot 項目看起來會像:    boot=/dev/hdb1    以符合你系統的核心執行 lilo.如果你不確定的話從磁片上啟動以檢查核心.    如果你現在無法啟動 Windows NT,你有麻煩了.我希望你已經建立了最近的修復磁片.    4. Bootpart  有一個由 G. Vollant 所寫的 NT 程式叫 bootpasr 可以為你做到下述的兩點. Bootpart 可在此取得:  http://ourworld.compuserve.com/homepages/gvollant/bootpart.htm .    如果你想知道事情是如何運作的,使用第五及第六節描述的步驟.    5. Linux 部份的工作  你必須從磁片上啟動 Linux 直到 NT 部份改好為止.    現在你必須從你的 Linux 根目錄分割區中取出啟動磁區.如果 /dev/hda2 是你的 Linux 分割區,這個 dd 指令是:    # dd if=/dev/hda2 of=/bootsect.lnx bs=512 count=1    如果你的 bootsect.lnx 超過了 512 個位元組那麽就有些事不對勁.    現在將檔案 bootsect.lnx 拷貝到一片 DOS 格式化過的磁片中,如果這是你將檔案傳到 NTFS 分割區內的方法的話.    你可以這樣來拷貝    # mcopy /bootsect.lnx a:    或者用    # mount -t msdos /dev/fd0 /mnt  # copy /bootsect.lnx /mnt  # umount /mnt    6. Windows NT 部份的工作  從磁片上將檔案拷貝到 C:ootsect.lnx. 我不會告訴你怎麽做. (譯注: copy a:bootsect.lnx c:, 應該會吧.)    就像 Linux 下的 lilo.conf, 在 Windows NT 中是 c:oot.ini. 在你編修它之前用這個指令除去它的系統及唯讀屬性:    C:attrib -s -r c:oot.ini     現在用一編輯器更改 boot.ini 檔案,例如 notepad, 像這樣:    [boot loader]  timeout=30  default=multi(0)disk(0)rdisk(0)partition(1)WINNT  [operating systems]  multi(0)disk(0)rdisk(0)partition(1)WINNT="Windows NT Workstation ...   multi(0)disk(0)rdisk(0)partition(1)WINNT="Windows NT Workstation ...  C:BOOTSECT.LNX="Linux"    在本例中只加入了最後一行.在你儲存 boot.ini 後用這個指令回復它的屬性:    C:attrib +s +r c:oot.ini     在關掉你的 Windows NT 並重新啟動後你應該會看到像這樣的:    OS Loader V4.00    請選擇您想要啟動的作業系統:    Windows NT Workstation Version 4.0  Windows NT Workstation Version 4.0 [VGA mode]  Linux    使用↑鍵和↓鍵將您想要的選項反白,  選定後請按 Enter 鍵確認    選擇 Linux 並會看到    LILO loading zImage ....    7. 再做一次  每次你 Linux 分割區的啟動磁區被修改後一份新拷貝的 bootsect.lnx 就必須轉移到 C:BOOTSECT.LNX.一個例子是當你重新用 lilo 安裝一新的核心時.因此你可以看出這樣的系統並不適合用來測試實驗的核心.    8. 排除問題  如果事情並不按照預期的運作,用一磁片來檢查可啟動性.如果 /dev/hdb1 是你的 Linux 分割區,你的 /etc/lilo.conf 有下列的項目:    root=/dev/hdb1  boot=/dev/fd0    插入一磁片並執行 lilo. 現在嘗試從磁片上啟動.如果你在 /dev/hdb1 上的 Linux 無法被啟動,那麽 NT OS loader 也將無法啟動它.如果你看到一大堆 01 01 01 01,表示你的 root 磁碟無法取用.檢查是否你所有的磁碟都被 BIOS 偵測到.    如果這磁片可以啟動你的 Linux 分割區,你可以用下面指令取出你的啟動磁區給 NT OS loader 用:    # dd if=/dev/fd0 of=/bootsect.lnx bs=512 count=1    你可保留這磁片在你的 Windows NT 安裝出問題時作為你的急救磁片.    9. 其它  9.1. 參考資料    The Linux+WindowsNT mini-HOWTO   The FAQ for FreeBSD 2.X     9.2. 感謝    感謝 Xiaoming Yi 提示這些過程也在除了第一顆磁碟外的其它磁碟上運作.   感謝 Frank Dennler 提供的磁碟技巧.     9.3. 回饋  任何意見都很歡迎.    9.4. 譯注: 以 NT Loader 啟動 FreeBSD  因譯者的電腦中除了 Windows NT 4.0 及 Linux 之外,還裝了 FreeBSD 2.2,於是就仿照上面的做法試試 NT Loader 有沒有辦法啟動 FreeBSD.我的 FreeBSD 裝在 /dev/sda2, 也就是 FreeBSD 的 /dev/sd0s2. 按照上面的做法我先將 /dev/sda2 的 boot sector 存成一檔案:    # dd if=/dev/sda2 of=/bootsect.bsd bs=512 count=1    並將它拷貝到 C: 下.再於 boot.ini 中加入    C:BOOTSECT.BSD="FreeBSD"    不料這個方法竟然失敗了,無法啟動 FreeBSD!    一方面覺得失望,一方面又不死心.忽然想到,lilo 也可以拿來啟動 FreeBSD.於是,又做了下面的實驗,進入 Linux 後,將 /etc/lilo.conf 改為:    boot = /dev/fd0  install = /boot/boot.b  vga = normal    other = /dev/sda2  label = FreeBSD  table = /dev/sda  loader = /dev/os2_d.b    放入一格式化過的磁片,再跑 lilo -v.然後將磁片的啟動磁區變成一檔案:    # dd if=/dev/fd0 of=/bootsect.bsd bs=512 count=1    並放到 C: 下.移去磁片後重新開機,在 NT Loader 的選單下選擇 FreeBSD,接著就看到:    LILO loading FreeBSD  >> FreeBSD BOOT @ 0x10000: 639/65536 k of memory  Usage: [[0:][fd](0,a)]/kernel][-abcCdhrsv]  Use 1:sd(0,a)/kernel to boot sd0 if it is BIOS drive 1  Use ? for file list or press Enter for defaults  Boot:




Copyright © Linux教程網 All Rights Reserved