1. 开机选单是自动创建出来的

请勿尝试手动编辑开机选单,因为它是按照 /boot/ 目录内的文件自动创建出来的。然而你可以调整 /etc/default/grub 档内定义的通用设置,及在 /etc/grub.d/40_custom 档内加入个别自定项目。

/etc/default/grub 档的内容如下:

GRUB_TIMEOUT=5
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

通用于所有项目的内核选项都通过 GRUB_CMDLINE_LINUX 行来定义。举个例说,要是你想看见详细的开机消息,删除 rhgb quiet。要是你想看见标准的开机消息,只删除 rhgb。执行以下指令便能套用更改了的设置:

[root@host ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-229.14.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-229.14.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-229.4.2.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-229.4.2.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-229.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-229.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-605f01abef434fb98dd1309e774b72ba
Found initrd image: /boot/initramfs-0-rescue-605f01abef434fb98dd1309e774b72ba.img
done

UEFI 系统上的指令是 grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

2. 如何定义缺省项目

若要列出系统开机时显示的所有选项,请执行以下指令:

[root@host ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux 7 (Core), with Linux 3.10.0-229.14.1.el7.x86_64
1 : CentOS Linux 7 (Core), with Linux 3.10.0-229.4.2.el7.x86_64
2 : CentOS Linux 7 (Core), with Linux 3.10.0-229.el7.x86_64
3 : CentOS Linux 7 (Core), with Linux 0-rescue-605f01abef434fb98dd1309e774b72ba

又或者:

[root@host ~]# grep "^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2

/etc/grub2.cfg 这个文件名指向 grub.cfg,而它的位置视乎结构而定。访问文件时采用绝对路径是较佳的做法,在维修系统时更甚。缺省的项目是通过 /etc/default/grub 档内的 GRUB_DEFAULT 行来定义。不过,要是 GRUB_DEFAULT 行被设置为 saved,这个选项便存储在 /boot/grub2/grubenv 档内。你可以这样查看它:

[root@host ~]# grub2-editenv list
saved_entry=CentOS Linux (3.10.0-229.14.1.el7.x86_64) 7 (Core)

/etc/default/grub 档内另一个有用的选项是:

GRUB_SAVEDEFAULT=true

连同 GRUB_DEFAULT=saved,它确保现时选择的开机项目会被设置下次开机采用 —— 适用于双重开机的系统,因为更新 Windows 须要数次重新开机。

/boot/grub2/grubenv 档是不能手动编辑的。请采用以下指令:

[root@host ~]# grub2-set-default 2
[root@host ~]# grub2-editenv list
saved_entry=2

留意上述 awk 指令输出的第一个项目的编号是 0。

现在你可重新引导系统。

3. 修复模式及紧急模式

Linux 0-rescue-... 这个选项会令系统进入修复模式。这等同于单独用户模式。

此外,CentOS 并提供了一个紧急模式。在这模式下,systemd 引导后便会立刻出现一个指令壳。其它程序都不会被引导,而主文件系统将会以只读模式挂载。其它文件系统都不会被挂载。

要进入紧急模式,请在 grub2 的选单按 e 键来编辑设置。然后在内核选项的末端加入 systemd.unit=emergency.target

[如果你与 systemd 关系良好 你可以在 /usr/lib/systemd/system/emergency.service 档内查看紧急模式时发生什么事情。]

4. Stage 1.5(core.img)的收录位置

grub/grub2 的文件都位于 /boot 文件系统内。在一个传统(非 UEFI)的 BIOS 环境下,首先会装入一个开机映像(grub 是 stage1,grub2 是 boot.img),接著是装入 stage 1.5(grub2 是 core.img),它会引导 /boot 文件系统内的程序。stage 1.5 的收录位置可以是紧接 MBR,或在 /boot 文件系统的分区内。在 CentOS 7,缺省的位置是紧接 MBR。

linux centos7 设置 grub2相关推荐

  1. linux centos7 设置主机间时钟同步

    linux centos7 设置主机间时钟同步 安装ntp服务 yum -y install ntp 开启ntp服务 systemctl start ntpd 设置ntp服务开机自启 systemct ...

  2. Linux(Centos7) 设置静态IP

    关于虚拟机 这里使用Centos7为例,因为linux是安装在在虚拟机中,这里先看一下虚拟机的网络适配器: 这里我使用的NAT模式,接着配置虚拟机的虚拟网络: 这里主要看一下VMnet8的设置: 这里 ...

  3. linux centos7 设置开机 进入命令行 不进入图形界面

    命令如下: [root@localhost ~]# systemctl get-default graphical.target [root@localhost ~]# systemctl set-d ...

  4. Linux centos7设置禁Ping

    1.打开配置文件 vim /etc/sysctl.conf 2.修改配置文件,在底部新加一行 net.ipv4.icmp_echo_ignore_all = 1 3.修改完成后执行sysctl -p使 ...

  5. [Linux CentOS7] Web服务器搭建和设置

    [Linux CentOS7] Web服务器搭建和设置 题目 基本网络配置 问题1 问题2 问题3 问题4 问题5 环境: VMware workstation14 CentOS 7 题目 请完成以下 ...

  6. Linux CentOS6和CentOS7设置静态ip

    一.CentOS6 1.1 请确认网络连接方式为:桥接 2.修改网卡eth0 执行命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0 ++++++++++ ...

  7. (转载)linux如何设置为低内核启动(降核)

    CentOS 6 系统更改内核启动顺序方法: 1.查看编辑/etc/grub.conf 文件 vim /etc/grub.conf 2.在grub.conf文件中决定开机使用哪个内核版本做启动的参数是 ...

  8. CentOS7设置GRUB系统内核开机选单

    CentOS7设置GRUB系统内核开机选单 方法一:(创建.查看.编辑.用命令设置) #根据/boot/目录内的文件 #自动创建GRUB内核配置开机选单 grub2-mkconfig -o /boot ...

  9. u盘linux和win7双系统安装教程,双系统安装Win7系统U盘安装linux centos7,详细步骤...

    转载 最近,我想在win7计算机上安装Linux双系统,因此我下载了Linux centos7版本. 经过两天的折腾,我在互联网上阅读了很多帖子,遇到了很多问题. 幸运的是,安装终于成功了,下面将对安 ...

最新文章

  1. 求职面试的十大错误,你犯过吗? | 每日趣闻
  2. mobi格式电子书_进阶能力 | 了解常见的电子书格式
  3. 基于java员工管理系统设计(含源文件)
  4. java强制gc_java应用性能调优之详解System的gc垃圾回收方法
  5. 我想创业,但不懂技术怎么办
  6. 达观数据:Tornado原理浅析及应用场景探讨
  7. 新版win10卸载Microsoft Edge
  8. silvaco学习笔记—— Automatic Meshing
  9. 想在大学约妹子?先学这些PC维护技巧吧
  10. matlab 三维图形改变线宽,用PANDAS改变线宽绘制三维线图
  11. Java学习里程-----Java基础_26 BigDecimal类
  12. java计算机毕业设计高校学生综合素质测评系统MyBatis+系统+LW文档+源码+调试部署
  13. Java地位无可动摇的12个原因
  14. android系统移植之按键驱动篇
  15. 【讲座回顾】不会被AI取代的人
  16. Docker | 基于docker安装Redis
  17. SMTP与ESMTP的关系和区别
  18. mysql 用法之 统计各地区注册人数
  19. 考证大约报名考试时间:软考/教师资格证/会计/二建
  20. 解决Elasticsearch外网访问的问题(楼主亲测)

热门文章

  1. 互联网协议 — STP 生成树协议
  2. Linux 操作系统原理 — 内存 — 内存分配算法
  3. IPv6 — 网际协议第 6 版
  4. 查表法的CRC8和CRC16程序
  5. 前端各种类型文件的转换
  6. 蚂蚁金服自研的OceanBase升级到2.0了,据说性能……
  7. Dynatrace DPM数字性能管理方案确保安吉星领跑车联网技术
  8. 前端测试简述及使用Karma/Mocha实现的集成测试栗子(Travis CI/Coverage)
  9. 《JavaScript设计模式与开发实践》阅读摘要
  10. 工欲善其事,必先利其器 _SUBLIME TEXT 3_使用心得(上篇)