歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux文化 >> 實例演示:GRUB安裝、配置及使用匯總

實例演示:GRUB安裝、配置及使用匯總

日期:2017/2/27 11:58:12   编辑:Linux文化

(一)安裝linux時安裝grub.

安裝redhat linux時會提示安裝引導程序,如果選擇grub為引導程序,建議把grub安裝到硬盤的引導扇區MBR.grub 還可以引導其它操作系統,如 FreeBSD、NetBSD、OpenBSD、GNU HURD 和 DOS,以及 Windows 95、98、NT、2000、XP。

(二)grub的配置

一旦選擇了grub為引導程序,下面我們來了解一下它的配置.

/boot/grub/grub.conf是grub產生一個引導選擇菜單以及設置一些選項.下面是我的grub.conf:

#==========例子開始==========

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE: You have a /boot partition. This means that

# all kernel and initrd paths are relative to /boot/, eg.

# root (hd0,6)

# kernel /vmlinuz-version ro root=/dev/hda10

# initrd /initrd-version.img

#boot=/dev/hda

default=0

timeout=10

splashimage=(hd0,6)/grub/splash.xpm.gz

# -->; Redhat Linux 8.0 ; Microsoft Windows XP ; 提示符處,輸入:

grub>; root (fd0)

grub>; setup (fd0)

grub>; quit

現在,引導盤完成了。

(四).恢復被windows破壞的grub.

如果你用grub來引導linux和windows,當windows出毛病重新安裝後,會破壞MBR中的grub,這時需要恢復grub.

1.把linux安裝光盤的第一張放到光驅,然後重新啟動機器,在BOIS中把系統用光驅來引導。

2.等安裝界面出來後,按[F4]鍵,也就是linux rescue模式。

3.一系列鍵盤以及幾項簡單的配制,過後就[繼續]了。。。這個過程,我不說了,比較簡單。

4.然後會出現這樣的提示符:

sh#

5.我們就可以操作GRUB了.輸入grub:

sh#grub

會出現這樣的提示符:

grub>;

我們就可以在這樣的字符後面,輸入:

grub>;root (hdX,Y)

grub>;setup (hd0)

如果成功會有一個successful......

這裡的X,如果是一個盤,就是0,如果你所安裝的linux的根分區在第二個硬盤上,那X就是1了;Y,就是裝有linux系統所在的根分區。 setup (hd0)就是把GRUB寫到硬盤的MBR上。

(五).用NTLoader來引導linux.

如果你在安裝linux時沒有選擇安裝grub,不必著急,現在我們來看看如何在安裝linux後安裝grub.並用windows的NTLoader來引導linux.

1. 安裝grub

我用的grub是Redhat8.0帶的grub安裝包: grub-0.92-7.rpm

安裝: rpm -ivh grub-0.92-7.rpm

其他安裝方式也一樣,只要你安裝上grub就行了.RH8缺省用的grub, 1,2步驟可以省了.

2. 建立grub的環境

cp /usr/share/grub/i386-pc/* /boot/grub

3. 生成grub的配置文件/boot/grub/menu.conf

按照上面所講的grub.conf來生成一個配置文件.

注意了, 這裡我的linux在/dev/hda4,所以menu.conf那些分區位置為(hd0,3),

你的可能不一樣了,不能完全照著"畫瓢"噢! 下面第3步install的中的分區位置也應該和你的系統一致.

3. 安裝grub至Linux分區boot

將grub的stage1安裝到/dev/hda4的boot扇區(hd0,3). 過程如下:

/sbin/grub (運行grub)

grub>; install (hd0,3)/boot/grub/stage1 d (hd0,3) (hd0,3)/boot/grub/stage2 p (hd0,3)/boot/grub/menu.conf

(注意,上面"grub>;"為grub的提示符,其後內容寫在一行上.)

4. 取得grub的boot信息

過程如下:

dd if=/dev/hda4 of=/grub.lnx bs=512 count=1

這樣得到grub的引導信息,只要用NT Loader來加載它就行了.

5. 將上面得到的grub.lnx弄到Windows的C盤根目錄下

可以先把grub.lnx弄得軟盤上,然後啟動windows,拷貝到C:\; 情況允許也可以直接在Linux下拷貝到C:了. 我的C盤(即設備/dev/hda1)為FAT32, 可以直接從Linux下弄過去了. 如下:

mount -t vfat /dev/hda1 /mnt/c

cp /grub.lnx /mnt/c

umount /mnt/c

6. 修改NT Loader的boot.ini

在其中加入一行: C:\grub.lnx="Redhat Linux - GRUB"

加入後boot.ini的內容如下:

[boot loader]

timeout=15

default=C:\boot.lnx

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

[VGA mode]" /basevideo /sos

C:\grub.lnx="Redhat Linux - GRUB"

OK. 可以用NT Loader加載Linux了, 其實上面過程基本上和用NT Loader加載LILO一樣.其基本思想就是用NT Loader來加載LILO或grub的引導區(grub.lnx), 其中的關鍵就是LILO或grub的引導區的獲取.

(六)活用grub的交互功能

grub具有強大的交互功能.學會了將會使你受益非淺!

1.grub沒有顯示菜單怎麼辦?

當開機後進入grub界面但沒了菜單,只剩下一個grub>;提示符,怎麼啟動呢?別急,看下面:

grub>;cat (hd0,6)/boot/grub/grub.conf (為了看參數)

grub>;root (hd0,6)

grub>;kernel (hd0,6)/vmlinuz-2.4.18-14 ro root=LABEL=/

grub>;initrd (hd0,6)/initrd-2.4.18-14.img

grub>;boot

OK!啟動了吧!以上有些數字要根據你的實際情況更改.

以上這個方法也可以用於測試新編譯的內核.

2.進入單用戶模式.

有時不小心把root用戶密碼忘了,只能進入單用戶模式來重新設置root密碼.方法如下:

開機進入grub界面,按C進入命令行模式,然後按照上面的方法進行,只是在第三步要在後面加入single參數.

Copyright © Linux教程網 All Rights Reserved