如何查找 UUID 以设置具有外部驱动器密钥文件保护的 LUKS

Max*_*don 2 luks 16.04

我使用LUKS + 密码设置了我的外部驱动器。我想增加密码+密钥文件的安全性。对于内部存储,这似乎 微不足道,但我不确定如何为外部驱动器解决这个问题。/dev/sdX对于外部驱动器来说似乎是一个糟糕的选择,我找不到 USB 驱动器的 UUID。

我试过了:

  • blkid - 这为本地 LUKS 驱动器提供了 UUID,例如`/dev/sdc1',但不适用于任何带有 LUKS 的外部驱动器
  • sudo dmsetup deps -o devname返回的驱动器,例如(sde)(sdc1),但没有UUID。
  • cat /proc/mounts 给了我 LUKS 映射器的安装位置,但没有更详细的信息。
  • 我试过卸载驱动器,但这并没有那么好,驱动器似乎仍然被映射 /dev/mapper

按照 AlexP 的建议使用 lsblk

lsbslk输出确实给UUID,但它是不平凡的解释:

NAME           MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT          NAME           MOUNTPOINT          UUID
sda              8:0    0   477G  0 disk                      sda                                
??sda1           8:1    0   512M  0 part  /boot/efi           ??sda1         /boot/efi           F2BB-F970
??sda2           8:2    0 412,5G  0 part  /                   ??sda2         /                   4d1c2b61-d9eb-4a3f-b4cf-fae15479670c
??sda3           8:3    0  63,9G  0 part                      ??sda3                             31b267cb-c89f-4662-a68b-74667fb26b48
  ??cryptswap1 252:0    0  63,9G  0 crypt [SWAP]                ??cryptswap1 [SWAP]              b854bc4f-e822-4917-9373-18eba9b2eb35
...
sde                                                                                              1a3d7d94-373e-4087-aadd-0b3ce09078b5
??luks-1a3d7d94-373e-4087-aadd-0b3ce09078b5
               252:4    0  16,4T  0 crypt /media/musr/Ext_icy ??luks-1a3d7d94-373e-4087-aadd-0b3ce09078b5
                                                                            /media/musr/Ext_icy  42d1104f-3a51-4950-ac70-f3ea1148760c
Run Code Online (Sandbox Code Playgroud)

似乎报告了两个 UUID sde- 一个用于驱动器,一个用于安装的 LUKS

Ale*_*exP 7

sudo lsblk -o +name,mountpoint,uuid
Run Code Online (Sandbox Code Playgroud)

sudo显示卸载分区是非常重要的。

磁盘不一定有 UUID,通常只有分区才有。UUID 是需要以系统理解的格式存储在分区上的元数据。系统理解格式化为 ext3、ext4、swap、LUKS、FAT、LVM 等的分区的 UUID。在使用相对较新的 GPT 分区表的磁盘上,分区也有一个partuuid存储在分区表中的 ,您可以将它们作为/dev/disk/by-partuuid/.