MAN-J
Man PagesPricing
LoginGet Started
cryptsetup-convert(8)
Original
English • 95 lines
CRYPTSETUP-CONVERT(8)	     Maintenance Commands	 CRYPTSETUP-CONVERT(8)

NAME
       cryptsetup-convert - converts the device between LUKS1 and LUKS2 format

SYNOPSIS
       cryptsetup convert --type <format> [<options>] <device>

DESCRIPTION
       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].

OPTIONS
       --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.

REPORTING BUGS
       Report bugs at cryptsetup mailing list <cryptsetup@lists.linux.dev> or
       in Issues project section
       <https://gitlab.com/cryptsetup/cryptsetup/-/issues/new>.

       Please attach the output of the failed command with --debug option
       added.

SEE ALSO
       Cryptsetup FAQ
       <https://gitlab.com/cryptsetup/cryptsetup/wikis/FrequentlyAskedQuestions>

       cryptsetup(8), integritysetup(8) and veritysetup(8)

CRYPTSETUP
       Part of cryptsetup project <https://gitlab.com/cryptsetup/cryptsetup/>.

cryptsetup 2.8.1		  2025-08-13		 CRYPTSETUP-CONVERT(8)

cryptsetup-convert(8)

cryptsetupconvert \- converts the device between LUKS1 and LUKS2 format

0popularity

System Information

cryptsetup 2.8.1 1.0.0
Updated 2025-08-13
Maintained by Unknown

Actions