欢迎来到天天文库
浏览记录
ID:34723181
大小:82.68 KB
页数:6页
时间:2019-03-10
《grub2启动代码注释》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、GRUB启动代码分析0818袁意200893111# #DONOTEDITTHISFILE # #Itisautomaticallygeneratedby/usr/sbin/grub-mkconfigusingtemplates #from/etc/grub.dandsettingsfrom/etc/default/grub # ###BEGIN/etc/grub.d/00_header### if[-s$prefix/grubenv];then#如果“prefix/grubenv”目录不为空load_env#从grubenv文件中加载环境变量 fi
2、setdefault="0"#启动第1项(以0开始计数,在我的电脑上,linux是第1项,即”0”,Windows7#是第2项,即”1”。)if[${prev_saved_entry}];then#如果prev_saved_entry的值不为空 setsaved_entry=${prev_saved_entry} #将saved_entry的值设置成变量prev_saved_entry的值。save_envsaved_entry #将变量saved_entry保存到grubenv文件中。setprev_saved_entry= #将prev_saved
3、_entry的值设置为空save_envprev_saved_entry #将prev_saved_entry保存到grubenv文件中setboot_once=true #将boot_once的值设置为真(貌似是为了标志已经设置过启动的相关环境变量了)fi functionsavedefault{ if[-z${boot_once}];then #如果已经设置过相关环境变量saved_entry=${chosen} #用变量chosen的值给saved_entry赋值。save_envsaved_entry#将saved_entry保存到gruben
4、v文件中fi } functionrecordfail{#存在启动失败记录时调用,设置变量recordfail。setrecordfail=1 if[-n${have_grubenv}];thenif[-z${boot_once}];thensave_envrecordfail;fi;fi #如果grubenv文件存在,并已设置过相关变量,就将变量recordfail保存到grubenv文件。} insmodext2#插入ext2文件系统支持的模块setroot='(hd0,9)'#指定系统root分区,也就是/分区为第1个磁盘的第9个分区search
5、--no-floppy--fs-uuid--setd9985e84-7b54-4e5d-8ce9-c25cf88330aa #指定uuid=d9985e84-7b54-4e5d-8ce9-c25cf88330aa的分区为root分区,如果前面的分区#号(hd0,9)的uuid与这里的uuid一致,这两句作用一样,如果不一致,则指定uuid的起#作用。ifloadfont/usr/share/grub/unicode.pf2;then #设置终端字体,unicode.pf2支持中文字符显示setgfxmode=640x480 #设置显示分辨率,默认为64
6、0×480insmodgfxterm #插入终端模块gfxterm,支持中文字符显示和支持24位图像。insmodvbe #插入vbe模块,GRUB2引入模块化机制,要使用它,需要在这里加入。ifterminal_outputgfxterm;thentrue;else#检测grub2是否将终端设设定为gfxterm#Forbackwardcompatibilitywithversionsofterminal.modthatdon't #understandterminal_output terminalgfxterm#设定grub2终端为gfxterm
7、fi fi insmodext2#插入ext2文件系统支持的模块 setroot='(hd0,9)'#指定系统root分区,也就是/分区为第1个磁盘的第9个分区 search--no-floppy--fs-uuid--setd9985e84-7b54-4e5d-8ce9-c25cf88330aa #指定uuid=d9985e84-7b54-4e5d-8ce9-c25cf88330aa的分区为root分区,如果前面的分区#号(hd0,9)的uuid与这里的uuid一致,这两句作用一样,如果不一致,则指定uuid的起#作用。setlocale_dir=($
8、root)/boot/grub/locale setlang=zh insmodgettext
此文档下载收益归作者所有