cryptsetup luksHeaderBackup --header-backup-file <file> [<options>] <device>
Stores a binary backup of the LUKS header and keyslot area.
NOTE: Using '-' as filename writes the header backup to a file named '-'.
<options> can be [--header, --header-backup-file, --disable-locks].
WARNING: This backup file and a passphrase valid at the time of backup allows decryption of the LUKS data area, even if the passphrase was later changed or removed from the LUKS device. Also note that with a header backup you lose the ability to securely wipe the LUKS device by just overwriting the header and key-slots. You either need to securely erase all header backups in addition or overwrite the encrypted data area as well. The second option is less secure, as some sectors can survive, e.g., due to defect management.
- --header <device or file storing the LUKS header>
Use a detached (separated) metadata device or file where the LUKS header is stored. This option allows one to store ciphertext and LUKS header on different devices.
For commands that change the LUKS header (e.g. luksAddKey), specify the device or file with the LUKS header directly as the LUKS device.
- --header-backup-file <file>
Specify file with header backup file.
Disable lock protection for metadata on disk. This option is valid only for LUKS2 and ignored for other formats.
WARNING: Do not use this option unless you run cryptsetup in a restricted environment where locking is impossible to perform (where /run directory cannot be used).
- --batch-mode, -q
Suppresses all confirmation questions. Use with care!
If the --verify-passphrase option is not specified, this option also switches off the passphrase verification.
- --debug or --debug-json
Run in debug mode with full diagnostic logs. Debug output lines are always prefixed by #.
If --debug-json is used, additional LUKS2 JSON data structures are printed.
- --version, -V
Show the program version.
Show short option help.
- --help, -?
Show help text and default parameters.
Report bugs at cryptsetup mailing list or in Issues project section.
Please attach output of the failed command with --debug option added.
cryptsetup(8), integritysetup(8) and veritysetup(8)
Part of cryptsetup project.