Chinaunix首页 | 论坛 | 博客
  • 博客访问: 45229
  • 博文数量: 11
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 90
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-09 03:21
个人简介

运维新人!

文章分类

全部博文(11)

文章存档

2015年(1)

2014年(10)

我的朋友

分类: 系统运维

2014-12-01 15:22:29

解析

Linux

系统下

GRUB

故障修复

 

 

在使用

Linux

的过程中,

大多初学者都遇到过系统启动到“grub>”提示符后就停止不前的问题,

功夫不深的爱好

者可能会束手无策,

转而选择重装系统,

其实这只是系统出现了一点小问题,

既系统的

GRUB

配置文件出现了故障,

此时可以采用以下两种方案来解决问题:

  

1)

存在

GRUB

配置文件备份

  

如果存在

GRUB

配置文件备份,则可以比较简单的进行恢复,可以按如下方法进行:

  

使用光盘引导机器,进入到“linux rescue”模式,即系统维护模式;在提示符”sh#”下执行

cp

命令,将备份

文件拷贝到

/boot/grub.conf

即可

 

Sh#cp /backup/grub.conf.bak /mnt/sysimage/boot/grub/grub.conf  

假设备份文件为

/backup/grub.conf.bak

,因为大多数

Linux

光盘修复模式中会将硬盘系统的”/”分区

chroot

到

“/mnt/sysimage”

处

,

所

以

拷

贝

的

目

标

为

“/mnt/sysimage/boot/grub/grub.conf”

,

而

非

“/boot/grub/grub.conf”。

  

完成后重新启动即可。内核文件、镜像文件、

/boot

目录等文件损坏或丢失,也可以使用此种方法修复。

  

2)

如果没有

GRUB

配置文件备份

  

如果没有备份文件时可以使用

grub

的交换功能,可以在”grub>”命令行下进行以下操作以手动启动系统:

  

查找

/boot/grub/grub.conf

分区所在的目录:

  

grub> find /boot/grub/grub.conf  

(hd0,0)  

需要注意的是,上述命令将得到的是

grub.conf

配置文件所在的系统的分区,

(hd0,0)

即表示它在分区

hda1  

查看

grub.conf

文件错误使用如下的命令:

  

grub> cat (hd0,0)/boot/grub/grub.conf  

需要注意的是,可以查看配置文件到底什么地方出现了错误,以便进入后修改。

  

指定

/boot

分区使用命令:

root (hd0,0)  

从此步骤开始,即为本文前面提到的

GRUB

配置文件的主要引导步骤,只是一般都是系统读取

GRUB

配置文件,出

现问题时我们可以使用手动启动。

  

指定内核加载的命令:

kernel /boot/vmlinuz ro root=LABEL=/  


镜像文件所在的位置可用如下命令:

initrd /boot/initrd-2.6.24-1.3194.fc7  

从

/boot

分区启动可以使用如下命令:

boot (hd0,0)  

此时系统即可正常启动,

实际上以上步骤就是执行了

GRUB

引导期间加载

grub.conf

文件的步骤,

当系统正常启动

后将

GRUB

配置文件修改正确后即可。

 

 

 

 

 

重建

 

GRUB (linux boot loader)

 

 

GRUB (GRand Unified Bootloader 

縮寫

) 

是

 linux 

系統中常用的系統啟動軟體,另一個同功能的是

 

LILO (LInux LOader 

縮寫

)

,它的作用是接管

 BIOS 

交付控制權給作業系統時的第一個工作–把作業系

統正確地從硬碟載入。

通常一般使用者在用光碟裝完

 linux 

後,

例如

 ubuntu

,

系統就會自動裝好

 GRUB

,

就像

 Windows 

系統一樣。然而如果有某種原因被毀損了,最常見的是在同個硬碟想有

 dual 

system

,先

裝好

 linux 

再裝

 Windows

,

Windows 

會很不客氣毫不猶豫地直接蓋掉

 GRUB

,

你的

 linux 

就此無法開機,

這時就需要重建

 GRUB 

了?

 

 

如何重建

 GRUB 

的步驟如下:

 

?

 

使用原來的

 linux 

安裝光碟開機。

現代的系統都是

 live-cd

,

即開機光碟

 boot 

完就是可操作的

系統。

  

?

 

開一個終端機程式,可以輸入命令。

  

?

 

執行

 sudo grub

,回答密碼。

  

?

 

grub> find /boot/grub/stage1

,它會找原來裝

 GRUB 

的硬碟分區,例如

 (hd1,0)

,即第二個硬

碟的第一個分區。

  

?

 

grub> root (hd1,0)

,告訴它

 linux root 

在哪裡。

  

?

 

grub> setup (hd0)

,安裝

 GRUB 

在第一個硬碟的

 MBR (Master Boot Record)

。把

 Windows 

的

 

bootloader 

蓋掉? 之後可以在

 GRUB menu 

中加入進

 Windows 

系統的選項,本文不討論這個。

  

?

 

grub> quit

,結束,這樣就完成

 GRUB rebuild

,可以

 reboot 

了。

  

另一作法是把

 GRUB 

安裝在硬碟分區裡,例如

 grub> setup (hd1,0)

,安裝

 GRUB 

在第二個硬碟的第一

個分區,而不是

 MBR

。這種方法可以使用

 Windows 

的

 boot 

loader 

來作

 dual 

system 

啟動,我就是這

麼作的,下回再來介紹

阅读(942) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Linux中GRUB引导故障的修复

给主人留下些什么吧!~~