저는 tcplay를 사용하여 마지막 GB에 4GB의 숨겨진 볼륨이 있는 Truecrypt 볼륨으로 작업하고 있습니다. 일반 볼륨이나 숨겨진 볼륨을 마운트하면 정상적으로 마운트됩니다. 그러나 숨겨진 볼륨 보호(옵션 --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
하지만 이 방법에는 문제가 있습니다. 6Mb 숨겨진 볼륨이 있는 10Mb 컨테이너를 생성한다고 가정하면, 숨겨진 볼륨 보호를 활성화한 후 파일 시스템을 생성하면 마운트하더라도 4Mb 볼륨을 얻게 됩니다. 외부 볼륨, 이 4Mb 볼륨으로도 표시됩니다. 10Mb로 표시되어야 합니다. 따라서 합리적인 거부 가능성에 대한 질문이 있습니다. 숨겨진 볼륨의 사용된 공간을 숨길 수 없다면 숨겨진 볼륨을 갖는 것이 무슨 소용이 있습니까?
답변2
외부 및 숨겨진 볼륨을 올바르게 마운트할 수 있으므로 해당 파일 시스템을 생성했어야 합니다. 외부 볼륨에 잘못된 파일 형식을 사용하면 문제가 발생할 수 있습니다.
다음은 truecrypt 볼륨 설정에 대한 정보입니다.
https://help.ubuntu.com/community/TruecryptHiddenVolume
출력 파일 시스템을 "fat"(mkfs.vfat 명령)으로 설정해야 한다고 명시되어 있습니다.
해결책:
백업 파일. 숨겨진 보호 없이 출력 볼륨을 마운트하고 mkfs.vfat를 사용한 다음 숨겨진 볼륨에 대한 파일 시스템을 마운트하고 생성합니다. 이는 숨겨진 볼륨의 비밀을 공개하지 않고 숨겨진 보호 문제를 해결합니다.