已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目前Grub1已经停止开发了,不再增加新的功能,所有的开发都转移到Grub2上了,Grub 2 是新一代的Grub,它实现了一些Grub中所没有的功能: 1.模块化设计 不同于Grub的单一内核结构,Grub 2 的功能分布在很多的小模块中,并且能在运行时动态装载和卸除。 2.支持多体系结构 Grub 2可支持PC(i386), MAC(powerpc)等不同的体系机构,而且支持最新的EFI架构。 3.国际化的支持 Grub 2 可以支持非英语的语言。 4.内存管理 Grub 2 有真正的内存管理系统。 5.脚本语言 Grub 2 可以支持脚本语言,例如条件,循环,变量,函数等。 当然,Grub 2正处在开发阶段,因此以上的某些功能可能现阶段还不是很完善。如果你熟悉Grub2,应该可以看明白里面的内容。要注意的是: a、timeout, default等参数用变量来储存 b、菜单项由menuentry定义 c、第1个分区是(hd0,1)而不是(hd0,0) 理论的东西说多了大家估计也晕,举个简单的例子:在grub1中,要改变启动背景的时候只能选择支持640X480分辨率并且格式也只能是.xpm的图片,分辨率稍微大点的图就显示不出来了,但grub2不存在这个问题,它有更绚丽的菜单界面,grub2默认.png.tga.jpeg等很多种格式的图片都支持,而且支持的图片分辨率也更大。GRUB2启动代码分析# DO NOT EDIT THIS FILE# It is automatically generated by /usr/sbin/grub-mkconfig using templates# from /etc/grub.d and settings from /etc/default/grub# BEGIN /etc/grub.d/00_header #if -s $prefix/grubenv ; then#如果“ prefix/grubenv”目录不为空load_env#从grubenv文件中加载环境变量fiset default=0#启动第1项#if $prev_saved_entry ; then #如果prev_saved_entry的值不为空set saved_entry=$prev_saved_entry #将saved_entry的值设置成变量prev_saved_entry的值。save_env saved_entry#将变量saved_entry保存到grubenv文件中。set prev_saved_entry=#将prev_saved_entry的值设置为空save_env prev_saved_entry#将prev_saved_entry保存到grubenv文件中set boot_once=true#将boot_once的值设置为真(为了标志已经设置过启动的相关环境变量了)fifunction savedefault if -z $boot_once ; then#如果已经设置过相关环境变量saved_entry=$chosen#用变量chosen的值给saved_entry赋值。save_env saved_entry#将saved_entry保存到grubenv文件中fifunction recordfail #存在启动失败记录时调用,设置变量recordfail。set recordfail=1if -n $have_grubenv ; then if -z $boot_once ; then save_env recordfail; fi; fi#如果grubenv文件存在,并已设置过相关变量,就将变量recordfail保存到grubenv文件。insmod ext2#插入ext2文件系统支持的模块set root=(hd0,9)#指定系统root分区,也就是/分区为第1个磁盘的第9个分区search -no-floppy -fs-uuid -set d9985e84-7b54-4e5d-8ce9-c25cf88330aa#指定uuid= d9985e84-7b54-4e5d-8ce9-c25cf88330aa的分区为root分区,如果前面的分区#号(hd0,9)的uuid与这里的uuid一致,这两句作用一样,如果不一致,则指定uuid的起 #作用。if loadfont /usr/share/grub/unicode.pf2 ; then#设置终端字体,unicode.pf2支持中文字符显示set gfxmode=640x480#设置显示分辨率,默认为640480insmod gfxterm#插入终端模块gfxterm,支持中文字符显示和支持24位图像。insmod vbe#插入vbe模块,GRUB2引入模块化机制,要使用它,需要在这里加入。if terminal_output gfxterm ; then true ; else#检测grub2是否将终端设设定为gfxterm # For backward compatibility with versions of terminal.mod that dont # understand terminal_outputterminal gfxterm#设定grub2终端为gfxtermfifiinsmod ext2#插入ext2文件系统支持的模块set root=(hd0,9)#指定系统root分区,也就是/分区为第1个磁盘的第9个分区search -no-floppy -fs-uuid -set d9985e84-7b54-4e5d-8ce9-c25cf88330aa#指定uuid= d9985e84-7b54-4e5d-8ce9-c25cf88330aa的分区为root分区,如果前面的分区#号(hd0,9)的uuid与这里的uuid一致,这两句作用一样,如果不一致,则指定uuid的起 #作用。set locale_dir=($root)/boot/grub/localeset lang=zhinsmod gettextif $recordfail = 1 ; thenset timeout=-1 #若有启动失败的记录,则不再倒计时。elseset timeout=10 #如果停留在grub选择系统界面,停顿时间就设置成10秒,十秒后按默认启动项#启动。fi# END /etc/grub.d/00_header # BEGIN /etc/grub.d/05_debian_theme #设置菜单颜色和背景颜色set menu_color_normal=white/black#设定菜单字体及背景颜色set menu_color_highlight=black/light-gray#设定选择项字体及背景颜色# END /etc/grub.d/05_debian_theme # BEGIN /etc/grub.d/10_linux #10_linux为系统自动添加的当前root分区linux引导项#菜单项,要包括 menuentry 双引号 和大括号 才完整,否则不显示菜单menuentry Ubuntu,Linux 2.6.32-30-generic -class ubuntu -class gnu-linux -class gnu -class os recordfail#执行recordfail 函数insmod ext2#插入ext2文件系统支持的模块set root=(hd0,9)#指定系统root分区,也就是/分区为第1个磁盘的第9个分区search -no-floppy -fs-uuid -set d9985e84-7b54-4e5d-8ce9-c25cf88330aa#这句与set root=(hd0,9)效果一样,可删除其一,二者不一致以这句为准linux/boot/vmlinuz-2.6.32-30-generic root=UUID=d9985e84-7b54-4e5d-8ce9-c25cf88330aa ro quiet splash#加载内核# ro:可读写,当启动分区是JFS等格式时需要使用此参数使得系统可以在启动是存放日志。#quiet:安静模式,不显示启动详细信息。#splash:显示徽标。initrd/boot/initrd.img-2.6.32-30-generic#初始RAM磁盘,在系统引导过程中挂载的一个临时根文件系统。menuentry Ubuntu,Linux 2.6.32-30-generic (恢复模式) -class ubuntu -class gnu-linux -class gnu -class os #linux的恢复模式,与linux的启动项基本一样。recordfail#执行recordfail 函数insmod ext2set root=(hd0,9)search -no-floppy -fs-uuid -set d9985e84-7b54-4e5d-8ce9-c25cf88330aaecho载入 Linux .linux/boot/vmlinuz-2.6.32-30-generic root=UUID=d9985e84-7b54-4e5d-8ce9-c25cf88330aa ro single #加载内核 貌似这个single参数就是指定的修复模式echo载入引导虚拟磁盘。initrd/boot/initrd.img-2.6.32-30-generic#初始RAM磁盘,在系统引导过程中挂载的一个临时根文件系统。# END /etc/grub.d/10_linux #20_memtest86+为系统自动添加的内存测试菜单项menuentry Memory test (memtest86+) insmod ext2set root=(hd0,9)search -no-floppy -fs-uuid -set=root f8656ad4-390d-4a72-832a-1f4b313ac793linux16/boot/memtest86+.binmenuentry Memory test (memtest86+, serial console 115200) insmod ext2set root=(hd0,9)search -no-floppy -fs-uuid -set=root f8656ad4-390d-4a72-832a-1f4b313ac793linux16/boot/memtest86+.bin console=ttyS0,115200n8# END /etc/grub.d/20_memtest86+ # BEGIN /etc/grub.d/30_os-prober #30_os-prober或30_others为系统自动查找并添加其他系统菜单项,按windows、#linux、macos顺序查找并添加,支持windows 7识别。if x$timeout != x-1 ; thenif keystatus; then if keystatus -shift; then set timeout=-1 else set timeout=10 fielse if sleep -interruptible 3 ; then set timeout=10 fififi #直接启动默认的系统,需要选择引导不同的系统时才按几下shift键进入grub选择系统界面。#menuentry Windows 7 (loader) (on /dev/sda1) insmod ntfs#插入NTFS文件系统支持的模块set root=(hd0,1)#指定系统root分区,也就是/分区为第1个磁盘的第1个分区search -no-floppy -fs-uuid -set 5802c4e402c4c7e8#这句与set root=(hd0,1)效果一样,可删除其一,二者不一致以这句为准。chainloader +1#指示GRUB读入分区的第一个扇区的引导记录。# END /etc/grub.d/30_os-prober # BEGIN /etc/grub.d/40_custom #40_custom为自定义的启动项,如启动cdlinux# This file provides an easy way to add custom menu entries.Simply type the# menu ent
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 科普助力双减协议书
- 电信查签的协议合同
- 中国传统礼仪文化介绍
- 胃食管反流病常见症状及护理手段
- 2025-2026学年广东省揭阳市高一上学期期中自编模拟地理试卷(人教版)
- 2025-2026学年北京市长水教育集团高一上学期10月质量检测地理试题(解析版)
- 肠道感染症状解读与护理措施分享
- 微笑训练礼仪讲解
- 上肢训练后拉伸
- 脊柱骨折常见症状及护理方法
- 铁路专用线设计规范(试行)(TB 10638-2019)
- 施工方案 外墙真石漆(翻新施工)
- 2024年江西省鄱阳湖融资租赁有限公司招聘笔试参考题库含答案解析
- 10000中国普通人名大全
- 水资源调查实训报告
- 《数字经济学》 课件 贾利军 专题1:数字经济的历史溯源、科学内涵与技术基础研究;专题2:数字化革命及其对社会生产过程的影响研究
- 国家开放大学《儿童心理学》形考任务1-5参考答案
- 金属加工企业机加工安全风险分级管控清单
- 白杨礼赞 全国优质课一等奖
- 我国农村宗教信仰状况的调研报告
- 江苏教师资格认定体检标准及操作规程
评论
0/150
提交评论