Debian 8 (jessie) сохраняет параметры пароля Grub 2 в каталоге /etc/grub.d/
. Внутри этого каталога есть только сценарии, используемые для создания файла конфигурации.
Таким образом, вы можете создать новый скрипт (например, /etc/grub.d/01_users
) со следующим содержимым:
#!/bin/bash
cat <<EOF
set superusers="putyourusernamehere"
password putyourusernamehere grub.pbkdf2 grub.pbkdf2.sha512.10000.3450C89...
EOF
Все вышеперечисленные строки являются частью файла, потому что это скрипт, чей вывод будет помещен в окончательный файл конфигурации. Поскольку это скрипт, он будет обрабатываться только в том случае, если он исполняемый (chmod a+x ...
).
В качестве альтернативы вы можете поместить только нужные вам строки в один из существующих файлов, которые настроены для вывода собственного содержимого. Здесь вы можете увидеть, как /etc/grub.d/40_custom
заменяет оболочку командой tail, возвращающей содержимое скрипта, начиная с третьей строки:
#!/bin/sh
exec tail -n +3 $0
set superusers="putyourusernamehere"
password putyourusernamehere grub.pbkdf2 grub.pbkdf2.sha512.10000.3450C89...
В некоторых производных Ubuntu (например, Mint 19) формат пароля изменился следующим образом:
#!/bin/sh
exec tail -n +3 $0
set superusers=putyourusernamehere
password_pbkdf2 putyourusernamehere grub.pbkdf2.sha512.10000.3450C89...
Вы можете добавить «--unrestricted» в пункты меню, которые вы хотите загрузить без пароля. Например, в файле 10_linux
:
10_linux:CLASS="--class gnu-linux --class gnu --class os --unrestricted"
Наконец, запустите update-grub2
чтобы сгенерировать окончательный файл конфигурации /boot/grub/grub.cfg
.