如何修改GRUB

要修改grub,请注意以下几个重要档案:
1. /boot/grub/grub.cfg
此档案中包含了GRUB选单资讯。
注意他的开头,说明了这是由/etc/grub.d与/etc/default/grub所生成的,不要自己编辑。这个档案还是唯读属性,就是要避免你直接去编辑。
若是你修改了这个档案,只要更新核心,或是以指令更新grub选单,之前的修改就会被覆盖掉。所以除非不得已,请不要去动这个档案。要修改,请继续往下看。


2. /etc/default/grub
此档案为使用者修改grub设定的主要档案,真的改烂了请不要急,在/usr/share/grub/default/里还有一份,复制回来即可。
要修改这个档案,请输入
sudo gedit /etc/default/grub


3. /etc/grub.d目录
此目录放置档案,会在sudo update-grub时,合并到/boot/grub/grub.cfg中。
注意这些档案名称结构,前面都有数字。数字越小的,在合并时放在越前面。常有人问到,grub menu要怎麼更改选项的顺序?就是更改数字的大小。
此外请你在这目录下输入ls -l,看一下各档案的属性,有没有看到都有x属性(可执行)?变动x属性,可以决定这个选项要不要出现在选单内。

以下介绍/etc/default/grub所使用的参数,我只介绍大家比较会去修改到的。


1. GRUB_DEFAULT - 设定预设选单选项。有以下几种作法。
GRUB_DEFAULT=0 以位置来设定预设选单选项。第一笔选单选项为 0,第二笔为 1,以此类推。
GRUB_DEFAULT="xxxx" 在此例中,选单中的位置不会有影响。例如:GRUB_DEFAULT="Ubuntu, Linux 3.11.0-13-generic"。注意要完整全称。
GRUB_DEFAULT=saved 由储存预设的作业系统开机。可以用grub-reboot和grub-set-default指令来设定预设作业系统。预设作业系统不会由来自选单中的互动式选择而被设定。
sudo grub-set-default 0 以位置来设定预设选单选项。第一笔选单选项为 0,第二笔为 1,以此类推。
sudo grub-set-default "xxxx" 以选单名称来设定
sudo grub-reboot 0 以位置来设定下次重启开机选项。第一笔选单选项为 0,第二笔为 1,以此类推。
sudo grub-reboot "xxxx" 以选单名称来重启开机




2. GRUB_HIDDEN_TIMEOUT - 此设定用来决定GRUB选单会有多长时间不被显示。
GRUB_HIDDEN_TIMEOUT=0 在单一作业系统电脑中,会立刻以预设作业系统开机。在只有一个作业系统状况下,这是预设的设定。假如还是要显示选单,请在这行前加上 # 注销掉,并确认 GRUB_TIMEOUT 设定为正整数。
GRUB_HIDDEN_TIMEOUT=X x为秒数,空白画面几秒后,系统将会依照预设开机,不会出现选单。当萤幕是空白时,使用者可以按下任何键以显示选单。




3. GRUB_HIDDEN_TIMEOUT_QUIET - 在空白画面时,是否显示倒数计时器
GRUB_HIDDEN_TIMEOUT_QUIET=true '不'显示计时器
GRUB_HIDDEN_TIMEOUT_QUIET=fault 显示计时器




4. GRUB_TIMEOUT - 选单显示多久之后自动以预设作业系统开机
GRUB_TIMEOUT=10 10秒后以预设系统开机
GRUB_TIMEOUT=-1 持续显示选单,直到使用者选择




5. GRUB_GFXMODE - 设定grub选单显示的解析度。一般是注解掉。
GRUB_GFXMODE=640x480 以640x480模式显示。
除非开机时选单显示就有问题,不然不要启用这个参数,据说会影响进入grub选单的时间。真的要启用,后面的数值请依照你显卡可以支援的模式填入,如1280x1024x16,800x600x24,640x480




6. GRUB_DISABLE_LINUX_RECOVERY - 救援模式要不要显示?
你在选单中是不是都有看到救援模式(recovery mode)?假如你的电脑一向稳定,而且你不太会去动到系统,可以考虑去除 # 注解
GRUB_DISABLE_LINUX_RECOVERY=true '不' 显示救援模式




7. GRUB_DISABLE_OS_PROBER - 对其他分割区作业系统的检查
大家应该都知道sudo update-grub可以找到在其他分割区的作业系统,制成选单。但有时我就是不想要他显示到选单内,那怎麼办?那注销掉这一行就可以不检查其他分割区有没有作业系统。
GRUB_DISABLE_OS_PROBER=true '不'检查其他作业系统




8. GRUB_BACKGROUND - 背景影像所在。这个参数,需要自行加入。
GRUB_BACKGROUND= 以/usr/share/background/xxx.jpg当作选单背景。可以.png, .jpg, 或.tga等格式


还有其他参数,若有兴趣请参照
https://help.ubuntu.com/community/Grub2/Setup#Editing_grub.cfg_directly
### 如何在 Ubuntu 中修改 GRUB 配置文件以及更新 GRUB 引导菜单 #### 修改 GRUB 配置文件 GRUB 的主要配置文件位于 `/etc/default/grub`,这是用户可以手动编辑的核心文件之一。通过调整此文件中的参数,可以更改 GRUB 的行为和显示选项。 以下是常见的配置项及其作用: - `GRUB_TIMEOUT`: 设置引导菜单的等待时间(单位为秒)。如果将其设为 0,则会跳过菜单直接进入默认系统[^3]。 - `GRUB_DEFAULT`: 定义默认启动条目。可以是一个索引值(如 `0` 表示第一个条目),也可以是具体的菜单名称。 - `GRUB_CMDLINE_LINUX_DEFAULT`: 这里定义传递给内核的参数,默认情况下通常包含 `quiet splash`,表示静默模式和图形化的启动画面。 要编辑该文件,可以使用如下命令打开文本编辑器: ```bash sudo nano /etc/default/grub ``` 完成所需的更改后保存退出。 #### 更新 GRUB 引导菜单 当对 `/etc/default/grub` 文件进行了修改之后,必须执行以下命令以应用更改到实际使用的 GRUB 配置中: 对于基于 BIOS 的系统: ```bash sudo update-grub ``` 这一步骤将会重新生成 `/boot/grub/grub.cfg` 或者类似的文件,并反映最新的设置变化[^1]。 如果是 UEFI 系统,可能还需要额外注意 EFI 分区上的相关路径情况[^4]。 #### 特殊场景下的注意事项 有时可能会遇到只读文件系统的情况,在这种情形下需要先将根分区改为可写状态才能继续操作。具体方法可通过运行下面这条指令实现: ```bash sudo mount -o remount,rw / ``` 这样就能确保能够正常保存所做的改动[^5]。 另外需要注意的是某些高级功能比如移除不必要的内核版本或是定制化主题等则建议借助专门工具如 Grub-Customizer 来简化流程。 ### 示例代码片段 假设想让 GRUB 菜单一直可见而不是自动隐藏,可以把超时时间延长至无限期并且禁用快速启动特性: ```bash # 编辑配置文件 sudo nano /etc/default/grub # 更改下列两行内容 GRUB_TIMEOUT=-1 # 设定无限制的时间延迟 GRUB_HIDDEN_TIMEOUT= # 清空此项取消隐匿倒计时逻辑 # 应用新设定 sudo update-grub ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值