Linux 命令速查
系统管理 man grub2-set-password

grub2-set-password

为 GRUB 2 设置引导菜单密码

返回

补充说明

grub2-set-password 是部分发行版提供的封装脚本,交互式读取密码后生成 PBKDF2 哈希,并写入 GRUB 的密码文件(RHEL 系通常为 /boot/grub2/user.cfg,内容形如 GRUB2_PASSWORD=grub.pbkdf2.sha512...)。它省去了手工拼接哈希的步骤。

该命令并非上游 GNU GRUB 的标准工具,不同发行版的可用性与行为可能不同:有的系统只提供 grub2-setpassword,有的需要自行用 grub-mkpasswd-pbkdf2 生成哈希。执行前先确认命令是否存在(command -v grub2-set-password),不存在时按“实例”中的手工方案处理。

密码保护只能阻止在引导菜单上编辑内核参数或进入单用户模式,不能替代磁盘加密;能物理接触机器的人仍可拆盘读取数据。

语法

grub2-set-password [选项]

选项

该脚本选项很少,通常没有额外参数,直接运行后按提示输入两次密码。部分版本支持:

  • -h / --help:显示帮助
  • -v / --version:显示版本

实例

# 先确认命令存在
command -v grub2-set-password

# 交互式设置密码
sudo grub2-set-password

# 查看生成的结果文件
sudo cat /boot/grub2/user.cfg

# 手工方案:生成哈希
sudo grub2-mkpasswd-pbkdf2
# 把输出写入 user.cfg
echo 'GRUB2_PASSWORD=grub.pbkdf2.sha512.10000....' | sudo tee /boot/grub2/user.cfg
sudo chmod 600 /boot/grub2/user.cfg

# 重新生成配置使其生效
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

修改后建议重启验证;若忘记密码,可从救援介质启动并删除 user.cfg 或还原备份。RHEL 系在启用 Secure Boot 时,还要注意 GRUB 配置与 shim 的一致性。

参考链接