一、grub配置文件简介

grub是一个来自GNU项目的多操作系统启动程序,可用于在计算机启动时选择希望运行的操作系统或操作系统内核。grub由系统安装程序自动安装于MBR中,通常其引导主程序位于/boot分区的grub文件夹,配置文件为grub.conf。

grub.conf配置文件各字段说明

default指定默认启动的内核或OS,值为数字

timeout等待用户选择要启动的内核或OS的时长,值为数字,单位为秒

splashp_w_picpath指定使用的背景图片,路径开头要使用类似于(hd0,0)表示哪块硬盘、硬盘的哪个分区

hiddenmenu是否隐藏菜单,有这个字段则表示隐藏菜单,没有则表示显示

title每个可选系统的名称

root表示系统/boot分区所在硬盘的位置,也就是grub所在的位置,(hd0,0)在grub中用hd开头表示硬盘,并紧跟一个数字做各磁盘设备的标记,从0开始编号,第二个零表示硬盘的第一个分区,0-3为主分区。

kernel指定内核文件及传递给内核的参数

内核文件路径以/boot为根路径;

ro 表示只读方式挂载,为了不让设备损坏,之后还要重新以读写方式挂载设备;

root=/path/to/Device 指定真正的根分区设备,表示把此设备给内核真正的根分区使用

quiet 内核初始化以静默模式执行,表示不输出任何初始化信息

initrd此文件为加载内核的引导工具,通常以cpio归档,并使用gzip压缩,通常以.img作为文件名后缀

password给 grub菜单添加密码,须要指定加密方式例如

password --md5 $1$dnyTb1$VhieitehIKjT4Q3r/h/YT/

二、grub修复

当grub错误后,通常进不了系统,如果系统还没有关机则可以手动添加grub.conf配置文件。如果系统已经关机了,则可以使用grub命令进入grub命令行模式引导系统。如果grub.conf文件存在,但是grub的其它程序出错了,则可以使用setup命令重新安装MBR,或者可以使用grub-install命令重新安装grub并添加grub.conf配置文件。

1、使用grub命令引导系统

(1)、首先我们模拟一个出错的环境,手动移动grub.conf配置文件,并重启

(2)、开机后grub因为找不到grub.conf配置文件,因而引导程序会自动进入grub命令行模式。

输入:help 可以获得帮助命令

(3)、我们需在此环境下使用grub手动配置一个临时的grub.conf文件先让系统能够正常开机。从配置文件的几个参数中可知道,我们要先找到/boot分区所在位置,如果不知道则可以使用find命令查找内核文件(文件名通常为vmlinuz开头),因为内核文件所在路径即为/boot分区。假设我们不知道/boot分区在哪块硬盘的哪个分区,于是我们从(hd0,0)开始使用find命令试。

按Tab键试试能不能自动补全。

文件自动补全了,说明/boot分区就在(hd0,0)中。接下来可以开始配置其它参数了。

(4)、配置root

(5)、配置kernel,指定内核文件路径,以只读方式挂载,指定根分区设备,静默模式

(6)、配置initrd,指定initrd文件

(7)、配置好后,输入 boot 就可以进入系统了,进入系统的第一件事情就是先在/boot/grub/目录下,创建grub.conf文件。

2、使用grub-install命令重新安装grub

假如计算机开机连grub命令模式也进不了,怎么办呢。这时使用安装光盘引导系统进入紧急救援模式,使用grub-install命令重新安装grub然后再配合使用grub命令进入系统添加配置文件。

(1)、使用光盘引导系统,选择紧急救援模式进入系统。

(2)、根据提示可以知道,系统根目录挂载于/mnt/sysp_w_picpath,进入shell环境。

(3)、使用chroot命令切换根目录

(4)、使用grub-install命令安装grubgrub-install root-directory=/ /dev/sda

--root-directory参数的值的/boot分区的父目录,在当前系统下也就是根,/dev/sda表示安装在第一块硬盘。

2、使用setup重新安装MBR

同上使用光盘引导系统,进入救援模式,并且 chroot /mnt/sysp_w_picpath 切换根目录。

(1)、使用grub命令,进入grub模式

(2)、指定/boot分区

(3)、使用setup命令安装MBR,并且指定哪块硬盘。setup (hd0)

