AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 772267
Accepted
lyndhurst
lyndhurst
Asked: 2024-03-13 23:08:12 +0800 CST2024-03-13 23:08:12 +0800 CST 2024-03-13 23:08:12 +0800 CST

恢复备份不良的 gpg 密钥

  • 772

在计算机发生故障后,我刚刚从 borg 备份存储库恢复了我的数据。

我的~/.gnupg文件夹看起来不错,私钥在那里,权限看起来正确。通常博格在这方面做得很好。当我查看cat私钥文件时,没有数据损坏的迹象。

但是我无法列出或使用私钥。pacman我只能与在安装过程中导入的公钥进行交互。

我遇到过一些类似的帖子,这些问题涉及从一台机器复制到另一台机器后无法识别私钥的问题,通常,按照使用重复传输的建议,gpg —export-key然后使用相反的命令导入它们,问题就会得到解决。

不幸的是,我没有这样的奢侈,因为我的旧机器已经崩溃并且无法恢复。我知道导入和导出密钥,但我始终认为这只是移动密钥的安全过程。

所以我有两个问题:

我是否必须检查我的备份脚本并对我的 gpg 密钥使用导出命令?

我还能恢复我的密钥吗?

=======编辑======

我在 arch 论坛上发现了一篇帖子,其中一位用户遇到了与我完全相同的问题,所以我得到了更多线索可以关注。

到目前为止我尝试过的:

gpg --version
> gpg (GnuPG) 2.4.5

ps aux | grep gpg-a
>  /usr/bin/gpg-agent --supervised

#About ownership: 
chown -R $USER:$USER .gnupg

# Checking UID/GID with show a result of `1000` both on filesystem # # and backup archive.
ls -vn .gnupg/private-keys-v1.d 

gpg --export-secret-keys
> gpg: WARNING: nothing exported

gpg -v --list-secret-keys
> gpg: enabled compatibility flags:
> gpg: using pgp trust model

# Most relevant results of:
strace -f -o /tmp/gpg.strace gpg --list-secret-keys
cat /tmp/gpg.strace
> 76220 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
> 76220 access("/home/$USER/.gnupg/secring.gpg", F_OK) = -1 ENOENT (No such file or directory)

# Listing public keys
gpg --list-keys
> Returns one public key imported by pacman during install

gpg -K
> Returns nothing

ls -ln .gnupg/
.rw-r-----   12 1000 13 Mar 10:45 common.conf
drwx------    - 1000  6 Sep  2023 crls.d
.rw------- 2.0k 1000 13 Sep  2023 gpg-agent.conf
.rw-------  703 1000  5 Mar 18:48 gpg.conf
drwx------    - 1000 30 Aug  2023 private-keys-v1.d
drwxr-x---    - 1000 14 Mar 19:27 public-keys.d
.rw-r--r--    0 1000 24 Aug  2023 pubring.gpg
.rw-r--r-- 7.7k 1000  5 Mar 12:13 pubring.kbx
.rw-r--r-- 7.0k 1000  7 Sep  2023 pubring.kbx~
.rw-------  600 1000  8 Mar 07:20 random_seed
.rw-r-----  676 1000 30 Aug  2023 sshcontrol
.rw------- 1.6k 1000  2 Sep  2023 trustdb.gpg
backup
  • 1 1 个回答
  • 55 Views

1 个回答

  • Voted
  1. Best Answer
    lyndhurst
    2024-03-16T03:09:07+08:002024-03-16T03:09:07+08:00

    我现在正在尝试安装 garuda kde,结果发现它带有一些我尚未完全弄清楚的默认 gpg 设置。

    不管怎样,事实证明某个进程正在不断地重新创建一个基本.gnupg文件夹。它看起来并不像是 gpg 代理的责任,因为我能够以用户和 root 身份禁用所有与 gpg 相关的 systemd 服务(主要是gpg-agent.service和gpg-agent.socket),然后是killall gpg-agent。

    发生的情况是,我永远不会真正从备份中恢复我自己的 gpg 文件夹,而是将其与自动创建的文件夹合并,并且由于某些原因它无法工作。

    最后,为了确保找到罪魁祸首,我可以rm -rf使用脚本从备份中恢复该文件夹,这样无论重新创建它的进程都没有时间这样做。

    从那以后它一直运行良好。

    • 0

相关问题

  • rsync 无缘无故地忽略 /mnt 中的一些文件夹

  • 如何对整个硬盘和分区表进行完整的增量和可搜索备份?

  • 用于增量备份的 pax 命令,带有类似于 rsync 的硬链接

  • 如何为多个项目组织您的系统?[关闭]

  • 我可以将时移快照保存到保管箱吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve