使用 su 时 GPG 密钥不起作用 -

使用 su 时 GPG 密钥不起作用 -

我家里的机器上有两个账户,一个是工作账户,一个是普通账户。有时我想以工作用户身份登录,从普通账户访问密码数据库。问题是我收到以下错误;

gpg:解密失败:没有密钥

这是使用 Arch Linux 和 KDE。

答案1

这是因为密码将通过 tty 或 X 窗口输入,并且两者都属于原始用户。我发现有人建议使用screen来启动一个新的 tty,但即使这样也不起作用。我得到了“/run/screen/.... 没有这样的文件或目录”

答案是:

su - user
script /dev/null
screen

这里,其中作为原始来源。

答案2

此问题是因为 GPG 密钥属于用户而不是 root。

在文中 用户 GPG 密钥无法被 SUDO 使用 海报接受的答案是:

解决方案:在 bash 脚本中添加以下内容:

HOME=/home/user/

另一个解决方案是添加参数
--gpg-options "--homedir=/home/username/.gnupg"

另一个解决方案是使用--preserve-envsudo 选项,以便 sudo 会话中的 GPG 能够找到在使用会话中运行的 gpg-agent,如下所示:

sudo --preserve-env command

相关内容