(4)、安装成功后,进入系统的/boot/grub目录,手动配置一个grub.conf文件,修复成功。

gnu grub修复_修复grub文件的几个方法相关推荐

  1. ubuntu系统损坏修复_修复损坏的ubuntu gui

    ubuntu系统损坏修复 I switch between work and Personal Computer a lot. I recently noticed that I haven't us ...

  2. windows7系统损坏修复_修复损坏的系统文件,就用系统文件检查器SFC,简单高效...

    Windows 10上许多系统问题都是由损坏的系统文件引起的,那么如何使用SFC命令程序修复Windows 10上的系统文件呢? 有没有注意到,使用电脑时,经常会出现Windows无法正常工作或Win ...

  3. java 获取文件名长度_利用Java文件类File的方法,获取磁盘文件的文件名、长度、大小等特性...

    利用Java文件类File的方法,获取磁盘文件的文件名.长度.大小等特性. 如题,大神们谁可以编写一个这样的java程序?     happy530755 | 浏览 1482 次 |举报 我 ...

  4. excel文件修复_修复Excel文件

    excel文件修复 If you're having problems with an Excel file, using the built in repair feature might fix ...

  5. excel 溢出 修复_修复Excel条件格式重复规则

    excel 溢出 修复 Conditional formatting is a great way to highlight specific data, but did you know that ...

  6. mysql 修复_修复崩溃的Mysql

    在mysql的配置文件my.cnf里找到 [mysqld]字段下,添加 innodb_force_recovery = 1 如果innodb_force_recovery = 1不生效,则可尝试2-- ...

  7. ae表达式修复_修复AE表达式兼容性防止报错Expression Universalizer v3.1.4脚本下载

    [脚本要求] 文件大小:17.47 MB 脚本语言:英文 脚本版本:v3.1.4 脚本兼容:支持 AE CC 2019,CC 2018,CC 2017,CC 2015,CC 2014,CC,CS6 W ...

  8. grub引导项修复详解_重新安装win7后,修复Grub启动项

    重新安装win7后,修复Grub启动项 发布时间:2010-09-14 22:14:00来源:红联作者:null925 [i=s] 本帖最后由 null925 于 2010-9-14 22:18 编辑 ...

  9. linux 从grub 进入rescue,在grub的rescue模式修复linux引导

    今天在windows 10系统收到系统更新通知,没看清楚就手贱点了马上更新.以为只是像那些普通更新一样重启一下更新就完了,万万没想到这个是覆盖更新,也就是说这是一个全新的系统更新而不是系统补丁.在安装 ...

最新文章

  1. SQL JOIN 中 on 与 where 有何区别
  2. 印象笔记三级目录_我的印象笔记使用手册
  3. composer不成功的原因
  4. POJ 1936 字符匹配(水题)
  5. Mr.J--JS学习(闭包私有化)
  6. cuda Synchronization Functions
  7. MYSQL数据库常用语句
  8. 华为P7电信4G版刷机包 EMUI2.3 官方B125 第3版 精简 ROOT
  9. Jump Desktop for Mac(远程桌面控制工具)怎么链接windows电脑
  10. 操作系统Nachos总结
  11. ppt抽奖vba代码
  12. OpenCore 黑苹果安装教程
  13. 英雄联盟胜负预测--简易肯德基上校
  14. 深度学习之学习(1-2)感受野(receptive field)
  15. Cisco WLC9800 CWA FlexConnect with ISE
  16. Sparkplug规范-4.引用标准和资源
  17. 华为OD机试 - 喊7的次数重排(Java JS Python)
  18. starGAN v2 论文阅读
  19. 随手记——echarts图表
  20. 计算机导么是进制,计算机基础 进制简介和转换

热门文章

  1. createnewfile() java_Java createNewFile()创建文件
  2. vue项目禁用鼠标右键
  3. 2022熔化焊接与热切割复训题库及答案
  4. 在 Windows中移动硬盘不自动分配盘符的问题
  5. iframe属性与用法
  6. Tornado的部署
  7. Linux 下 手动更新Firefox
  8. 0基础手把手教你弄寝室指纹识别开门装置(arduino uno,as608)
  9. 在vue中使用pdfjs-dist把pdf文件转为canvas
  10. html5滚动条选择,HTML5 烟灰色的范围选择滑动条