Linux 启动顺序修改

设置WIN7为第一启动项。

在应用程序-附件-打开终端 ,运行

代码:
sudo chmod +w /boot/grub/grub.cfg

,然后再运行

代码:
sudo gedit /boot/grub/grub.cfg

以上需要root权限

修改顺序要 从”BEGIN”到 “END”整段移动 !
set timeout=10 ——————————启动列表停留时间
修改后如下

引用:
#
# 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 /boot/grub/grubenv ]; then
have_grubenv=true
load_env
fi
set default=”0″   可以修改这里把默认的启动项改为你的需要的位置,比如win7是第三个。
if [ ${prev_saved_entry} ]; then
saved_entry=${prev_saved_entry}
save_env saved_entry
prev_saved_entry=
save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,9)
search –no-floppy –fs-uuid –set 0eebad35-8d15-4039-b626-3d2f97155eb7
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640×480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don’t
# understand terminal_output
terminal gfxterm
fi
fi
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=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/white
### END /etc/grub.d/05_debian_theme ###
以上是整体grub的配置信息

### BEGIN /etc/grub.d/30_os-prober ### ———————第一启动项,这里就是把win7那段整个剪切到了最前面
menuentry “Windows 7 (loader) (on /dev/sda1)” {
insmod ntfs
set root=(hd0,1)
search –no-floppy –fs-uuid –set da0a75920a756bff
chainloader +1
}
menuentry “Windows 7 (loader) (on /dev/sda2)” {
insmod ntfs
set root=(hd0,2)
search –no-floppy –fs-uuid –set c2a2781aa27814df
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/10_linux ### ———————第二启动项
menuentry “Ubuntu, Linux 2.6.31-19-generic” {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,8)
search –no-floppy –fs-uuid –set 8e284259-3315-4f78-8714-8e29b552cd3f
linux /vmlinuz-2.6.31-19-generic root=UUID=0eebad35-8d15-4039-b626-3d2f97155eb7 ro quiet splash
initrd /initrd.img-2.6.31-19-generic
}
menuentry “Ubuntu, Linux 2.6.31-19-generic (recovery mode)” {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,8)
search –no-floppy –fs-uuid –set 8e284259-3315-4f78-8714-8e29b552cd3f
linux /vmlinuz-2.6.31-19-generic root=UUID=0eebad35-8d15-4039-b626-3d2f97155eb7 ro single
initrd /initrd.img-2.6.31-19-generic
}
menuentry “Ubuntu, Linux 2.6.31-14-generic” {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,8)
search –no-floppy –fs-uuid –set 8e284259-3315-4f78-8714-8e29b552cd3f
linux /vmlinuz-2.6.31-14-generic root=UUID=0eebad35-8d15-4039-b626-3d2f97155eb7 ro quiet splash
initrd /initrd.img-2.6.31-14-generic
}
menuentry “Ubuntu, Linux 2.6.31-14-generic (recovery mode)” {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,8)
search –no-floppy –fs-uuid –set 8e284259-3315-4f78-8714-8e29b552cd3f
linux /vmlinuz-2.6.31-14-generic root=UUID=0eebad35-8d15-4039-b626-3d2f97155eb7 ro single
initrd /initrd.img-2.6.31-14-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ### ———————第三启动项
menuentry “Memory test (memtest86+)” {
linux16 /memtest86+.bin
}
menuentry “Memory test (memtest86+, serial console 115200)” {
linux16 /memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/40_custom ### ———————这 些就不管了
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the ‘exec tail’ line above.
### END /etc/grub.d/40_custom ###

<think>好的,用户想了解如何在Linux系统中更改内核的启动顺序。我需要先回忆一下相关的知识,确保步骤准确。首先,不同的Linux发行版可能有不同的工具来管理启动项,比如Debian系的系统通常使用GRUB,而Red Hat系的可能用GRUB2或者其他工具。但大多数现代发行版都使用GRUB2,所以应该围绕这个来讲解。 接下来,用户可能需要知道如何查看当前的内核启动项。我记得可以通过查看/boot/grub/grub.cfg或者使用grep命令来筛选可用的内核版本。不过直接编辑grub.cfg是不推荐的,应该引导用户修改/etc/default/grub文件,然后使用update-grub或者grub2-mkconfig来生成新的配置。 然后,设置默认启动的内核。这里需要说明如何确定要使用的内核菜单项的索引,可能需要使用grub-editenv list来查看saved_entry,或者通过修改GRUB_DEFAULT的值。如果是想通过菜单标题来设置,可能需要使用引号包裹,比如GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-26-generic"这样的格式。 另外,调整GRUB_TIMEOUT也是一个相关步骤,用户可能希望减少等待时间,加快启动过程。需要提醒用户这个参数的单位是秒,修改后同样要运行update-grub。 还有,用户可能对GRUB的配置文件不太熟悉,需要给出具体的示例,比如修改/etc/default/grub中的具体行,并说明每个参数的作用。同时,提醒用户备份配置文件,避免出错。 还要注意不同发行版的命令可能不同,比如Ubuntu使用update-grub,而CentOS可能需要使用grub2-mkconfig -o /boot/grub2/grub.cfg。需要指出这一点,或者让用户根据他们的系统选择合适的命令。 最后,可能需要提到在UEFI系统下的不同处理,但考虑到用户的问题可能更基础,暂时先不深入,除非用户进一步询问。确保步骤清晰,分点说明,让用户能一步步操作,并且警告不要直接编辑grub.cfg,避免系统无法启动的风险。</think>在Linux系统中调整内核启动顺序通常通过GRUB(GRand Unified Bootloader)配置实现。以下是具体操作步骤: ### 一、查看可用内核列表 ```bash grep -E 'menuentry |submenu' /boot/grub/grub.cfg ``` 输出示例: ``` menuentry 'Ubuntu' --class ubuntu ... submenu 'Advanced options for Ubuntu' { menuentry 'Ubuntu, with Linux 5.15.0-76-generic' ... menuentry 'Ubuntu, with Linux 5.15.0-76-generic (recovery mode)'... menuentry 'Ubuntu, with Linux 5.4.0-150-generic'... } ``` ### 二、修改GRUB配置文件 1. 打开配置文件: ```bash sudo nano /etc/default/grub ``` 2. 关键参数说明: - `GRUB_DEFAULT`:设置默认启动项 - `GRUB_TIMEOUT`:设置菜单等待时间(秒) - `GRUB_SAVEDEFAULT`:是否保存上次选择 ### 三、设置启动顺序方法 #### 方法1:通过索引号设置 ```bash GRUB_DEFAULT="1>2" # 选择子菜单第2项(索引从0开始) ``` #### 方法2:通过菜单标题设置 ```bash GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-150-generic" ``` #### 方法3:保存最后一次选择 ```bash GRUB_SAVEDEFAULT=true GRUB_DEFAULT=saved ``` ### 四、应用配置变更 Ubuntu/Debian系: ```bash sudo update-grub ``` RHEL/CentOS系: ```bash sudo grub2-mkconfig -o /boot/grub2/grub.cfg ``` ### 五、验证配置 ```bash sudo grub-editenv list ``` ### 注意事项: 1. 修改前备份配置文件: ```bash sudo cp /etc/default/grub /etc/default/grub.bak ``` 2. 修改后如果启动失败,可在GRUB菜单界面按`e`键临时编辑启动参数 3. 查看当前运行内核版本: ```bash uname -r ``` 4. UEFI系统可能需要额外处理EFI启动项: ```bash sudo efibootmgr -v ``` 通过合理配置GRUB参数,可以实现精确的内核版本控制和启动顺序调整。建议保留1-2个旧内核作为备用,防止新内核出现问题导致系统无法启动
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值