每次启动时避免 Grub2 密码保护?

use*_*551 6 boot grub2 password 16.04

我已经按照这个线程设置了Grub2 密码。它工作正常,但现在每次我启动或重新启动计算机时都会提示输入用户名和密码。这实际上是它做的第一件事。

现在,如果 Grub 配置文件由于某种原因被损坏,我基本上无法访问任何内容。我想要的是有选项,能够访问我的桌面并编辑配置文件,而不会被 Grub 阻止,以防出现问题,但在按 键shift访问 Grub 菜单时仍然有密码提示。

我的40_custom文件如下所示:

#!/bin/sh
exec tail -n +3 $0
set superusers="xxx"
password_pbkdf2 xxx hashed_password
Run Code Online (Sandbox Code Playgroud)

我还研究了这个线程,其中提出并回答了类似的问题,但方法略有不同,并且适用于旧版本的 Ubuntu。我很乐意尝试这些解决方案,但我真的不想把事情搞砸并把自己锁在外面。

那么有没有一种安全的方法来实现这一目标呢?编辑/etc/grub.d/10_linux就够了吗?

感谢您提前的答复。

更新:

所以我决定尝试上面的解决方案,它确实有效,但需要进行一些细微的调整。我修改了/etc/grub.d/10_linux,添加--unrestricted到第132行:

echo "menuentry '$(echo "$os" | grub_quote)' --unrestricted ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
Run Code Online (Sandbox Code Playgroud)

请注意,您不应对上面的第 130 行进行任何更改'$(echo "$title" | grub_quote)',否则您将无法通过shift从引导中按 键来访问 Grub 菜单。至少我没能做到。

运行sudo update-grub并重新启动后,它将直接越过 Grub,从而达到预期的效果。另一方面,如果调用 Grub 菜单,它将显示菜单,但每当尝试点击任何高级选项(包括控制台和编辑)时,它都会提示输入用户名和密码。

希望这会对处于相同情况的人有所帮助。