我正在尝试挂载我的一个文件容器:它包含一个 ext-4 卷,并且该文件也在一个 ext-4 卷上(使用 Linux)。
Veracrypt GUI 弹出一个窗口: mount: /media/veracrypt5: mount(2) 系统调用失败:结构需要清理。
系统日志:
Jul 23 06:37:11 sus kernel: [ 3539.354847] EXT4-fs (dm-2): ext4_check_descriptors: Block bitmap for group 41984 not in group (block 2980594717749601960)!
Jul 23 06:37:11 sus kernel: [ 3539.354852] EXT4-fs (dm-2): group descriptors corrupted!
Jul 23 06:37:11 sus systemd[1]: tmp-.veracrypt_aux_mnt3.mount: Succeeded.
Jul 23 06:37:11 sus systemd[1302]: tmp-.veracrypt_aux_mnt3.mount: Succeeded.
我尝试使用 Veracrypt 命令行工具进行挂载,并在那里获得“结构需要清理”。
我尝试在那里添加其他没有帮助的选项:--force --mount-options=readonly
当使用普通驱动器时,我可以在卸载的卷上使用 fsck,例如在 /dev/sdc
但是 Veracrypt 的卸载卷是加密的,那么我将如何使用 fsck 以及在什么文件上?
或者有其他修复方法吗?
VeraCrypt 的“挂载”包括两个步骤——首先连接加密设备,以便操作系统可以看到虚拟的“明文”设备,然后才将该设备挂载为文件系统。
据我所知,VeraCrypt 使用内置的 Linux “Device Mapper” dm-crypt 框架(与 LUKS 完全相同),因此您可以在
/dev/mapper/<some name>
.我在论坛上发现了提示,如果您从 CLI 使用 VeraCrypt,那么该
--filesystem none
选项应该可以满足您的需要——设置清除设备而不尝试挂载其文件系统。LUKS cryptsetup工具还可以识别 VeraCrypt 卷 - 用于
cryptsetup open
设置 dm-crypt 设备,而不是通过 VeraCrypt。