我已经成功地使用sudo mount -t ecryptfs [SRC DIR] [DST DIR]
. for ecryptfs-recover-private
withmount: No such file or directory
和 with setreuid: Operation not permitted
for都失败了strace --follow-forks -o file.log ecryptfs-recover-private
。顺便说一句,为什么会出现不同的错误--follow-forks
?也许值得单独提问strace
。
无论如何,它已安装,但ls [DST DIR]
列出了看起来像正确主文件夹的文件和文件夹,但带有?
“无法访问......没有这样的文件或目录”。可能是什么问题呢?
通过网络搜索,我成功找到了mount
问题的 QA。https://askubuntu.com/questions/1074753/ecryptfs-mount-private-failure-in-ubuntu-18-04-mount-no-such-file-or-directory; https://askubuntu.com/questions/1126981/ecryptfs-mount-no-such-file-or-directory; 挂载:没有加密恢复的文件或目录 “ecryptfs-mount-private”返回“fopen:没有这样的文件或目录”
离我最近的是从内核 4.7 开始,ecryptfs 安装失败也?
适用于ls
,但它是从 2016 年开始的,答案是内核更改为纯文本+加密名称更改,我的加密主文件夹是从 2021 年开始的。
顺便说一句,我已经尝试过mount
和。plaintext passthrough
y
n
答案1
默认提供的 FDEK(文件名解密密钥)mount
不是正确的,我之前没有注意到这一点。
长话短说
我能够通过 挂载并读取我的加密文件夹ecryptfs-recover-private
。
ecryptfs-recover-private
是 shell 脚本,接近末尾有mount -i -t ecryptfs -o "$mount_opts" "$d" "$tmpdir"
.我将我的方式与脚本进行了比较,唯一的 IMO 区别是-i
脚本中的标志(其他选项看起来与我运行时交互选择的相同mount -t ecryptfs
:)ecryptfs_sig=$mount_sig,ecryptfs_fnek_sig=$fnek_sig,ecryptfs_cipher=aes,ecryptfs_key_bytes=16
。
知道这一点,并思考这个问题,我以某种方式意识到要检查 FDEK,实际上在我的终端中,我看到mount
默认提供的 FDEK(文件名解密密钥)不是正确的。当我从Private.sig
FDEK输入第二行后,mount -t
它也起作用了。