How I use cryptsetup and LUKS
LUKS device configuration
$ DEVICE=/dev/sdc $ MAPPING_NAME=sdc $ MOUNT_POINT=/mnt/my_mount_pointFormatting a LUKS device
$ sudo cryptsetup luksFormat --type luks2 $DEVICE ... $ sudo cryptsetup open $DEVICE $MAPPING_NAME Enter passphrase for /dev/sdc: $ sudo mkfs.ext4 /dev/mapper/$MAPPING_NAME $ sudo cryptsetup close $MAPPING_NAMEMounting a LUKS device
$ sudo cryptsetup open $DEVICE $MAPPING_NAME Enter passphrase for /dev/sdc: $ sudo mount /dev/mapper/$MAPPING_NAME $MOUNT_POINTUnmounting an LUKS device
$ sudo umount $MOUNT_POINT $ sudo cryptsetup close $MAPPING_NAMEMaking a LUKS header backup
$ HEADER_BACKUP_FILE=header-backup-file $ sudo cryptsetup luksHeaderBackup --header-backup-file $HEADER_BACKUP_FILE $DEVICEOpening a LUKS device from a header backup
sudo cryptsetup --header $HEADER_BACKUP_FILE luksOpen $DEVICE $MAPPING_NAMEAdding a password to a LUKS device
sudo cryptsetup luksAddKey $DEVICE
References
- https://security.stackexchange.com/questions/140948/mapping-of-encrypted-to-decrypted-blocks-in-lucks
- https://gitlab.com/cryptsetup/cryptsetup/-/wikis/FrequentlyAskedQuestions#6-backup-and-data-recovery
- https://askubuntu.com/questions/1319688/luks-how-can-i-add-more-password-slots-or-remove-change-a-password