This article hasn't been updated for over 5 years. The information below may be obsolete.
update-grub: password_pbkdf2 not found
The error "password_pbkdf2 not found" usually indicates that you've placed your grub password configuration inside any of the automatic system files in /etc/grub.d like 00_header instead of the correct custom configuration file 40_custom.
$ sudo update-grub [...] /etc/grub.d/00_header :274 /etc/grub.d/00_header password_pbkdf2 not found
This is also true if you create a your own configuration file. You'll get the same error:
$ cat /etc/grub.d/99_superusers set superusers="your_username" password_pbkdf2 your_username grub.pbkdf2.sha512.10000.YOUR_HASH_HERE $ sudo update-grub /etc/grub.d/99_superusers: 2: password_pbkdf2: not found
Applying grub password configuration must go into the /etc/grub.d/40_custom file
To resolve simply perform:
- Remove the grub password configuration from the non-standard custom file.
- Open the correct custom configuration file /etc/grub.d/40_custom using a text editor
- Add your superuser and hashed password lines properly at the end of the file:
superusers="your_username" password_pbkdf2 your_username grub.pbkdf2.sha512.10000.YOUR_HASH_HERE
- Save the file and exit your text editor.
- Update your GRUB configuration:
- On Ubuntu/Debian:
$ sudo update-grub
- On Fedora/RHEL/openSUSE:
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- On Ubuntu/Debian:
NOTE: Remember the correct file to edit is 40_custom simply because other files such as grub.cfg or even 00_header are updated automatically by the system in certain circumstances, and you would lose your changes.