Ubuntu下Grub配置详解(4)

update-grub命令执行时会读取此目录下的文件,并将配置合并至grub.cfg中,grub.cfg中的菜单顺序是由此目录中的文件顺序决定的,文件开头数字较小的会先执行,全英文名字的文件将会在最后执行,自定义选项在40_custom中定义,或者建立一个新文件,此目录下的文件必须有执行权限才会被update-grub读取,并把配置合并到grub.cfg中。

配置文件描述
00_header   配置初始的显示项目,如默认选项,时间限制等,一般由/etc/default/grub导入,一般不需要配置  
05_debian_theme   配置引导画面,文字颜色等主题  
10_linux   定位当前操作系统使用中的root设备内核的位置  
30_os-prober   用来搜索linux和其他系统,此脚本中的变量用来指定在/boot/grub/grub.cfg 和 grub2菜单中的名称显示方式,可以修改/etc/default/grub光比这个脚本  
40_custom   用来加入用户自定义的菜单样板,将会在执行update-grub时更新至grub.cfg中  
41_custom   判断custom.cfg此配置文件是否存在,如果存在就加载它  

4.4 /boot/grub/grub.cfg

主要配置文件是/boot/grub/grub.cfg

ls_boot_grub

但是这个文件的权限是444,连root也不让修改,这是刻意为之的,不要修改文件权限

grub.cfg的内容更新由update-grub命令来更新, 我们从下图中看到系统中/boot中安装了4.2.0-42版本的内核, 而我们update-grub就会发现他们

update-grub命令来更新

grub.cfg的内容更新由update-grub命令来更新, 其实就是执行如下操作

备份/boot/grub/menu.lst文件到/boot/grub/menu.lst~, 以防止出错后无法恢复

读取系统中安装的所有内核(一般在/boot目录下), 然后生成.lst文件

生成grub.cfg, 其实就是执行grub-mkconfig -o /boot/grub/grub.cfg来更新

首先读取/etc/default/grub设置基本的设置信息

在/boot/grub.d目录下有很多模块文件,以在按需时自动加载模块. 依照/etc/grub.d中的各段生成grub.cfg的基本信息, 每段模块配置的加载以### BEGIN xxx ###开始,以### END xxx ###结尾

读取menu.lst设置加载的内核的信息

degin and end

在更新内核时会调用update-grub自动更新grub.cfg文件

5 常见问题 5.1 修改等待时间 sudo gedit /etc/default/grub

修改文件中的:GRUB_TIMEOUT=10 (默认是为10秒的)

修改为:GRUB_TIMEOUT=X (X表示你要设置的秒数,设置为负数为一直等待操作) 修改后保存。终端输入:

5.2 生成grub.cfg

一般来说, update-grub会更新grub并生成grub.cfg

sudo update-grub

当然也可以

sudo grub-mkconfig -o /boot/grub/grub.cfg 5.3 修改默认启动系统 sudo gedit /etc/default/grub

修改文件中的GRUB_DEFAULT=0

GRUB_DEFAULT=0 (0默认启动第1项,如果你的win是第5项,把这个0改为4) 保存文件后终端输入:

5.4 修改默认分辨率 sudo gedit /etc/default/grub

修改文件中的 #GRUB_GFXMODE=640x480
把前面#去掉,把分辨率改为800x600或1024x768(或者修改为你屏幕的分辨率,但前提是分辨率为常见分辨率

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/14922.html