引导命令启动Linux系统,使用Grub命令行来营救Linux操作系统

在采用Grub启动的Linux系统中,当由于操作人员无意破坏/boot/grub/menu.lst文件后,Linux系统就无法通过grub界面启动了,只能通过Grub命令行来引导、营救启动操作系统。

803fc3d065210a86bba841f6d34e70f3.png

通过查阅相关问题发现,grub命令行来引导操作系统并非难事,无非是进入到grub>提示符界面后,通过命令指定该Linux系统的boot分区、kernel文件、initrd文件后,执行boot命令启动系统即可。但是该过程中tab键的命令补齐功能就显得很重要,另外,如果您不知道有哪些命令,可以输入help求助。

一. Grub命令介绍

Grub(GRand Unified Bootloader)是一个来自GNU项目的多操作系统启动程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

它是一个多重操作系统启动管理器,用来引导不同系统,如windows,linux。在X86架构的机器中,Linux、BSD 或其它Unix类的操作系统中GRUB、LILO 是大家最为常用,应该说是主流。

二. Linux系统引导步骤

步骤1:进入GRUB的命令行模式 grub>:

如果开机时,GRUB出现的是grub>,说明你没有/boot/grub/menu.lst ,已经进入GRUB的命令行模式;如果出现GRUB图形界面,则需要输入esc键,接着输入e进入编辑模式,在输入c即可进入GRUB的命令行模式。此时,屏幕上会出现grub> 提示符如下所示:

grub>

步骤2:使用help命令获取帮助GRUB的帮助:

只要您在grub>提示符的后面输入help 就能得到GRUB所有的命令提示;

如果需要得到某个指令的帮助,就在 help 后面空一格,然后输入指令,比如:

grub>help kernel

步骤3:读取Linux系统的/分区和boot分区:

使用GRUB的cat指令是用来查看文件内容的,有时我们不知道Linux的/boot分区,以及/根分区所在的位置,要查看/etc/fstab的内容来得知,这时,我们就要用到cat (hd[0-n],y)/etc/fstab 来获得这些内容,注意要学会用tab键命令补齐的功能,如:

addfa6e58a133841a02a885f2da5a708.png

grub> cat (hd0,6)/etc/fstab

注:比如查看一下(hd0,6)/etc/fstab的内容,读取/分区和boot分区,输出如下

3617cd7f27eb65f1abd039780fb81168.png

主要查看/etc/fstab中的内容,主要是Linux的/分区及/boot是否是独立的分区。如果没有/boot类似的行,证明Linux的/boot和/处于同一个硬盘分区;比如上面的例子中LABEL=/ 这行是极为重要的。

说明:Linux系统就安在标签为LABEL=/的分区中,另外,该文件没有/boot的分区,说明该Linux系统的/boot和/处于同一个硬盘分区。

cat指令是用来查看文件内容的,有时我们不知道Linux的/boot分区,以及/根分区所在的位置,要查看/etc/fstab的内容来得知, 这时,我们就要用到cat (hd[0-n],y)/etc/fstab 来获得这些内容,同时用tab键命令补齐的功能协助。

说明:如果您的Linux系统/boot和/没有位于同一个分区,可能cat (hd[a-n],y) /etc/fstab 查到的是类似下面的:

d27b8797df1d70e8a8437a302ad70600.png

步骤4:使用root命令确定boot所在的分区:

在GRUB中使用root命令确定root所在分区。其实这个root (hd[0,n],y)是可以省略的,如果省略了,我们要在kerenl 命令中指定;我们前面已经说过 (hd[0-n],y) 硬盘分区的表示方法的用途;主要是用来指定/和/boot所在的分区(相对于boot分区指定/分区)。

如:我们确认/boot和 (hd0,6),所以就可以这样来输入root (hd0,6)

grub> root (hd0,6)

如果发现不对,可以重新来过;没有什么大不了的。

步骤5:指定Linux内核:

kernel 这个指令用来指定Linux内核。可能初学者有点怕,不知道内核在哪个分区,及内核文件名的全称是什么。不要忘记tab键的命令补齐的应用。比如,前面已经指定了root所在分区:

如果/boot和Linux的/位于同一个分区,应该是下面的一种格式:

56dd0fcf71ed43db3c72677134d6b6c2.png

如果/boot有自己独立的分区,应该是下面的一种格式:

f33adc96858c9c34301ddd3ea85f5f86.png

步骤6:指定initrd(ramdisk):

如果/分区和/boot是同一个分区,语法如下:

258d7829585973090f76ed6056fd5673.png

如果/boot是独立的一个分区,语法如下:

f54f42af024a898f7d3185a529dc90bb.png

步骤7:执行boot命令引导系统:

grub>boot

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值