OS Manuals

/usr/bin/systemd-cryptenroll

The systemd System and Service Manager

From systemd 262.2-r1 (os), captured 2026-11-05 by running systemd-cryptenroll --help (exit 0). permalink

> systemd-cryptenroll [OPTION…] [BLOCK-DEVICE]

Enroll a security token or authentication credential to a LUKS volume.

Options:
  -h --help                                  Show this help
     --version                               Show package version
     --no-pager                              Do not start a pager
     --list-devices                          List candidate block devices to operate on
     --wipe-slot=SLOT1,SLOT2,…               Wipe specified slots
     --firstboot                             Interactively enroll a credential (first-boot wizard)
     --prompt-suppress=TYPE1,TYPE2,…         Skip the --firstboot wizard if a slot of any listed
                                             type exists
     --chrome=BOOL                           In first-boot mode: if false don't show colour bar at
                                             top and bottom of terminal
     --mute-console=BOOL                     In first-boot mode, tell kernel/PID 1 to not write to
                                             the console while running

Unlocking:
     --unlock-empty                          Use an empty password to unlock the volume
     --unlock-key-file=PATH                  Use a file to unlock the volume
     --unlock-fido2-device=PATH              Use a FIDO2 device to unlock the volume
     --unlock-tpm2-device=PATH               Use a TPM2 device to unlock the volume
     --unlock-headless                       Try the 'headless' unlock mechanisms in turn

Simple Enrollment:
     --password                              Enroll a user-supplied password
     --recovery-key                          Enroll a recovery key

PKCS#11 Enrollment:
     --pkcs11-token-uri=URI|auto|list        Enroll a PKCS#11 security token or list them

FIDO2 Enrollment:
     --fido2-device=PATH|auto|list           Enroll a FIDO2-HMAC security token or list them
     --fido2-salt-file=PATH                  Use salt from a file instead of generating one
     --fido2-parameters-in-header=BOOL       Whether to store FIDO2 parameters in the LUKS2 header
     --fido2-credential-algorithm=STRING     Specify COSE algorithm for FIDO2 credential
     --fido2-with-client-pin=BOOL            Whether to require entering a PIN to unlock the volume
     --fido2-with-user-presence=BOOL         Whether to require user presence to unlock the volume
     --fido2-with-user-verification=BOOL     Whether to require user verification to unlock the
                                             volume

TPM2 Enrollment:
     --tpm2-device=PATH|auto|list            Enroll a TPM2 device or list them
     --tpm2-device-key=PATH                  Enroll a TPM2 device using its public key
     --tpm2-seal-key-handle=HANDLE           Specify handle of key to use for sealing
     --tpm2-pcrs=PCR1+PCR2+PCR3+…            Specify TPM2 PCRs to seal against
     --tpm2-public-key=PATH                  Enroll signed TPM2 PCR policy against PEM public key
     --tpm2-public-key-policyref=STRING      Enroll signed TPM2 PCR policy with the specified policy
                                             reference
     --tpm2-public-key-pcrs=PCR1+PCR2+PCR3+… Enroll signed TPM2 PCR policy for specified TPM2 PCRs
     --tpm2-signature=PATH                   Validate public key enrollment works with JSON
                                             signature file
     --tpm2-pcrlock=PATH                     Specify pcrlock policy to lock against
     --tpm2-with-pin=BOOL|direct             Whether to require entering a PIN to unlock the volume.
                                             Takes a boolean or the special value "direct". When
                                             enabled (true), Argon2id is used for PIN hardening.
                                             When "direct", the PIN is used directly without
                                             Argon2id (compatible with older systemd versions)
     --tpm2-argon2id-memory=BYTES            Argon2id memory cost in bytes (default: 64M)
     --tpm2-argon2id-iterations=NUM          Argon2id iteration count (default: 8)
     --tpm2-argon2id-parallelism=NUM         Argon2id parallelism/lane count (default: 4)
     --tpm2-argon2id-iter-time=TIME          Target Argon2id benchmark time in seconds (default: 2s)

See the systemd-cryptenroll(1) man page for details.
Options (37)
OptionDescriptionSource
-h --helpShow this helphelp
--versionShow package versionhelp
--no-pagerDo not start a pagerhelp
--list-devicesList candidate block devices to operate onhelp
--wipe-slot SLOT1Wipe specified slotshelp
--firstbootInteractively enroll a credential (first-boot wizard)help
--prompt-suppress TYPE1Skip the --firstboot wizard if a slot of any listed type existshelp
--chrome BOOLIn first-boot mode: if false don't show colour bar at top and bottom of terminalhelp
--mute-console BOOLIn first-boot mode, tell kernel/PID 1 to not write to the console while runninghelp
--unlock-emptyUse an empty password to unlock the volumehelp
--unlock-key-file PATHUse a file to unlock the volumehelp
--unlock-fido2-device PATHUse a FIDO2 device to unlock the volumehelp
--unlock-tpm2-device PATHUse a TPM2 device to unlock the volumehelp
--unlock-headlessTry the 'headless' unlock mechanisms in turnhelp
--passwordEnroll a user-supplied passwordhelp
--recovery-keyEnroll a recovery keyhelp
--pkcs11-token-uri URI|auto|listEnroll a PKCS#11 security token or list themhelp
--fido2-device PATH|auto|listEnroll a FIDO2-HMAC security token or list themhelp
--fido2-salt-file PATHUse salt from a file instead of generating onehelp
--fido2-parameters-in-header BOOLWhether to store FIDO2 parameters in the LUKS2 headerhelp
--fido2-credential-algorithm STRINGSpecify COSE algorithm for FIDO2 credentialhelp
--fido2-with-client-pin BOOLWhether to require entering a PIN to unlock the volumehelp
--fido2-with-user-presence BOOLWhether to require user presence to unlock the volumehelp
--fido2-with-user-verification BOOLWhether to require user verification to unlock the volumehelp
--tpm2-device PATH|auto|listEnroll a TPM2 device or list themhelp
--tpm2-device-key PATHEnroll a TPM2 device using its public keyhelp
--tpm2-seal-key-handle HANDLESpecify handle of key to use for sealinghelp
--tpm2-pcrs PCR1+PCR2+PCR3+…Specify TPM2 PCRs to seal againsthelp
--tpm2-public-key PATHEnroll signed TPM2 PCR policy against PEM public keyhelp
--tpm2-public-key-policyref STRINGEnroll signed TPM2 PCR policy with the specified policy referencehelp
--tpm2-signature PATHValidate public key enrollment works with JSON signature filehelp
--tpm2-pcrlock PATHSpecify pcrlock policy to lock againsthelp
--tpm2-with-pin BOOL|directWhether to require entering a PIN to unlock the volume.help
--tpm2-argon2id-memory BYTESArgon2id memory cost in bytes (default: 64M)help
--tpm2-argon2id-iterations NUMArgon2id iteration count (default: 8)help
--tpm2-argon2id-parallelism NUMArgon2id parallelism/lane count (default: 4)help
--tpm2-argon2id-iter-time TIMETarget Argon2id benchmark time in seconds (default: 2s)help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.