tcplay:映射后无法在具有隐藏卷保护的 TrueCrypt 卷上安装文件系统

tcplay:映射后无法在具有隐藏卷保护的 TrueCrypt 卷上安装文件系统

我正在使用 tcplay 来处理 Truecrypt 卷,该卷具有位于最后 GB 的 4 GB 隐藏卷。当我安装普通卷或隐藏卷时,它们安装得很好。但是,当我安装带有隐藏卷保护的普通卷(选项--protect-hidden,或简称-e)时,我得到的是:

[root@oc2222167007 /media]# tcplay -m truecrypt2 -e -d /dev/loop0
Passphrase: <password of external volume>
Passphrase for hidden volume: <password of hidden volume>
All ok!
[root@oc2222167007 /media]# parted -l | grep -B1 -A5 truecrypt

Error: /dev/mapper/truecrypt2: unrecognised disk label
<output ommited>

当我使用 挂载文件系统时-e,它不会拾取它......

[root@oc2222167007 /media]# cryptsetup remove truecrypt2
[root@oc2222167007 /media]# tcplay -m truecrypt2 -d /dev/loop0
Passphrase: <password of external volume>
All ok!
[root@oc2222167007 /media]# parted -l | grep -B1 -A5 truecrypt
Model: Linux device-mapper (crypt) (dm)
Disk /dev/mapper/truecrypt2: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: loop

Number  Start  End     Size    File system  Flags
 1      0.00B  4295MB  4295MB  ext4

...但是如果我像那样安装外部卷,它就可以正常工作。

发生了什么?

答案1

遇到同样的问题,我无法安装受保护隐藏的外部卷,但我可以安装为不受保护的罚款,但因此我可以轻松地破坏我的隐藏数据。

如果我尝试将其安装为受保护的,我会从安装中收到此错误:

mount: wrong fs type, bad option, bad superblock on /dev/mapper/tmp.000,
   missing codepage or helper program, or other error
   In some cases useful info is found in syslog - try
   dmesg | tail  or so

似乎它无法识别原始文件系统,并且不会让我挂载,即使我在命令中定义文件系统类型也是如此mount

但是,我为此找到了一种解决方法,在您映射受tcplay我用来mkfs创建文件系统保护的设备之后,它就可以正常安装并且隐藏卷保持不变。

但这种方法有一个问题,假设你创建了一个 10Mb 的容器,带有 6Mb 的隐藏卷,如果你在启用隐藏卷保护后创建一个文件系统,你将得到一个 4Mb 的卷,即使你挂载了外部卷,这也会显示为 4Mb卷,它应该显示 10Mb,所以我们会遇到合理推诿的问题,如果您无法隐藏隐藏卷的已用空间,那么拥有隐藏卷有什么用?

答案2

由于您可以正确安装外部卷和隐藏卷,因此您必须已经创建了相应的文件系统。该问题可能是由于您对外部卷使用了错误的文件类型所致。

以下是有关 truecrypt 卷设置的信息:

https://help.ubuntu.com/community/TruecryptHiddenVolume

它声明输出文件系统应设为“fat”(命令 mkfs.vfat)。

解决方案:

备份文件。挂载没有隐藏保护的输出卷并使用 mkfs.vfat,然后挂载并为隐藏卷创建文件系统。这样就可以在不泄露隐藏卷秘密的情况下解决隐藏保护问题。

相关内容