gpg:警告:主目录‘/home/user/.gnupg’的所有权不安全

gpg:警告:主目录‘/home/user/.gnupg’的所有权不安全

我正在尝试按照本指南安装 Tor 浏览器:

https://2019.www.torproject.org/docs/debian.html.en在 Ubuntu 18.04.3 TLS 上。

运行以下命令时:

gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -

我收到以下错误信息:

E: This command can only be used by root.

当我使用 运行相同的命令时sudo,我收到以下消息:

gpg: WARNING: unsafe ownership on homedir '/home/user/.gnupg'
E: This command can only be used by root.

有人知道如何修复它以及为什么会发生这种情况吗?

答案1

您究竟是如何尝试使用它的sudo

我的猜测是:

sudo gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -

如果是这样,gpg将以 root 身份运行,并将apt-key以普通用户身份运行。

在这种特殊情况下,您应该sudo在前面添加apt-key

gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -

由于您gpg在运行sudo时没有使用该-H标志,因此权限~/.gnupg可能发生了变化。

man sudo

-H' -H (HOME) 选项要求安全策略将 HOME 环境变量设置为密码数据库指定的目标用户(默认为 root)的主目录。根据策略,这可能是默认行为。

检查权限和所有权:

ls -l ~/.gnupg

如果目录 ( .) 或目录中的任何文件归 所有root,请使用以下命令修复权限:

sudo chown -R $USER:$USER ~/.gnupg
sudo find ~/.gnupg -type d -exec chmod 700 {} \;
sudo find ~/.gnupg -type f -exec chmod 600 {} \;

相关内容