Lin*_*eak 38 permissions directory gpg
系统:我正在测试基于Ubuntu 18.04 的Linux Mint 19 Beta。
我在安装不相关的软件包时收到此警告:
Run Code Online (Sandbox Code Playgroud)gpg: WARNING: unsafe ownership on homedir '/home/vlastimil/.gnupg'
这是ls
目录本身的输出:
$ lld /home/vlastimil/.gnupg
drwx------ 4 vlastimil vlastimil 4,0K Jun 26 11:42 /home/vlastimil/.gnupg
Run Code Online (Sandbox Code Playgroud)
这似乎没问题。
这是ls
目录内容的输出:
$ ll /home/vlastimil/.gnupg/
total 24K
drwx------ 2 vlastimil vlastimil 4,0K Jun 26 11:36 crls.d
drwx------ 2 vlastimil vlastimil 4,0K Jun 26 05:28 private-keys-v1.d
-rw-r--r-- 1 vlastimil vlastimil 6,4K Jun 26 11:42 pubring.kbx
-rw-r--r-- 1 vlastimil vlastimil 3,2K Jun 26 11:37 pubring.kbx~
srwx------ 1 root root 0 Jun 26 11:38 S.dirmngr
-rw------- 1 vlastimil vlastimil 1,2K Jun 26 11:37 trustdb.gpg
Run Code Online (Sandbox Code Playgroud)
我不确定我是否不能删除名为S.dirmngr
.
我也不确定这是否会解决问题或创建另一个问题。
我只记得不久前,我被指示安装一个名为 ie 的包dirmngr
,但我不记得它连接了什么软件安装。
编辑1:
正如斯蒂芬基特所指出的,我真的跑了这条线,我在历史上发现:
sudo gpg --recv-keys ...
Run Code Online (Sandbox Code Playgroud)
这会有什么后果吗?
Ste*_*itt 45
这是运行gpg
with的结果sudo
:gpg
然后以 root 身份运行,但它的主目录仍然是用户的。这解释了警告(gpg
以 root 身份运行,但另一个用户拥有配置目录)和dirmngr
套接字的所有权。
要解决这个问题,你应该停止dirmngr
:
sudo gpgconf --kill dirmngr
Run Code Online (Sandbox Code Playgroud)
(sudo
仅此一次,因为dirmngr
以 root 身份运行,正如其套接字所证明的那样),然后恢复您的所有权:
sudo chown -R $USER ~/.gnupg
Run Code Online (Sandbox Code Playgroud)