挂载带有 LUKS 加密分区的 USB 磁盘失败并显示 cryptsetup“设备已存在”错误

Poi*_*nty 11 encryption mount luks 16.04

我有一个带有加密 LUKS 分区的外部 USB 驱动器。我通常安装设备没有问题;我从 xfce4 桌面单击它并获得一个对话框,我在其中输入密码。

当我现在尝试挂载驱动器时,我输入密码并收到错误消息:

Error unlocking /dev/sdc1: Command-line `cryptsetup luksOpen "/dev/sdc1" "luks-..."' exited with non-zero exit status 5: Device luks-... already exists
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能安装驱动器?它是否以某种方式损坏了?如果设备没有安装(并且直到不久前才插入),它怎么可能已经存在?

And*_*nas 19

是的,当 luks 加密设备没有在 cryptsetup 关闭时完全停用时会发生这种情况。

您可以尝试使用删除映射

dmsetup remove /dev/mapper/luks-... 如果你想避免重启。

  • 但这个答案甚至对我不起作用 - 我只是得到`device-mapper: remove ioctl on [device] failed: Device or resource busy` (12认同)
  • @Hitechcomputergeek 我得到了同样的结果,不得不关闭一个我对驱动器打开的旧终端。 (3认同)
  • 您还可以执行“dmsetup remove_all” (2认同)
  • @Hitechcomputergeek 请参阅 https://askubuntu.com/questions/429612/device-mapper-remove-ioctl-on-luks-xxxx-failed-device-or-resource-busy 了解如何查找和关闭所有正在使用的资源装置。 (2认同)

小智 5

在我这边,当它发生时,dmsetup remove /dev/mapper/luks-命令不起作用,因为指定的映射磁盘在 /dev/mapper 下不再存在......

所以我不得不手动关闭旧映射:

cryptsetup luksClose /dev/sdxx /dev/mapper/luks-...
Run Code Online (Sandbox Code Playgroud)

(其中 sdx 对应于您已识别的 luks 分区 fdisk -l