直到内核 4.6,我都能够挂载 ecryptfs 挂载,它的顶层目录是普通目录,但较低的目录是加密的。
从内核 4.7 开始我不能再这样做了。
加密的 home 位于 /.private/backup,挂载点位于 /mountpoint。
挂载是从 .private 完成的,而不是从 .private/backup 完成的,如下所示:
$> mount -t ecryptfs /.private /mountpoint
$> ls /挂载点/备份
ls: 无法访问 /mountpoint/backup: 没有这样的文件或目录
?????????? ? ? ? ? ?备份
如果我安装
$> mount -t ecryptfs /.private/backup /mountpoint
那么一切就OK了。
我正在使用以下选项 rw,noauto,user,no_sig_cache,ecryptfs_passthrough=n,ecryptfs_sig=xxxxxx,ecryptfs_cipher=blowfish,ecryptfs_key_bytes=56,ecryptfs_fnek_sig=xxxxxxx,ecryptfs_unlink_sigs,key=passphrase:passphrase_passwd_file=/root/.ecryptfs/passwd 。 TXT
使用 ecryptfs_passthrough=y 似乎没有任何区别。
可能是什么原因?
答案1
在 4.7 中,通过以下提交禁用了在同一 eCryptfs 挂载点下查找纯文本和加密文件名的功能:
https://git.kernel.org/linus/88ae4ab9802eaa8e400e611f85883143d89d6b61
事实证明,在较低的文件系统中支持两种形式的文件名是有问题的,因此决定在给定的 eCryptfs 挂载点下只能使用其中一种。得知您的用例受到该决定的影响,我们深表遗憾,但我认为目前无法支持该用例。