【问题标题】:Android Source Repo GPG public key not found未找到 Android 源代码库 GPG 公钥
【发布时间】:2013-10-08 05:28:03
【问题描述】:

我正在运行 Linux Mint 14 并尝试下载 android 源代码。我按照设置环境的说明进行操作,当我尝试使用 repo 获取源时,出现以下错误。

...
 * [new tag]         v1.9.4     -> v1.9.4
 * [new tag]         v1.9.5     -> v1.9.5
 * [new tag]         v1.9.6     -> v1.9.6

object e76efdd7b342577c40aa271fa5ded9d66a783a9b
type commit
tag v1.12.4
tagger Conley Owens <cco3@android.com> 1380645867 -0700

repo 1.12.4

gpg: Signature made Tue 01 Oct 2013 09:44:27 AM PDT using RSA key ID 692B382C
gpg: Can't check signature: public key not found
error: could not verify the tag 'v1.12.4'

我已经尝试从指令中导入公钥,尝试生成我自己的 GPG 密钥,以及符号链接目录 ~/.gnupg 和 ~/.repoconfig/gnupg 两种方式,我仍然得到同样的错误。我还尝试删除 ~/.repoconfig 和 ~/.gnupg,但仍然没有运气。

任何帮助将不胜感激。

【问题讨论】:

  • 我遇到了同样的问题。尝试了很多不同的解决方案:删除 repoconfig 目录,导入密钥,git tag -v 1.12.4 can't wrap my head

标签: android repository gnupg openpgp


【解决方案1】:

我在这里找到了解决方案: http://www.marshut.com/wrrts/repo-release-1-12-4.html

抱歉,我今天发现我们没有上传最新版本的 发射器。我会更新文档。与此同时, 请使用:

curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

chmod a+x ~/bin/repo

sha1 e197cb48ff4ddda4d11f23940d316e323b29671c

如果验证错误仍然存​​在,您可以吹走(或移动)您的 ~/.repoconfig 目录以确保导入新的公钥。

麻烦大家了!

【讨论】:

  • 似乎 repo 1.12.4 才在几个小时前发布
  • 第二个(第三个?)这个。用这个替换了已安装的 repo 版本(和 B2G 版本),一切都恢复正常了。
【解决方案2】:

请检查 ~/bin 和 ~/bin/repo 的所有权。

如果所有者与您的登录名不同(例如 root:root),那么您会看到上述错误。

问候, DS儿子

【讨论】:

    【解决方案3】:

    使用 curl 更新 repo 实用程序并没有为我解决这个问题。我最终做了以下事情:

    $sudo apt-get install repo
    $rm -rf ~/.repoconfig
    $gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 692B382C
    

    上述命令将 repo 实用程序安装到 /usr/bin/repo,删除您的 .repoconfig 文件,然后安装缺少的密钥。

    如果您的 repo init 命令失败了一次,您还应该在再次运行 repo init 之前删除 .repo 文件夹。

    然后,使用 /usr/bin/repo 代替 repo 运行您的 repo init 命令。当您执行 repo init 时,它可能使用位于 ~/bin/repo 而不是 /usr/bin/repo 的 repo 版本。例如,我按如下方式运行编辑后的命令,一切正常:

    $/usr/bin/repo init -u https://source.codeaurora.org/quic/le/le/manifest.git -b [branch] -m [manifest]
    

    这里的解决方案是使用不同版本的 repo。就我而言,来自 apt-get 的那个有效,但不是 google 链接之一。这是在 Ubuntu 16 上运行的。

    【讨论】:

      【解决方案4】:

      以下解决方案对我有用。首先删除你安装的bin目录下的repo。

      rm -rf ~/bin
      

      然后使用以下命令删除配置文件。

      rm -rf .repoconfig/ rm -rf .gnupg/(如果有)

      然后使用以下命令安装 repo。

      sudo apt-get install repo
      

      然后安装签名运行以下命令。

      repo init
      

      这将下载所需的签名。

      就是这样,运行repo init -u &lt;manifest url&gt; -b &lt;release&gt; -m &lt;manifest file&gt;...

      repo sync 它将开始同步。

      在 Ubuntu 版本上进行实验:18.04

      【讨论】:

        猜你喜欢
        • 2021-06-11
        • 1970-01-01
        • 2020-11-06
        • 2017-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多