9.4. 使用 LUKS2 加密块设备上的现有数据
您可以使用 LUKS2 格式加密尚未加密设备上的现有数据。新的 LUKS 标头保存在设备的标头中。
先决条件
- 块设备有一个文件系统。
已备份了数据。
警告由于硬件、内核或人为故障,您可能会在加密过程中丢失数据。在开始加密数据之前,请确保您有可靠的备份。
步骤
卸载您要加密的设备上的所有文件系统,例如:
umount /dev/mapper/vg00-lv00
# umount /dev/mapper/vg00-lv00
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为存储 LUKS 标头腾出空间。使用以下适合您场景的选项之一:
如果是加密逻辑卷,您可以扩展逻辑卷而无需调整文件系统的大小。例如:
lvextend -L+32M /dev/mapper/vg00-lv00
# lvextend -L+32M /dev/mapper/vg00-lv00
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
使用分区管理工具(如
parted
)扩展分区。 -
缩小该设备的文件系统。您可以对 ext2、ext3 或 ext4 文件系统使用
resize2fs
工具。请注意,您无法缩小 XFS 文件系统。
初始化加密:
cryptsetup reencrypt --encrypt --init-only --reduce-device-size 32M /dev/mapper/vg00-lv00 lv00_encrypted
# cryptsetup reencrypt --encrypt --init-only --reduce-device-size 32M /dev/mapper/vg00-lv00 lv00_encrypted /dev/mapper/lv00_encrypted is now active and ready for online encryption.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 挂载该设备:
mount /dev/mapper/lv00_encrypted /mnt/lv00_encrypted
# mount /dev/mapper/lv00_encrypted /mnt/lv00_encrypted
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为到
/etc/crypttab
文件的持久映射添加一个条目:查找
luksUUID
:cryptsetup luksUUID /dev/mapper/vg00-lv00
# cryptsetup luksUUID /dev/mapper/vg00-lv00 a52e2cc9-a5be-47b8-a95d-6bdf4f2d9325
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在您选择的文本编辑器中打开
/etc/crypttab
,并在此文件中添加一个设备:vi /etc/crypttab
$ vi /etc/crypttab lv00_encrypted UUID=a52e2cc9-a5be-47b8-a95d-6bdf4f2d9325 none
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 a52e2cc9-a5be-47b8-a95d-6bdf4f2d9325 替换为您设备的
luksUUID
。使用
dracut
刷新 initramfs:dracut -f --regenerate-all
$ dracut -f --regenerate-all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
向
/etc/fstab
文件中添加一个永久挂载条目:查找活跃的 LUKS 块设备的文件系统的 UUID:
blkid -p /dev/mapper/lv00_encrypted
$ blkid -p /dev/mapper/lv00_encrypted /dev/mapper/lv00-encrypted: UUID="37bc2492-d8fa-4969-9d9b-bb64d3685aa9" BLOCK_SIZE="4096" TYPE="xfs" USAGE="filesystem"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在您选择的文本编辑器中打开
/etc/fstab
,并在此文件中添加一个设备,例如:vi /etc/fstab
$ vi /etc/fstab UUID=37bc2492-d8fa-4969-9d9b-bb64d3685aa9 /home auto rw,user,auto 0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 37bc2492-d8fa-4969-9d9b-bb64d3685aa9 替换为您文件系统的 UUID。
恢复在线加密:
cryptsetup reencrypt --resume-only /dev/mapper/vg00-lv00
# cryptsetup reencrypt --resume-only /dev/mapper/vg00-lv00 Enter passphrase for /dev/mapper/vg00-lv00: Auto-detected active dm device 'lv00_encrypted' for data device /dev/mapper/vg00-lv00. Finished, time 00:31.130, 10272 MiB written, speed 330.0 MiB/s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证现有数据是否已加密:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看加密的空白块设备的状态:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow