Ubuntu 18.04 中的 ecryptfs-mount-private 失败:mount:没有这样的文件或目录

Ubuntu 18.04 中的 ecryptfs-mount-private 失败:mount:没有这样的文件或目录

Ubuntu 18.04 默认不安装 ecryptfs(本文已经提到过)。非盟问题)。

当我通过 安装 ecryptfs 时,apt-get一切似乎都运行正常。但重启后,我在使用时收到以下错误ecryptfs-mount-private

mount:没有那个文件或目录

知道如何解决这个问题吗?
Linux Mint 19 Tara 似乎已经解决了这个问题。

答案1

2019 年 9 月更新:

这个错误现在出现在我的 Debian 10 (buster) 中。经过一些额外的调查,问题似乎是 /etc/pam.d/lightdm 中缺少一个条目

我相信应该有这样一行:

# Create a new session keyring.
session    optional   pam_keyinit.so force revoke

前:

@include common-account

2018 年 9 月的原始帖子,以下解决方法仍然有效,但上面的修复可能更正确的

使用 Ubunutu 18.04 和 lightdm / systemd(GUI 登录屏幕)时,内核密钥环出现问题(截至 2018 年 9 月)。这会破坏使用会话密钥环的 ecryptfs 脚本中的某些功能。

通过 GUI(lightdm)登录您的帐户后,您会注意到您的会话密钥环未正确初始化:

keyctl show

有几种解决方法。@serg-tt 提到了一种方法,即使用 Linux 控制台登录。

为了修复此错误,并在 GUI 登录后应用默认用户会话密钥环,我通过添加文件进行了(临时)修复:

/etc/X11/Xsession.d/98fix-keyring

此文件的内容:


# Work around a bug in lightdm and/or systemd that leaves
# an incorrect session keyring (a root owned keyring)
# applied. I think this supposed to be fixed in pam
# by pam_keyinit.so, however, it does not seem to be
# working.

# Try and use the default session keyring for the user:
[ "$UID" ] || UID=`id -u`
keyringname=_uid_ses.$UID
## keyctl show > /tmp/fix-keyring$$ #DEBUG

STARTUP="keyctl session $keyringname $STARTUP"

应用此修复后,您需要注销并重新登录。

答案2

ecryptfs-mount-private是一个相对较短(65 行,无注释)的 shell 脚本,但唯一的 mount 调用是mount.ecryptfs_private,并且它需要以下文件/目录,它们都在那里吗?

  • $HOME/.Private 作为源
  • $HOME/Private 作为目标
  • $HOME/.ecryptfs/Private.sig 用于密钥签名。
  • $HOME/.ecryptfs/wrapped-密码

“没有这样的目录”听起来像是你缺少了 ~/Private 或 ~/.Private。也许ecryptfs-setup-private没有完全成功?如果你愿意,你可以逐行浏览,这个命令可以让你看到它:

less `which ecryptfs-setup-private`

答案3

cryptfs 的挂载无法在 GUI 上运行(通过快捷方式“Access-Your-Private-Data.desktop”或终端)。

小解决方法是:你必须
$ ecryptfs-mount-private
在任何 tty 上执行命令 mount:(Ctrl F(3-6)),{Ctrl(F2-1)将返回到你的 GUI 会话} 或 ssh...
profit )

相关内容