XP或Win7系统下grub4dos安装双系统ubuntu(32或64)
1、grub4dos在xp系統下引導安裝ubuntu系統
先不要刪除相關文件,只裝好ubuntu不要按照文檔做其他修改,保留一會
http://pan.baidu.com/s/1o6wiFr0
這個只能將ubuntu安裝到空閑分區還沒辦法從xp或win7下引導進入ubuntu,解決方法是,再次進入ubuntu的pe安裝系統,或者在上一步中不要立即重啟,執行如下更新命令,用ubuntu自帶的grub2作為整個系統的第一引導器
2、更新引導器
記住/分區在那個分區,以及有無boot分區,及其在哪個分區,以/在sda7,boot在sda8為例
Ctrl+Alt+t開啟命令終端
sudo -i 切換為root用戶
fdisk -l 查看分區分布
mount ?/dev/sda7 ?/mnt 掛載根分區
mount /dev/sda8 /mnt/boot 掛載boot分區(如果有的話,沒有則不執行此命令)
========--boot-directory選項使用tab鍵可以自動補全的,不能補全的話,說明敲錯按鍵了========
+++++這些信息會寫入/boot/grub/grub.cfg文件里面,也可以手動修改+++++
grub-install --boot-directory=/mnt/boot/ /dev/sda 寫入第一主分區mbr,要裝入第二硬盤的把sda改為sdb
reboot 重新啟動,只能進入ubuntu無法進入xp或者win7了
進入命令終端
sudo update-grub 重建grub列表,將window xp或者win7引導項修復
sudo grub-install /dev/sda 寫入主分區mbr
重啟后可以進入ubuntu也可以進入xp或win7
2、grub4dos下menu.lst解釋說明
1、在windows下,下載一個新版本的grub4dos,具體安裝(把幾個文件拷到C盤下)網上有。
2、把C盤下的那個boot.ini文件最后加入一行:
? ?C:/grldr=ubuntu
3、然后編輯grub4dos的menu.lst文件(在C盤根目錄下,你要修改它的只讀且隱藏屬性才能進行編輯),加入以下幾行:?
下面對這幾行做個說明:
title的內容可以隨便寫,只要你將來自己看得懂,用來顯示在grub4dos的引導選擇界面上
root那一行是說明ubuntu的引導分區,取決于你把系統裝到哪個分區上了。
kernel這一行,重點在root=/dev/sda8這句,對應于root那一行,比如(hd0,7)對應sda8或者hda8(sda表示SATA硬盤,hda表示IDE硬盤)。也即(hd0,n)對應n+1。
initrd這行照著寫就是了
4、需要說明幾點
如果你搞不清自己的ubuntu裝在哪個分區上。可以通過手動引導,就是把上面第3步要寫的東西在引導時手動寫入。先重啟,在引導界面選擇 “ubuntu"(對應第2步),進入grub4dos引導界面,按"e"進行手動引導。在那個簡陋的shell中寫下root,然后空格,然后按 tab(多用tab鍵,grub4dos很智能,能提示你很多事情),它會把已有分區列出,你找找看哪個是ubuntu的安裝分區。確定后,照上面第2步 的輸入,在shell上輸入一遍,輸完一行記著回車。
有些文章介紹第2步時,內容很復雜大致如下:
<span style="font-family:Verdana;font-size:18px;">title Ubuntu 8.04.2, kernel 2.6.24-23-generic (recovery mode) root (hd0,7) kernel /boot/vmlinuz-2.6.24-23-generic root=UUID=621d1b04-0504-491a-8ded-d9271b83d3c4 ro single initrd /boot/initrd.img-2.6.24-23-generic</span>
第一,這么長的內核名字--vmlinuz-2.6.24-23-generic,就算你在手動引導時,利用tab鍵提示,由于系統內核更新,/boot/會有好幾個類似的文件,不好選擇。而我們上面只寫了一個vmlinuz,它實際位于根系統的根目錄下,是個鏈接,且內核每次更新會都會自動更新該鏈接到最新的內核,省去很多麻煩。
第二,root=UUID。。。這個東西夠麻煩(有興趣的可以網上搜),因為這個東西的作用是指出根系統所在分區,所以最簡潔的方法就是寫root=/dev/sdax....
如果不能確定是sda還是hda就隨便猜一個。如果出錯了,會跳到一個shell下,這時候用
? ? ? ? ?ls ? /dev/ ?
命令看看自己的硬盤是哪種,再回頭重新做。?
推薦手動
按鍵e
? grub>root ?(hd
輸入完上面的命令后,按TAB鍵,它自動會補個0 (因為我這只有一個硬盤),然后再按TAB鍵,它會把磁盤分區及分區格式全部列 ?出來,只需找到Linux分區類型所在的那個分區就對了,即不是ntfs分區,也不是什么未知分區的,我這顯示的是ex2fs分區格式,即ext3格式,對應的分區為(hd0,6)
3、grub4dos設置引導ubuntu設置
用工具explore2fs只能查看ext3文件系統格式,ext4需要ext4explore
昨天重裝XP系統,不小心把ubuntu的引導菜單弄丟了,不過沒有關系,我有功能強大的grub4dos,用它就可以重新引導ubuntu了。現在就將我的操作過程一一道來,以供各位朋友參考。只要按照以下步驟操作,必能修復你的Linux引導菜單!
1、下載grub4dos,提取里面的兩個文件:grldr和grub.exe,放在C盤根目錄下。
2、修改C盤根目錄下的boot.ini文件(隱藏文件),在最后一行加上一句:C:/grldr="Ubuntu 8.04" ,
雙引號里的文字可以隨心所欲的修改,那只是一個顯示標題而已。比如我修改后的文件是這樣的:
<span style="font-family:Verdana;font-size:18px;">[boot loader] timeout=5 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" /noexecute=optin /fastdetect C:/grldr="Ubuntu 8.04"</span> 3、這一步最為關鍵,也是本文重點,請仔細閱讀。
下載一個叫explore2fs的工具,這個工具可以在windows下查看linux里的東西。運行之,在/boot/grub/(可能有所差 別)下找到menu.lst文件,然后右鍵點擊它,選擇“導出文本”(不是“導出文件”),保存到C盤根目錄下,文件名和擴展名均不變,仍為 menu.lst。可以用記事本打開,關鍵的只有幾句,如:
<span style="font-family:Verdana;font-size:18px;">title Ubuntu 8.04.1, kernel 2.6.24-19-generic root (hd0,2) kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=a6ae6905-49ff-4767-853e-712d1f01311c ro splash initrd /boot/initrd.img-2.6.24-19-generic quiet</span> 4、大功告成,重啟電腦即可!
總結:原理上,在C盤根目錄下有boot.ini、grldr、grub.exe和menu.lst等幾個文件便可以引導windows和 linux雙系統,boot.ini本來已有,只需稍加改動;而menu.lst的編寫較為復雜,網上眾說紛紜,然而其實可以在linux文件系統里找 到,只需借助工具提取,不必要自己編寫。
引用:
http://wenku.baidu.com/view/de9f01eb81c758f5f61f674e.html
http://wenku.baidu.com/view/c5fc1e3d0912a2161479299e.html
http://wenku.baidu.com/view/0c93d0234b35eefdc8d3334d.html
總結
以上是生活随笔為你收集整理的XP或Win7系统下grub4dos安装双系统ubuntu(32或64)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用指向指针方法对N个字符串进行排序并输出
- 下一篇: C语言课程设计---歌厅歌曲管理系统