![LUKS:如何添加更多密码槽(或删除/更改密码)](https://linux22.com/image/1180762/LUKS%EF%BC%9A%E5%A6%82%E4%BD%95%E6%B7%BB%E5%8A%A0%E6%9B%B4%E5%A4%9A%E5%AF%86%E7%A0%81%E6%A7%BD%EF%BC%88%E6%88%96%E5%88%A0%E9%99%A4%2F%E6%9B%B4%E6%94%B9%E5%AF%86%E7%A0%81%EF%BC%89.png)
卢克斯提供最多 8 个密码槽(=多个同时有效的密码)。
安装 Linux 时,我遇到了问题
- 如何添加新密码槽
- 如何删除密码槽
- 如何查看有多少个插槽处于活动状态
- 如何测试密码对于容器/分区是否有效
- 如何备份 luks 分区的标题(=数据实时保险……)
哪些命令可以帮助我完成这项工作?
答案1
我假设该分区是/dev/sda3
如果您不知道名称,您可以使用列出所有分区lsblk -f
。
添加新的密码槽:
sudo cryptsetup luksAddKey /dev/sda3
- 下一个免费密码槽将被使用
- 首先,它会要求输入一个现有的有效密码,然后您必须输入新密码。
旧密码仍然有效。
如果你想添加密钥文件(而不是密码),那么
sudo cryptsetup luksAddKey /dev/sda3 MyKeyFile.txt
删除密码槽:
- 可能性 1:
sudo cryptsetup luksRemoveKey /dev/sda3
=> 您必须输入要删除的密码(它会自动找到正确的密码槽) - 可能性 2:
sudo cryptsetup luksKillSlot /dev/sda3 2
=> 这将删除密码槽 2(您必须输入任何其他密码槽的密码,但不需要输入密码槽 2 的密码
=> 即使您不知道密码槽 2 的密码,此方法也有效 - 可能性 3:
sudo cryptsetup luksRemoveKey --key-file MyKeyFile.txt /dev/sda3
=> 如果密钥文件MyKeyFile.txt
有效,则删除它
查看有多少个插槽处于活动状态:
sudo cryptsetup luksDump /dev/sda3
这将输出该分区的所有 luks 设置。
测试该分区的密码是否有效:
sudo cryptsetup open --verbose --test-passphrase /dev/sda3
现在您可以输入密码,它会告诉您密码是否错误或密码属于哪个密码槽。
如果您想测试 KeyFile 是否有效,它的工作原理如下:
sudo cryptsetup open --verbose --test-passphrase --key-file MyKeyFile.txt /dev/sda3
备份 luks 分区的标题:
sudo cryptsetup luksHeaderBackup /dev/sda3 --header-backup-file MyLuksHeader.dat
sudo chmod +r MyLuksHeader.dat
它将创建一个 16MB 的文件。
保存这个文件非常重要。如果文件头损坏,没有备份,所有数据都会丢失!
列出所有加密文件系统:
sudo cat /etc/crypttab
如果您需要更多帮助,可以输入man cryptsetup
。