起源還是學習上要用到 linux 操作系統,所以才在自己電腦上安裝 linux 操作系統。先開始是在虛擬機上用的,但用過一兩星期就感覺還是不適合,用虛擬機感覺只要 ctrl+Alt 就能退出來,給自己留了太多的退路,又回到了 windows 環境。所以個人很支持在硬盤上安裝雙系統,在操作系統的選擇上,我是支持 ubuntu 的,因為她擁有一個堅固的后盾,那就是 http://forum.ubuntu.org.cn/ ,記住這個網址,有什么問題都可以找她。
好了廢話也不多說了,就我自己的安裝經歷給大家講一講在 win7 操作系統下安裝 Ubuntu 過程中會遇到的各種問題(本人是兩塊硬盤,所以情況更復雜,但也更有參考價值!)。
?
STEP1: 下載 ubuntu?
目前截止到 2010/10/23 最新的版本是 10.10
http://www.verycd.com/topics/2857712/ ?這是電驢上的資源,可以去下, 600 多 M 不是很大,下載完當然刻盤后就叫 ubuntu?10.10?LiveCD 。
?
STEP2: 空出你的硬盤空間
安裝 ubuntu 所需要的空間不大, 10G 足以(太夠了,考慮到以后還要裝其他一些東西,留大一點吧)。
?
STEP3: 情況調查
QA: 你機箱中安裝了幾塊硬盤?
A1 、一塊?(太簡單了,網上很多教程都適合你)
A2 、兩塊?(情況復雜,引導需要小心)
?
QB: 你愿意將 liveCD 刻錄下來嗎?(這會省去你許多麻煩,也可以收藏以備崩潰后重新安裝。但沒有刻錄機和空白光盤的用戶也不要著急,還是有辦法的)
B1 、愿意??????
B2 、不愿意
?
一、 A1B1用戶
????太簡單了,將你的 liveCD 塞入光驅,從主板設置由 CDROM 啟動系統也就是我下面要說的 二、 A1B2 用戶??的第 6 、 7 兩步,呵呵,這時大多數人發現在開機的 GNU?GRUB 中沒有 win7 系統 的選項只能進入 ubuntu ,請往下翻頁至——從 ubuntu 中修復 win7 開機引導?就教你解決這個問題
?
?
二、 A1B2用戶
這就是網上說的很多的“ win7 下如何使用 GRUB4DOS 來引導硬盤安裝 LINUX 系統 ”,好這里提到了一個新的名詞“ GRUB4DOS ”?這是 ubuntu 社區上一篇帖子 http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=150541 ,可以去膜拜一下,當然如果想省一點時間,我就簡單地說——這是一款在 win7 下能在啟動主板后引導進入光盤或操作系統的軟件(雖然很不全面,但在本教程中就起到這點作用了),這是她的下載地址,去下一個最新版的(就是最新發布的,這個不會不懂吧)吧 http://download.gna.org/grub4dos ? ,這是很多小軟件的集成打包,我們只會用到其中的幾個,這個待會再說。
1、
將下載的
grub4dos
解壓,復制其中的
menu.lst
、
grldr
和
grldr.mbr
三
個文件到
C
盤根目錄
(就是
C:\
)
,如果想
GRUB
支持中文,那就把
china
文件夾中的
grldr
放在
C
盤根目錄下。
2
、將下載的
ISO
文件
ubuntu-9.04-desktop-?i386.iso
放在分區根目錄下
,
并將用
winrar
或者虛擬光驅打開
LINUX
的
ISO
文件,這里以
ubuntu-
10
.10-dvd-i386.iso
為例,該文件內
casper
文件夾里的
initrd
和
vmlinuz
這兩個文件復制到
C
:盤根目錄
,
(其實不一定放在
C
盤根目錄,任何一個分區都可以,只要你的
menu.lst
文件參數配置正確就可以了,例如只有一塊硬盤,放在
C
盤就是(
hd0,
0
)
,
D
盤就是(
hd0,
1
)依次類推),
menu.lst
中指定
initrd.lz
和
vmlinuz
兩個文件的路徑是
正確的
就可以了,并不一定要把
initrd.lz
和
vmlinuz
兩個文件放到根目錄的。
3、 這里將會出現一個分歧,網上有些教程會使用 boot.ini 方法,有的會使用 BCDedit 方法。這里我推薦使用 BCDedit 方法,原因有一下兩點:?? 1 )、 boot.ini 方法對 win7 使用軟改激活的用戶會導致啟動不能(雖然我也不確定軟改的具體定義是什么,但君子不立危墻之下,不要沒事找事了,當然純學習時間的例外)?? 2 )、 ?BCD(Boot?Configuration?Date) 即系統引導配置數據,這是從 Windows ?Vista 開始才引入的。我們知道,在 Windows ?Vista/Server?2008 中 BootManager 組件負責系統的初始化和引導工作,而與之相匹配系統的引導數據就 存儲 在 BCD 中。 這才是 win7 引導的核心,已經不再用 boot.ini 引導了,當然 win7 還是承認 boot.ini 文件的這也是為什么 boot.ini 方法能起作用的原因。初步了解 BCD ,這也將是本次安裝的額外收獲。?? PS: 強烈推薦閱讀 ubuntu 社區 smallapple ?所整理的 grub2 基礎教程 , http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=229387 這是帖子的地址,這個 pdf 教程有 21 頁,我是打印下來放入文件夾好好閱讀收藏的。事實上,教程非常詳細,對 ubuntu 的引導問題基本都提到了,膜拜!如果說 BCD 是 win7 引導的核心,那么 grub 就是 ubuntu 的 BCD 了,現在自 ubuntu9.10 升級后就默認使用 grub2 了,一定要了解一下。
4、 我們使用 BCD 方法:
???? 1) 、 在 WIN7 里以管理員的身份運行 cmd ,打開命令提示符
???? 2) 、輸入? bcdedit? ? /export? ? " D :\BCD?Backup"?
# 將系統存儲的內容導出到文件。此文件可以在以后用于還原系統存儲的狀態。此命令僅對系統存儲有效。注意 : 一定要備份,一方面以還原防止操作錯誤,另一方面,后面再說(順帶一提 :bcdedit?/import?"D:\BCD?Backup" 就是與之相對的還原操作)
????3) 、輸入 bcdedit?/create?/d?“GRUB4DOS”?/application?bootsecto r
# 這個命令會產生一個 guid 打印在 cmd 窗口中 , 通俗講就是在啟動隊列中占一個位置。注意: guid 類似于 {******xx-***x-***x-***x-************} 格式,具體數字根據硬盤或分區參數會有相應變化。 例如我的就是 {dadaa27d-c9f1-11df-a802-ce8c84d8192b}, 我們把它復制下來,我們下面有用(有同學提到:怎么復制呀?這里提一種方法? 在 cmd 窗口右鍵 → 標記 → 選中要復制的東西再點鼠標右鍵,此時選中的文本會變成未選中的狀態,不過沒關系,按下 Ctrl+C , information 就到你的剪貼板里了 ~ 到目的地去 Ctrl+V 吧 ~ ! )
?? ?4) 、 bcdedit? ? /set? ?{dadaa27d-c9f1-11df-a802-ce8c84d8192b} ? ? device? ? partition=C:
# 設定操作系統 {dadaa27d-c9f1-11df-a802-ce8c84d8192b} 引導分區“C” , 設置剛剛添加啟動項的啟動分區,這里設的是 C 盤,因為我們的文件都在 C 盤 。
??? 5) 、 bcdedit? ? /set? ?{dadaa27d-c9f1-11df-a802-ce8c84d8192b}? ?path? ? \grldr.mbr
# 設置啟動時運行的文件。
??? 6)
、
bcdedit?/displayorder?
{dadaa27d-c9f1-11df-a802-ce8c84d8192b}
?/addlast
???? #
這個只是為了將增加的啟動項放到其他啟動項的后面。
注意:也可以用
/boo
tsequence?選項,具體可以去百度再了解一下,我就不具體列舉了。
??? 7)
、
最后可以用??
bcdedit?/enum??
查看一下,會看到執行上述命令后產生的啟動項配
置。
實模式啟動扇區
———————
標識符?????????????????
{dadaa27d-c9f1-11df-a802-ce8c84d8192b}
device??????????????????partition=C:
path????????????????????\grldr.mbr
description?????????????GRUB4DOS
這樣就完成了在
WIN7
啟動菜單添加
GRUB
的選擇項了,只要你在
C
盤根目錄下寫一
個正確的
menu.lst
文件就可以引導硬盤安裝
LINUX
啦。
5、 書寫正確的 menu.lst 文件
回到我們的 C 根目錄下從 GRUB4DOS 中拷貝出來的 menu.lst 文件,里面有一些書寫說 明,不過是英文的,我略微說一下我們要用到的內容。首先將里面的說明都刪掉,寫下內容如下:
?
default?0?
timeout?0?
?
title?ubuntu?
10.10?
install
rootnoverify?(hd0,0)
kernel?/vmlinuz?boot=casper?iso-scan/filename=/ubuntu-
10
.
10
-desktop-i386.iso?ro?quiet?
splash?
locale=zh_CN.UTF-8
initrd?/initrd.gz
title?Windows?
7
rootnoverify?(hd0,1)
chainloader?+1
?
不懂?沒事也不需要太了解,具體的 menu.lst 寫法可以參考網上的教程,我記得比如: http://www.360doc.com/content/09/0817/19/74585_4997923.shtml ?很不錯的簡單介紹。
6、 接下來,就是重啟,安裝 ubuntu 了,很簡單也許在分區那邊會遇到一些問題。我的建議 是用手動指定分區然后把你在 STEP2 中空出的盤選擇 ext4, 掛載在? /? 上(注意剩下 2G 空間),剩下的 2G 可以用作 swap 分區,關于分區方面的知識建議閱讀《鳥哥的私房菜》, 現在已經是第三版了,強烈推薦通讀此書,寫的很好,很基本。
7、
安裝完成后她會要求你重啟,這時大多數人發現在開機的
GNU?GRUB
中沒有
win7
系統
的選項只能進入
ubuntu
,請往下翻頁至——從
ubuntu
中修復
win7
開機引導?就教你解決這個問題
?
?
三、 A2B1 用戶
擁有兩塊硬盤,那么注定你在安裝上沒有什么問題,但是在系統引導上肯定會出現問題。我的建議是,一定要搞清楚你的硬盤狀況,比如每一個分區是什么??你的 win7Loader 在哪里?……
1 、不要被嚇唬住了!先通過 LiveCD 安裝 ubuntu 吧,不管怎樣都是要裝的。
在引導程序的安裝位置上,我建議就裝在 / 目錄所在的分區,這樣重啟后你會進入 win7 就像我當初一下,直接進入 win7 ,就像沒裝過 ubuntu 一樣。別急,用 LiveCD 引導進入 ubuntu 。
2、
這時?就是通過腳本
script
,完整了解你的系統情況的時候了,感謝
ubuntu
社區的
onshoestring
??
他向我提供了這個腳本,
http://sourceforge.net/projects/bootinfoscript/
把文件先復制到桌面,
在
終端運行:
sudo?bash?~/
桌面
/boot_info_script055.sh
??
生成的
RESULTS.txt
文件
中有詳細的信息
3、 你這時了解你的硬盤了嗎?呵呵,下面可以通過
——從 ubuntu 中修復 win7 開機引導(利用 Ubuntu-GRUB2 來引導)
——從 win7 中修復 ubuntu 開機引導(利用 BCDedit 來引導)
來自由選擇你的引導程序是通過 Ubuntu-grub2? 進入 win7 還是通過 win7-BCD 來調用 Grub2 以進入 ubuntu
?
?
四、 A2B2 用戶
你選擇了一條最艱巨的路,先把 A1B2 的執行一遍以安裝 ubuntu? ,再選擇
——從 ubuntu 中修復 win7 開機引導(利用 Ubuntu-GRUB2 來引導)
——從 win7 中修復 ubuntu 開機引導(利用 BCDedit 來引導)
來自由選擇你的引導程序是通過 Ubuntu-grub2? 進入 win7 還是通過 win7-BCD 來調用 Grub2 以進入 ubuntu ,呵呵。
?
?
?
——從 ubuntu 中修復 win7 開機引導(利用 Ubuntu-GRUB2 來引導)
?
既然是從 ubuntu 修復 win7 的啟動項,那就必須進入 ubuntu ,對于那些只能進入 win7 卻無法進入 ubuntu 的用戶,可以用 LiveCD 引導進入(就是最開始選擇試用 Ubuntu , LiveCD 的作用終于體現出來了)。當然對于 B2 而且無法進入 ubuntu 的情況,我們還有下面的教程——從 win7 中修復 ubuntu 開機引導。好,廢話不多說,進入正題。
進入 ubuntu 后,請打開終端輸入:
1、
sudo?fdisk?-l?
(
注意是小寫的
L
,不是數字的
1
,此步用于確定電腦中安裝?
Ubuntu10.
10
?的所在分區的位置,輸入以后會輸出類似如下信息,找到
system
為
Linux
的那行,記住
/dev/sdaX
的情況,比如本人的電腦是
/dev?/sda7
,以下就以此為例,你自己的請加以更改
)
2、 ?s udo? ? -i? (此步用于得到 root 權限,無需輸入密碼,方便以下操作)
3、 ?mount??/dev/sda7??/mnt???( 注意, sdaX 是第一步查到的 / 目錄所安裝的盤)
4、 ?mount??/dev/sda7??/mnt/boot?( 如果 boot 是單獨分區裝的話才需要這一步,……總之把其他單獨分區安裝的目錄都掛上去,例如 /home? 、 /var 等 )
5、 ?mount??--bind??/dev??/mnt/dev??( 重要,一定要掛)
6、 ?mount??--bind??/proc??/mnt/proc??( 重要,一定要掛)
7、 ?chroot??/mnt??(chroot 掛好的 ubuntu)
8、 ?grub-install???/dev/sda???( 雙硬盤的用戶注意,此處的 sda 是由 win7loader 所在位置所決定的,就是說,如果你的 win7 和 ubuntu 假如都安裝在 sdb, 但 win7loader 卻在 sda 的話,也只能寫 sda ,具體怎樣查看 win7loader 在哪里,我在 A2B1 中有所講解 )
Ps: 這一步執行后會有幾行代碼出現,總體來說就是成功的,用 liveCD 引導進入的用戶可能會遇到?? cannot?find?***prition? 等字樣,無視他,沒關系的,重啟后你就會發現終于可以進入 ubuntu 了,然后再按照這個步驟執行一遍。?關于這個問題的記載我在一個英文的叫做:小石頭工作室的網頁上找到的……很遺憾,網址沒記錄下來,遺失了,還是感謝他們!
9、 update-grub???? (重裝 grub2 )
感謝 ubuntu 社區的 foxman997 在他的帖子中我才正確
知道為什么嗎?好好 閱讀 ubuntu 社區 smallapple ?所整理的 grub2 基礎教程 , http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=229387 這是帖子的地址,下載他整理的 pdf 文檔。
?
——從
win7
中修復
ubuntu
開機引導(利用
BCDedit
來引導)
前
4
步的流程和
?
二、
A1B2
用戶??中的
win7
下如何使用
GRUB4DOS
來引導硬盤安裝
LINUX
系統
步驟一樣,區別就在第
5
步,
書寫正確的
menu.lst
文件
文件如下:
?
Timeout?0
Default?0
Title?grub2
Find??--set-root??/boot/grub/core.img
Kernel??/boot/grub/core.img
Boot
( 當然,若果 /boot 單獨分區的話,改為?
Find??--set-root??/grub/core.img
Kernel??/grub/core.img)
這個方法在 ubuntu 社區 smallapple ?所整理的 grub2 基礎教程 記載, <="" iv="">
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
