版本1.97-beta后,GRUB2开始支持设定开机密码了。
可以直接修改/boot/grub/grub.cfg。当然,最好更改/etc/grub.d/00_header,在末尾添加:
cat << EOF
set superusers=”user1″
password user1 PasswordOfUser1
EOF
这样的话,grub升级后用grub-mkconfig(update-grub)生成的配置文件中就会自动包含开机密码,而不必每次都修改grub.cfg文件了。
版本1.98后,GRUB2可以设定加密的密码。先用grub-mkpasswd-pbkdf2生成加密的密码(一种基于pbkdfv2算法的加密工具)。然后,向/etc/grub.d/00_head末尾追加:
cat << EOF
set superusers=”user1″
password_pbkdf2 user1 EncryptedPasswordOfUser1
EOF
我觉得,与v1相比,GRUBv2的可配置性是大大加强了,而且模板脚本用bash写成,更方便程序员DIY。不过,原来那种简洁、精悍的感觉似乎不再了。
新版grub需要在 /etc/grub.d/10_linux加 –unrestricted参数
CLASS=”–class gnu-linux –class gnu –class os –unrestricted”
来源https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1311302