我用备用CD安装了Ubuntu 11.10,并使用加密的LVM对整个系统(引导除外)进行了加密。一切都像以前一样很好,但是我想更改加密的LVM的密码。我试图按照这个的提示和技巧的文章,但它不工作。输入后:
sudo cryptsetup luksDump /dev/sda5
它说:“设备/ dev / sd5不存在或访问被拒绝。” 我以为加密分区是/ dev / sda5。有什么帮助如何更改密码?
我用备用CD安装了Ubuntu 11.10,并使用加密的LVM对整个系统(引导除外)进行了加密。一切都像以前一样很好,但是我想更改加密的LVM的密码。我试图按照这个的提示和技巧的文章,但它不工作。输入后:
sudo cryptsetup luksDump /dev/sda5
它说:“设备/ dev / sd5不存在或访问被拒绝。” 我以为加密分区是/ dev / sda5。有什么帮助如何更改密码?
Answers:
警告(对于较旧的Ubuntu版本,应该已修复了较新的版本(例如19.04),但无论如何都应小心):如果只有一个键并在添加另一个之前将其删除,则重启后将使磁盘无法访问!这也意味着您以后不能再添加新密钥。 感谢waffl和khaimovmr这些有益的意见。
首先,您需要找出哪个是加密的LVM分区,它可能是sda3,但也可以是sda5(在Ubuntu LVM上是默认值),sdX2,...:
cat /etc/crypttab
要添加新密码,请使用luksAddKey
:
sudo cryptsetup luksAddKey /dev/sda3
要删除现有密码,请使用luksRemoveKey
:
sudo cryptsetup luksRemoveKey /dev/sda3
查看加密分区当前使用的插槽:
sudo cryptsetup luksDump /dev/sda3
引用此博客。谢谢。
在Ubuntu 18.04中,还可以使用(Gnome)Disks。感谢您的提示,Greg Lever在单击之后,发现了Greg提到的内容:
1.打开Gnome磁盘。
2.选择/单击左侧面板中的主物理硬盘驱动器。
3.单击LUKS加密分区,在此示例中为分区3:
4.单击编辑图标(齿轮,齿轮),然后选择“更改释义”。
要查看使用的插槽:
sudo cryptsetup luksDump /dev/sda5
并找出要使用的分区
cat /etc/crypttab
如果由uuid列出,请使用
ls -l /dev/disk/by-uuid/{insert your uuid here}
然后使用
sudo cryptsetup luksAddKey /dev/sda5
sudo cryptsetup luksRemoveKey /dev/sda5
要么
sudo cryptsetup luksChangeKey /dev/sda5
和更快的参考(假设/ etc / crypttab中只有1个条目)
sudo cryptsetup luksAddKey /dev/disk/by-uuid/$(cat /etc/crypttab | sed -e "s|\(.*\) UUID=\(.*\) none.*|\2|g")
sudo cryptsetup luksChangeKey /dev/disk/by-uuid/$(cat /etc/crypttab | sed -e "s|\(.*\) UUID=\(.*\) none.*|\2|g")
cat /etc/crypttab
列出uuid时的操作。
我在查找分区名称时遇到问题,因此创建了本指南:
找到您的LMV分区
# install jq if you don't have it
sudo apt-get install jq
# find LVM partition
LVMPART=$(lsblk -p --json | jq -r '.blockdevices[] | select(.children) | .children[] | select(.children) as $partition | .children[] | select(.type == "crypt") | $partition.name')
# check if it was found
echo $LVMPART
# (optional)
# if above output is empty, locate it in a tree view using this command
lsblk -p
# partition `/dev/some_name` should be the parent object of the one with TYPE of `crypt`, set it
LVMPART=`/dev/some_name`
通过转储检查LVM分区元
sudo cryptsetup luksDump $LVMPART
添加新密钥(可以有多个密钥)
sudo cryptsetup luksAddKey $LVMPART
再次转储后,您应该会看到多个密钥
sudo cryptsetup luksDump $LVMPART
根据需要删除旧密钥
sudo cryptsetup luksRemoveKey $LVMPART