Ubuntu设置默认内核启动版本

本文详细介绍如何在Linux系统中设置默认启动的内核版本,包括查看可用内核版本、编辑grub配置文件、修改GRUB_DEFAULT参数以及解决配置过程中遇到的警告信息。

最近做实验要一直使用4.15.0的内核,但是系统自动给更新了内核版本,所以准备通过设置grub的方式设置默认启动内核。

首先我先查看了电脑中的所有内核版本,如下:

我想启动4.15.0版本的内核。

1、打开配置文件

vi /etc/default/grub

2、修改配置

将 GRUB_DEFAULT=0 修改为想要启动的内核名,我最开始是修改为:

GRUB_DEFAULT="Ubuntu, with Linux 4.15.0"

这个名字就是之前上一张图片中,所看到的自己想要启动的内核版本。

3、保存更新

sudo update-grub

在更新的过程中,报出如下警告:

Warning中很明确得指出了,到底在GRUB_DEFAULT填的内容,所以我就直接将这个内容赋值下来,替换掉之前的名字,最终设置如下:

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 4.15.0"

然后使用 sudo update-grub更新,重启后使用:

uname -r

可以看到内核启动的系统内核版本为配置文件中修改的:

<think>好的,用户现在问的是如何在Ubuntu设置默认启动内核,之前他提到了grubby安装的问题,但这次更具体了。根据历史记录,我之前已经解释过grubby不适用于Ubuntu,推荐使用GRUB2工具。现在用户直接询问如何设置默认内核,我需要详细说明步骤。首先,用户可能已经安装了多个内核,需要切换默认启动项。Ubuntu使用GRUB2,默认情况下会选择第一个菜单项。用户想修改这个默认项,可能需要通过修改GRUB配置文件。根据引用[1]提到的,官方建议修改/etc/default/grub而不是直接编辑grub.cfg,这点需要强调,避免用户误操作。 接下来,步骤应该是这样的:确定当前内核列表,找到需要设置默认内核序号,修改/etc/default/grub中的GRUB_DEFAULT参数,然后运行update-grub更新配置。这里要详细说明如何确定序号,比如通过grep查询/boot/grub/grub.cfg中的菜单项,或者使用grub-reboot和grub-set-default命令。另外,用户可能对GRUB_DEFAULT的两种设置方式(序号和菜单标题)不太清楚,需要举例说明。需要注意,GRUB的序号是从0开始的,所以第一个菜单项是0,第二个是1,以此类推。如果用户想用菜单标题,需要确保标题正确,避免拼写错误。还要提醒用户修改后必须运行sudoupdate-grub,否则更改不会生效。 另外,用户可能遇到的问题包括:修改后没有生效,可能是序号错误,或者没有更新grub。这时候需要检查步骤是否正确,或者尝试使用sudogrub-editenv list确认默认设置。还可以建议用户使用sudogrub-reboot临时设置下次启动内核,适合测试不同内核的情况。 最后,生成相关问题时,要围绕默认内核设置的其他方面,比如恢复旧内核、调整超时时间、自定义GRUB菜单等,这些都是用户可能进一步想知道的内容。</think>### Ubuntu设置默认启动内核的完整步骤 --- #### 一、确定当前内核列表 1. 查看已安装内核版本: ```bash dpkg -l | grep linux-image ``` 2. 查看GRUB菜单项: ```bash grep -P "menuentry 'Ubuntu" /boot/grub/grub.cfg ``` 输出示例: ``` menuentry 'Ubuntu, with Linux 5.15.0-78-generic' --class ubuntu ... menuentry 'Ubuntu, with Linux 5.15.0-76-generic' --class ubuntu ... ``` --- #### 二、设置默认内核(两种方法) ##### 方法1:通过序号设置(推荐) 1. **修改GRUB配置文件** 编辑`/etc/default/grub`,找到`GRUB_DEFAULT`参数: ```bash sudo nano /etc/default/grub ``` - **选择第一个内核**(序号从0开始): ```bash GRUB_DEFAULT=0 ``` - **选择第二个内核**: ```bash GRUB_DEFAULT=1 ``` 2. **更新GRUB配置** ```bash sudo update-grub ``` ##### 方法2:通过菜单标题设置 1. **指定完整菜单标题** 例如选择第二个内核: ```bash GRUB_DEFAULT="1>Ubuntu, with Linux 5.15.0-76-generic" ``` - 注意:需完全匹配`grub.cfg`中的标题[^1] --- #### 三、验证设置 1. 查看当前默认内核: ```bash sudo grub-editenv list ``` 输出示例: ``` saved_entry=1 ``` --- #### 四、核心原理 - **GRUB启动流程**:GRUB通过`/boot/grub/grub.cfg`加载启动项,该文件由`update-grub`根据模板自动生成[^1] - **配置继承关系**: $$ \text{/etc/default/grub} \xrightarrow{\text{update-grub}} \text{/boot/grub/grub.cfg} $$ ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值