如何更改加密的LVM系统的密码(由备用安装完成)?


65

我用备用CD安装了Ubuntu 11.10,并使用加密的LVM对整个系统(引导除外)进行了加密。一切都像以前一样很好,但是我想更改加密的LVM的密码。我试图按照这个的提示和技巧的文章,但它不工作。输入后:

sudo cryptsetup luksDump /dev/sda5

它说:“设备/ dev / sd5不存在或访问被拒绝。” 我以为加密分区是/ dev / sda5。有什么帮助如何更改密码?


1
糟糕,确实是错字!我总是输入/ dev / sd5而不是/ dev / sd5。感谢Hamish的提示。因此,我用来自AndreasHärter(blog.andreas-haerter.com/2011/06/18/ubuntu-full-disk-encryption-lvm-luks#tips_and_tricks)的信息回答了这个问题
Filbuntu 2012年

Answers:


62

Hamish帮助我认识错别字之后,这是对我有用的答案。

警告(对于较旧的Ubuntu版本,应该已修复了较新的版本(例如19.04),但无论如何都应小心):如果只有一个键并在添加另一个之前将其删除,则重启后将使磁盘无法访问!这也意味着您以后不能再添加新密钥。 感谢wafflkhaimovmr这些有益的意见。

首先,您需要找出哪个是加密的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.单击编辑图标(齿轮,齿轮),然后选择“更改释义”。屏幕快照地精磁盘


1
这是否意味着您可以使用多个密码来解密磁盘?
bph

5
您可以。我对其进行了测试
bph

1
有插槽-我相信其中有八个。每个插槽都是一个解锁选项。如果需要,可以是8个密码。
Cookie Cookie

3
警告在此答案上方应该有一个免责声明,即如果您在添加另一个密钥之前先删除了唯一密钥,则重启后将使磁盘无法访问!
waffl

1
警告删除最后一个密钥后,磁盘不仅在重新启动后不可用,而且还无法添加新密钥!
KhaimovMR

28

从软件管理器下载“磁盘”。运行。选择您的加密设备分区。点击齿轮图标。选择“更改密码”。而已


13

我不加思索地将密码短语设置得很长,这让打字变得很痛苦。我最终使用以下内容将其更改为更易于管理的内容。

sudo cryptsetup luksChangeKey /dev/sda5

13

要查看使用的插槽:

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")

+1用于解释cat /etc/crypttab列出uuid时的操作。
安东尼

6

加密分区很可能正在使用/dev/sda5(请注意sda5中的a),并且这可能是您可能需要使用的设备(除非这只是您输入问题的错字)。

但是,加密设备本身将具有另一个名称-类似于/dev/mapper/cryptroot。对于设备名称,您可以:

  • 在文件中查找/etc/crypttab-这将同时具有分区和映射器名称,但仅适用于永久分区
  • 运行mount并查看映射器名称是什么-当您通过USB插入加密磁盘时,这很有用。(尽管我不确定您如何找到实际的基础设备名称)。

2

在Ubuntu 18.04上运行gnome-disks,您可以指向并单击以更改加密密码。


1

我在查找分区名称时遇到问题,因此创建了本指南:

  1. 找到您的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`
    
  2. 通过转储检查LVM分区元

    sudo cryptsetup luksDump $LVMPART
    
  3. 添加新密钥(可以有多个密钥)

    sudo cryptsetup luksAddKey $LVMPART
    
  4. 再次转储后,您应该会看到多个密钥

    sudo cryptsetup luksDump $LVMPART
    
  5. 根据需要删除旧密钥

    sudo cryptsetup luksRemoveKey $LVMPART
    
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.