|
NAME | SYNOPSIS | DESCRIPTION | OPTIONS | REPORTING BUGS | SEE ALSO | CRYPTSETUP |
|
|
|
CRYPTSETUP-CONVERT(8) Maintenance Commands CRYPTSETUP-CONVERT(8)
cryptsetup-convert - converts the device between LUKS1 and LUKS2
format
cryptsetup convert --type <format> [<options>] <device>
Converts the device between LUKS1 and LUKS2 format (if possible).
The conversion will not be performed if there is an additional
LUKS2 feature or LUKS1 has an unsupported header size.
For conversion from LUKS2 to LUKS1, all active keyslots must use
the PBKDF2 key-derivation function. The PBKDF2 and anti-forensic
filter (AF) hash must be the same as the hash used in the digest.
All keyslot numbers must be lower than 8 (LUKS1 maximum slot
number). There must be at least one active keyslot and no unbound
or reencryption keyslots.
Conversion (both directions) must be performed on an inactive
device. There must not be an active dm-crypt mapping established
for the LUKS header requested for conversion.
The --type option is mandatory with the following accepted values:
luks1 or luks2.
WARNING: The convert action can destroy the LUKS header in the
case of a crash during conversion or if a media error occurs.
Always create a header backup before performing this operation!
<options> can be [--header, --type, --disable-locks].
--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.
--disable-locks
Disable lock protection for metadata on disk. This option is
valid only for LUKS2 and is 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).
--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 the
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.
--help, -?
Show help text and default parameters.
--type type
Specifies required device type, for more info, read the BASIC
ACTIONS section in cryptsetup(8).
--usage
Show short option help.
--version, -V
Show the program version.
Report bugs at cryptsetup mailing list
<[email protected]> or in Issues project section
<https://gitlab.com/cryptsetup/cryptsetup/-/issues/new>.
Please attach the output of the failed command with --debug option
added.
Cryptsetup FAQ
<https://gitlab.com/cryptsetup/cryptsetup/wikis/FrequentlyAskedQuestions>
cryptsetup(8), integritysetup(8) and veritysetup(8)
Part of cryptsetup project
<https://gitlab.com/cryptsetup/cryptsetup/>. This page is part of
the Cryptsetup ((open-source disk encryption)) project.
Information about the project can be found at
⟨https://gitlab.com/cryptsetup/cryptsetup⟩. If you have a bug
report for this manual page, send it to [email protected]. This
page was obtained from the project's upstream Git repository
⟨https://gitlab.com/cryptsetup/cryptsetup.git⟩ on 2025-08-11. (At
that time, the date of the most recent commit that was found in
the repository was 2025-08-01.) If you discover any rendering
problems in this HTML version of the page, or you believe there is
a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
[email protected]
cryptsetup 2.8.1-git 2025-08-09 CRYPTSETUP-CONVERT(8)
Pages that refer to this page: cryptsetup(8)