elc*_*ano 5 kde mount luks dolphin
我在使用 manjaro 的系统中使用 KDE dolphin 解锁 luks 加密磁盘时遇到问题。
这个问题并不严重。可以通过重启来解决,但有时这样做并不方便,我发现首先了解为什么会出现这个问题可能很有用。
所以我第一次在重启后解锁设备一切都很好。如果我卸载系统,下次也可以。问题是有时,我连接设备,输入密码后出现以下错误:
访问“主页”时发生错误,系统响应:请求的操作失败:解锁/dev/sdxy时出错:无法激活设备:文件存在
但是这个文件用 看不到df -h
,也不是通过/etc/fstab
挂载,连接时总是挂载和解锁。该命令fuser
不会显示任何相关内容,lsof
只会返回:
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
lsof: WARNING: can't stat() fuse file system /run/user/1000/doc
Output information may be incomplete.
Run Code Online (Sandbox Code Playgroud)
其实我看到有一些进程在使用这个文件夹(ps aux | grep 1000
),但不知道这是否真的有助于解决问题。
1779 ? Sl 0:03 /usr/lib/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes
1847 ? S 0:03 file.so [kdeinit5] file local:/run/user/1000/klaunchermRxLKs.1.slave-socket local:/run/user/1000/kded5IKggHu.1.slave-socket
23434 ? S 0:00 file.so [kdeinit5] file local:/run/user/1000/klauncherDwiyfV.1.slave-socket local:/run/user/1000/dolphinaVwzoi.58.slave-socket
Run Code Online (Sandbox Code Playgroud)
我怀疑终止这些进程可能会有所帮助,但不知道它是否安全(不能冒险这样做正确知道,不是不知道)。有任何想法吗?
编辑:输出dmsetup info
和dmsetup table
:
设置信息
Name: luks-92bde790-5ca6-441b-bad3-5c3163292c8b
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 0
Event number: 0
Major, minor: 254, 1
Number of targets: 1
UUID: CRYPT-LUKS1-92bde7905ca6441bbad35c3163292c8b-luks-92bde790-5ca6-441b-bad3-5c3163292c8b
Name: luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 1
Event number: 0
Major, minor: 254, 0
Number of targets: 1
UUID: CRYPT-LUKS1-1f9193832d4a44e2b28e21bffd11dd6c-luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c
Run Code Online (Sandbox Code Playgroud)
dmsetup 表
luks-92bde790-5ca6-441b-bad3-5c3163292c8b: 0 4294963200 crypt aes-xts-plain64 0000000000000000000000000000000000000000000000000000000000000000 0 8:33 4096
luks-1f919383-2d4a-44e2-b28e-21bffd11dd6c: 0 3906401473 crypt aes-xts-plain64 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0 8:2 4096
Run Code Online (Sandbox Code Playgroud)
小智 6
如果在查看dmsetup ls
您的输出后发现您有陈旧的设备,您可以删除它们dmsetup remove
- 最好在仔细验证该设备确实没有使用之后。
我遇到了同样的问题,这样做之后我能够再次解锁并安装我的加密 USB 硬盘:
# dmsetup ls --tree
luks-f53274db-3ede-4a27-9aa6-2525d9305f94 (254:5)
`- (8:34)
# ls -l /dev/mapper/
total 0
crw------- 1 root root 10, 236 Nov 24 15:22 control
lrwxrwxrwx 1 root root 7 Nov 27 09:42 luks-f53274db-3ede-4a27-9aa6-2525d9305f94 -> ../dm-5
# dmsetup remove /dev/dm-5
Run Code Online (Sandbox Code Playgroud)
小智 6
我遇到了同样的错误(也在 Manjaro 上使用 KDE)。我的 USB 设备上有一个 LUKS 卷,但该卷未从计算机上完全删除。当我重新插入 USB 设备时,LUKS 卷拒绝解锁:
# udisksctl unlock -b /dev/sdg1
Passphrase:
Error unlocking /dev/sdg1: GDBus.Error:org.freedesktop.UDisks2.Error.Failed: Error unlocking /dev/sdg1: Failed to activate device: File exists
Run Code Online (Sandbox Code Playgroud)
由于我试图解锁设备/dev/sdg1
,我不明白@MartinR如何在他们的答案中识别出有问题的卷UUID(而不是其他一些没有问题的LUKS卷),特别是因为其中的条目/etc/fstab
有一个与 中列出的 UUID 不同/dev/mapper
。
# grep /mount/point /etc/fstab
UUID=33333333-3333-3333-3333-333333333333 /mount/point ext4 defaults 0 0
# ls -lah /dev/mapper
total 0
crw------- 1 root root 10, 236 Oct 10 06:08 control
lrwxrwxrwx 1 root root 7 Oct 10 06:08 luks-11111111-1111-1111-1111-111111111111 -> ../dm-1
lrwxrwxrwx 1 root root 7 Oct 10 17:41 luks-22222222-2222-2222-2222-222222222222 -> ../dm-2
lrwxrwxrwx 1 root root 7 Oct 10 06:08 luks-00000000-0000-0000-0000-000000000000 -> ../dm-0
Run Code Online (Sandbox Code Playgroud)
我能够验证哪个 LUKS 卷 UUID 在udisksctl
与设备分区一起使用时遇到问题。
# udisksctl info -b /dev/sdg1 | grep 'IdUUID'
IdUUID: 22222222-2222-2222-2222-222222222222
Run Code Online (Sandbox Code Playgroud)
此时,哪个 dm 对象需要清理就很清楚了。
# dmsetup ls
luks-00000000-0000-0000-0000-000000000000 (254:0)
luks-11111111-1111-1111-1111-111111111111 (254:1)
luks-22222222-2222-2222-2222-222222222222 (254:2)
# dmsetup remove /dev/dm-2
Run Code Online (Sandbox Code Playgroud)
然后,解锁并安装成功。
# udisksctl unlock -b /dev/sdg1
Passphrase:
Unlocked /dev/sdg1 as /dev/dm-2.
# mount /mount/point
Run Code Online (Sandbox Code Playgroud)