Grub启动项配置1.简单了解一下哪些是grub
grub是一个引导管理程序,全称GRandUnifiedBootloader。它可以在多个操作系统共存时选择引导那个系统。它可以引导的操作系统包括Linux,FreeBSD,Solaris,NetBSD,BeOSi,OS/2,Windows95/98,WindowsNT,Windows2000。它可以载入操作系统的内核和初始化操作系统(如Linux,FreeBSD),或则把引导权交给操作系统来完成引导。
2.grub有以下特征:2.1支持大硬碟2.2支持订制开机画面
grub支持在引导开机的同时显示一个开机画面。对于玩家来说,这样可以制做自己的个性化开机画面;对于PC厂商,这样可以在开机时显示笔记本的一些信息和厂商的标志等;目前我们oem订制工具早已实现此功能。
2.3菜单式选择
grub使用一个菜单来选择不同的系统进行引导”menuentry”。你还可以自己配置各类参数,如延后时间:timeout,默认操作系统等。grub是通过文件系统直接把核心读取到显存,因而只要操作系统核心的路径没有改变,grub就可以引导系统。
除此之外,grub还有许多十分强悍的功能。诸如支持多种外部设备,动态装载操作系统内核,甚至可以通过网路装载操作系统核心。grub支持多种文件系统,支持多种可执行文件格式,支持手动解压,可以引导不支持多重引导的操作系统等。
grub的命令行有十分强悍的功能,并且支持如bash或doskey一样的历史功能,你可以用上下键来找寻先前的命令。
grub并不须要根据哪些规则去硬碟中找系统,而是按照/boot/grub/grub.cfg中的启动项加载内核、启动系统,而这个配置文件则是在系统安装或则执行命令生成最新的配置文件。
3.制做grub启动盘
首先确定grub早已安装,之后步入grub的目录,键入:
#cd /boot/grub
装入一张软驱,之后敲入命令:
#dd if=stage1 of=/dev/fd0 bs=512 count=1
#dd if=stage2 of=/dev/fd0 bs=512 seek=1
这样就可以做好一张启动盘了。也可以用mkbootdisk命令#mkbootdisk2.2.16:2.2.16是指内核版本号
uos操作系统在完成安装后,就附送安装了grub,并对grub的主题进行了订制和美化
4.grub配置
完成安装以后,GRUB在每次启动的时侯载入配置文件/boot/grub/grub.cfg。
注意:每每更改/etc/default/grub或则/etc/grub.d/中的文件以后,都须要再度#生成主配置文件。也就是说假如须要永久更改某个启动项,就要更改grub.cfg文件或则会影响grub.cfg生成的/etc/default/grub以及/etc/grub.d/中的脚本文件了。
4.1重新生成配置文件指令:
update-grub或grub-mkconfig
update-grub这个命令虽然是对grub-mkconfig的一个包装,在非Debian系的发行版上是没有的。
grub-mkconfig会执行的动作主要是:
加载/etc/default/grub中的一些配置项。例如GRUB_CMDLINE_LINUX_DEFAULT配置项会控制Linux的bootparam。
逐个执行/etc/grub.d/目录中的脚本,拿来生成最终的grub.cfg文件。
我们平时见到update-grub命令执行时输出的什么启动项,虽然就是/etc/grub.d/03_os-prober这个脚本上面执行os-prober这个工具形成的。
4.2/etc/grub.d上面脚本功能解释:
00_header #配置初始的显示项目,如默认选项,时间限制等,一般由/etc/default/grub导入,一般不需要配置
05_debian_theme #配置引导画面,文字颜色等主题
10_linux #定位当前操作系统使用中的root设备内核的位置,包含deepin 启动项和advanced里面的启动项
15_linux_bar #救援模式的启动项
20_linux_xen #虚拟机监视器的东西,(暂时不知有什么用
30_uefi-firmware #“system setup” 的启动项
35_os-prober #windows的启动项一般在这个里面
40_custom #用来加入用户自定义的启动项,将会在执行update-grub时更新至grub.cfg中
41_custom #判断custom.cfg此配置文件是否存在,如果存在就加载它
注:上面的数字是对文件排列执行的次序进行排序,可进行修改linux系统怎么样,例如你想把windows启动项调到第一个,就把35_os-prober上面那种数字改成5到10的数字手机linux操作系统,例如06、07、08、09.
4.3修改grub的字体
假如你觉得默认的unicode字体在1024×768或更高码率的屏幕上变得太小,或则你觉得默认的字体不好看,想换换口味linux deepin 主题,那就要用到”grub-mkfont”工具。下边的示例展示了怎样从一个ttc字体(文泉驿等宽微米黑)制做一个24px大小的pf2字体:
grub-mkfont-i1-nWenQuanYiMicroHeiMono24px-oWenQuanYiMicroHeiMono24px.pf2-s24-vwqy-microhei.ttc
将制做好的字体文件(WenQuanYiMicroHeiMono24px.pf2)放在”$prefix/fonts”目录中linux deepin 主题,更改’grub.cfg’文件中的两行:
set gfxterm_font=WenQuanYiMicroHeiMono24px
loadfont WenQuanYiMicroHeiMono24px
注意:你最好使用等宽英文字体(推荐使用文泉驿等宽正黑或则等宽微米黑),否则可能会让GRUB2的字体宽度过大,非常难看。
4.4替换grub的背景图:
替换 /boot/grub/themes/deepin/background.jpg ,重新生成cfg配置文件,否则重启后失效;

4.5消除默认的选项框:
修改 /boot/grub/themes/deepin/theme.txt
将 menu_pixmap_style = "menu_*.png"
用 # 注释掉即可。重新生成cfg配置文件,否则重启后失效;
4.6更改grub等待时间
sudo vi /boot/grub/grub.cfg
修改set timeout = 10 10为10秒,根据自己需要修改等待时间即可
这个方法为直接修改cfg文件,也可以在/etc/default/grub文件内放入键值:GRUB_TIMEOUT=xxxx
4.7更改grub启动项菜单名称
grub.cfg文件里顶格写的menuentry数组后,单冒号内容即为启动项菜单显示栏内容,更改这个数组即可简单达到grub启动项自定义目的,更改完记得更新cfg文件