歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 安裝Windows和Linux雙系統

安裝Windows和Linux雙系統

日期:2017/2/28 15:59:04   编辑:Linux教程

一些基礎知識:

1. WindowsXP使用Ntldr作為啟動加載器來啟動系統,在boot.ini腳本中配置啟動選項,我們可以通過添加啟動選項來指定硬盤安裝Linux。

2. Windows7使用新的加載器BootMgr啟動系統,同時提供了BCD(Boot Configuration Data)設置啟動選項,我們可以使用Win7自帶的BDCedit或者第三方的EasyBCD程序來編輯啟動選項。

3. Linux目前大多數使用Grub作為啟動引導程序,且Grub能識別NTFS分區。

4. Linux發行版Ubuntu很早就支持NTFS文件系統了,所以可以將Ubuntu的鏡像放在NTFS分區進行硬盤安裝。

5. Linux發行版RedHat系列(包括Fedora、CentOS)不支持NTFS文件系統,需要安裝ntfs-3g程序才能讀寫NTFS分區,所以.........。這裡有個一直困擾大家的問題,就是Linux鏡像到底能不能放在NTFS分區進行安裝?其實根據上面的知識我們已經有了答案:

就是Ubuntu可以(Grub:支持,Ubuntu:支持),Redhat不可以(Grub:支持,Redhat:不支持),Redhat可以引導,但是boot內核找不到位於NTFS分區的鏡像文件。

有了以上基礎知識,相信大家安裝都是手到擒來。在windows中我們可以使用grub 4 dos(見 http://www.linuxidc.com/Linux/2009-01/18027.htm )(Win7不可用),EasyBCD(見 http://www.linuxidc.com/Linux/2007-12/10060.htm )創建Linux安裝啟動選項。

1. grub 4 dos 用 grldr, menu.lst, ISO 三個文件即可。

將grldr文件復制到c:\,去掉boot.ini的只讀屬性,然後修改c:\boot.ini文件,在boot.ini的最後面加一行:

c:\grldr="Start GRUB4DOS"

將menu.lst文件復制到c:\boot\grub目錄,假設vmlinuz 、initrd.lz 、ISO這些文件都放在 C 盤根目錄,menu.lst 可以這樣寫:

title Install ubuntu
root (hd0,0)
kernel /vmlinuz boot=casper iso-scan/filename=/ubuntu-10.10-desktop-i386.iso
initrd /initrd.lz
boot

當然,可以在不解出vmlinuz 文件,initrd.gz 文件的情況下,grub4dos 也能成功從硬盤引導 ubuntu 安裝。這裡 C 盤根目錄有 grldr, menu.lst, ISO 文件,這時的 menu.lst 可以寫作:

title Install ubuntu
map (hd0,0)/ubuntu-10.10-desktop-i386.iso (hd32)
map --hook
root (hd0,0)
kernel (hd32)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.10-desktop-i386.iso
initrd (hd32)/casper/initrd.lz
boot

這裡用 map 指令將 ISO 文件模擬為硬盤/光盤,在模擬磁盤中讀取vmlinuz 文件,initrd.lz 文件。當控制權交給 kernel 後,計算機就從實模式過渡到保護模式。磁盤模擬也就不起作用了。


2. EasyBCD 用 NeoGrub、NeoGrub.mbr、menu.lst 即可完成引導。

在win7上安裝EasyBCD,然後點擊Add New Entry --> NeoGrub --> Install,如圖:

安裝之後C:盤會出現NeoGrub文件和NST文件夾(包含NeoGrub.mbr、menu.lst 文件),並且BCD啟動選項裡面多了一個引導項,如圖:

menu.lst文件的內容同上即可。在WindowsXP上也可以直接把NeoGrub文件和NST文件夾(包含NeoGrub.mbr、menu.lst 文件)拷貝到c:盤,修改boot.ini,在boot.ini的最後面加一行:

c:\NST\NeoGrub.mbr="Start GRUB4DOS"

即可。

Copyright © Linux教程網 All Rights Reserved