一、grub2的启动配置文件grub.cfg
grub2的启动配置文件grub.cfg是/boot/grub/grub.cfg,而不是以前的memu.lst。
如果你是多系统,有Ubuntu和windows,那么用下面的命令,可以使grub2得到所以可以启动的系统。
sudo update-grub
实际就是让系统自己生成合适的grub.cfg文件。
这个grub.cfg文件是只读属性,so如果你要修改它,需要权限。
sudo chmod +w /boot/grub/grub.cfg
然后可以编辑grub.cfg了。
sudo gedit /boot/grub/grub.cfg
二、默认系统和等待时间
1、set default=0
这是说从第一项启动。每个启动项都是以menuentry开始,menuentry后面“xxx”是启动项名称,然后{xxx}是启动代码。
###
BEGIN /etc/grub.d/10_linux ###menuentry “Ubuntu, Linux
2.6.31-14-generic” {recordfail=1if [ -n {have_grubenv} ]; then save_env
recordfail; fiset quiet=1insmod ext2set root=(hd0,6)search –no-floppy
–fs-uuid –set 040508ff-fec7-4c66-ba64-a09f8abe8059linux
/boot/vmlinuz-2.6.31-14-generic
root=UUID=040508ff-fec7-4c66-ba64-a09f8abe8059 ro quiet splashinitrd
/boot/initrd.img-2.6.31-14-generic}menuentry “Ubuntu, Linux
2.6.31-14-generic (recovery mode)” {recordfail=1if [ -n ${have_grubenv}
]; then save_env recordfail; fiinsmod ext2set root=(hd0,6)search
–no-floppy –fs-uuid –set 040508ff-fec7-4c66-ba64-a09f8abe8059linux
/boot/vmlinuz-2.6.31-14-generic
root=UUID=040508ff-fec7-4c66-ba64-a09f8abe8059 ro singleinitrd
/boot/initrd.img-2.6.31-14-generic}### END /etc/grub.d/10_linux ######
BEGIN /etc/grub.d/20_memtest86+ ###menuentry “Memory test (memtest86+)”
{linux16 /boot/memtest86+.bin}menuentry “Memory test (memtest86+, serial
console 115200)” {linux16 /boot/memtest86+.bin
console=ttyS0,115200n8}### END /etc/grub.d/20_memtest86+ ###### BEGIN
/etc/grub.d/30_os-prober ###menuentry “Microsoft Windows XP Home Edition
(on /dev/sda1)” {insmod ntfsset root=(hd0,1)search –no-floppy –fs-uuid
–set 5c108a1c1089fd70drivemap -s (hd0) ${root}chainloader +1}if
keystatus; thenif keystatus –shift; thenset timeout=-1elseset
timeout=10fielseif sleepverbose –interruptible 3 ; thenset
timeout=10fifi### END /etc/grub.d/30_os-prober ###### BEGIN
/etc/grub.d/10_linux ###
menuentry “Ubuntu, Linux 2.6.31-14-generic” {
recordfail=1
if [ -n [Math Processing Error]verbose –interruptible 3 ; then
set timeout=10
fi
fi
### END /etc/grub.d/30_os-prober ###
我
的第五个启动项是menuentry “Microsoft Windows XP Home Edition (on
/dev/sda1)”,我要它默认是以xp启动,所以修改为set
default=”4″。(hd0,1)表示第一块硬盘的第一个分区,我的Linux在(hd0,6)。
当然,你也可以把你需要默认启动的系统放到最前面,那么就还是set default=0
2、set timeout=10
if [ recordfail=1];thensettimeout=−1elsesettimeout=10fi这里停留在grub选择系统界面的时间就是10秒,即settimeout=10。有时候我并不想等待这么久,我直接启动xp,需要Ubuntu时才按几下Shift键进入grub选择系统界面。可以添加如下代码:ifkeystatus;thenifkeystatus–shift;thensettimeout=−1elsesettimeout=10fielseifsleepverbose –interruptible 3 ; then
set timeout=10
fi
fi
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!