Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1758797
  • 博文数量: 226
  • 博客积分: 8233
  • 博客等级: 中将
  • 技术积分: 3514
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-18 22:54
文章分类
文章存档

2019年(3)

2018年(7)

2017年(2)

2012年(8)

2011年(67)

2010年(45)

2009年(94)

分类: LINUX

2018-08-22 09:01:17

一、Centos7grub2/etc/default/grub文件详解

# /boot/grub/grub.cfg.
GRUB_DEFAULT=0 ->
设置默认启动项,按menuentry顺序。比如要默认从第四个菜单项启动,数字改为3,若改为 saved,则默认为上次启动项。
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true ->
隐藏菜单,grub2不再使用,不管
GRUB_TIMEOUT="3" ->
设置进入默认启动项的等候时间,默认值10秒,按自己需要修改
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" ->
添加内核启动参数,这个为默认
GRUB_CMDLINE_LINUX="noresume" ->
手动添加内核启动参数,比如 acpi=off noapic等可在这里添加
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console ->
设置是否使用图形介面。去除前面#,仅使用控制台终端,不使用图形介面
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
设定图形介面分辨率,如不使用默认,把前面#去掉,把分辨率改为800x6001024x768
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true ->
设置grub命令是否使用UUID,去掉#,使用root=/dev/sdax而不用root=UUDI=xxx
# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true" ->
设定是否创建修复模式菜单项

二、修改引导顺序:
1. vi /etc/default/grub
注释掉#GRUB_DEFAULT=saved,在这一行的下面插入GRUB_DEFAULT=’Windows 7’,保存并退出。

如:

GRUB_TIMEOUT=3

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"

#GRUB_DEFAULT=saved

GRUB_DEFAULT="Windows 7"

GRUB_DISABLE_SUBMENU=true

GRUB_TERMINAL_OUTPUT="console"

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"

GRUB_DISABLE_RECOVERY="true"


2.然后执行 下面的命令 (执行命令前请将/boot/grub2/grub.cfg文件grub.cfg复制一个备份)
grub2-mkconfig -o /boot/grub2/grub.cfg
上面这句命令不能省,因为此命令是重新生成/boot/grub2/grub.cfg,否则就算改了/etc/default/grub,也不会生效。


二、添加修复引导win7系统:
1
、执行:
$ vi /boot/grub2/grub.cfg
打开文件后,执行i进行编辑,在### BEGIN /etc/grub.d/10_linux ###下添加:
menuentry "Windows 7" {
insmod ntfs
set root=(hd0,1) #由于我的windows安装在硬盘的C盘,故(hd0,1)
chainloader +1
}

注:menuentry标签顺序可改更,更改后可在启动时按调整的顺序显示,但这并不能解决启动顺序。需要改更/etc/default/grub文件,并用命令grub2-mkconfig -o /boot/grub2/grub.cfg,重新生成/boot/grub2/grub.cfg才可以,添加后grub.cfg含以后内容就算成功。

### BEGIN /etc/grub.d/10_linux ###
menuentry "Windows 7" {
insmod ntfs
set root=(hd0,1) #由于我的windows安装在硬盘的C盘,故(hd0,1)
chainloader +1
}
menuentry 'CentOS Linux (3.10.0-862.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-862.el7.x86_64-advanced-e2a4ffbd-a636-4aad-aecf-700fda8d476a' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_msdos
    insmod xfs
    set root='hd0,msdos3'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos3 --hint-efi=hd0,msdos3 --hint-baremetal=ahci0,msdos3 --hint='hd0,msdos3'  76f718b9-f8ea-4302-bf50-a1cddc6e604e
    else
      search --no-floppy --fs-uuid --set=root 76f718b9-f8ea-4302-bf50-a1cddc6e604e
    fi
    linux16 /vmlinuz-3.10.0-862.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet
    initrd16 /initramfs-3.10.0-862.el7.x86_64.img
}
按Esc,在按ZZ(或者Shift+:并输入wq),保存编辑并退出。

2
、执行:
grub2?mkconfig ?o /boot/grub2/grub.cfg
生成grub.cfg文件。3、最后,执行:

reboot
重启既可以看到为windows7的引导了。



阅读(1986) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~