今天给树莓派换源,爆出N个这错误:

W: GPG error: http://mirrors.neusoft.edu.cn/raspbian/raspbian wheezy InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9165938D90FDDD2E

经过多番查找资料,解决了问题,记录下解决过程.

介绍:

GPG是啥:

这玩意又叫GnuPG,是一个加密/解密相关的工具,据说是模仿PGP开发的(PGP另一个加密工具,收费的)

apt为何用到GPG:

apt在下载包的时候会加密,而GPG在其中提供加密,解密相关的支持

解决问题:

从上面的提示可看出,似乎缺少了某Pubkey,所以要把它补上,使用如下命令:

gpg --keyserver 服务器 --recv-keys 提示语句最后的那串玩意儿 && apt-key add /root/.gnupg/pubring.gpg
#例子:
gpg --keyserver keyserver.ubuntu.com --recv-keys 9165938D90FDDD2E && apt-key add /root/.gnupg/pubring.gpg

有些系统可以尝试用这个:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 9165938D90FDDD2E

命令执行后,再次apt update,发现之前的GPG错误没了.问题解决~

国内可用key server列表:

keyserver.ubuntu.com

pgp.mit.edu

subkeys.pgp.net

www.gpg-keyserver.de

参考资料(里面有更详细的内容):

http://blog.chinaunix.net/uid-20420254-id-2890214.html

http://www.ruanyifeng.com/blog/2013/07/gpg.html

http://zqscm.qiniucdn.com/data/20070530161730/index.html

解决linux更新apt软件源时报出GPG错误的更多相关文章

  1. 更新Debian软件源

    更新Debian软件源 sudo cp /etc/apt/sources.list /etc/apt/sources.list_bak #备份一下软件源 sudo vi /etc/apt/source ...

  2. linux下获取软件源码包 centos/redhat, debian/ubuntu

    linux下获取软件源码包 centos/redhat, debian/ubuntu centos下: 1. yum install yum-utils 主要为了获取yumdownloader 2. ...

  3. 各版本linux推荐的软件源

    x64 Ubuntu 18.4 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe mul ...

  4. 【Linux】apt软件管理和远程登录

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 1. apt 介绍 apt 是 Advanced Packaging Tool 的简称,是一款安装包管理工具.在 Ubuntu 下,可以使用 ap ...

  5. linux -- ubuntu 何为软件源

    新手学Ubuntu的时候,一般不知道什么是源,但源又是Ubuntu下常用到的东西.因此,本文就详细介绍一下Ubuntu 源. 什么是软件源? 源,在Ubuntu下,它相当于软件库,需要什么软件,只要记 ...

  6. [转]更新Debian软件源

    转自:香神无涯 sudo cp /etc/apt/sources.list /etc/apt/sources.list_bak #备份一下软件源sudo vi /etc/apt/sources.lis ...

  7. Linux Mint---更新软件源

    安装完系统之后第一件事情就是更新软件源,为接下来的各种工作作准备,这个也很简单,直接打开software source设置一下, 然后打开software manager更新一下就好了.

  8. 使用Windows客户端连接Linux系统中的MySQL时产生的错误已经解决

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  9. Linux:编译动态库时遇到的错误relocation R_X86_64_32 against `a local symbol'

    编译动态库时遇到如下错误: ... ... relocation R_X86_64_32 against `a local symbol' can not be used when making a ...

随机推荐

  1. 图的最短路径——dijkstra算法和Floyd算法

    dijkstra算法 求某一顶点到其它各个顶点的最短路径:已知某一顶点v0,求它顶点到其它顶点的最短路径,该算法按照最短路径递增的顺序产生一点到其余各顶点的所有最短路径. 对于图G={V,{E}};将 ...

  2. gcc系强制链接静态库(同时有.so和.a)

    1. 坑多的办法 -static 如果需要链接成不依赖任何so文件的程序,用ldd查看显示为"not a dynamic executable",但是这个选项时不推荐的. 即使像这 ...

  3. Spring Boot 监控与管理

    在微服务架构中,我们将原本庞大的单体系统拆分为多个提供不同服务的应用,虽然,各个应用的内部逻辑因分解而简化,但由于部署的应用数量成倍增长,使得系统的维护复杂度大大提升,为了让运维系统能够获取各个为服务 ...

  4. Linux之用户组、文件权限详解

    用户和用户组 文件所有者(u) 一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者 用ls ‐ahl命令可以看到文件的所有者 也可以使用chown 用户名 文件名来修改文件的所有者 用户组 ...

  5. java小程序(课堂作业02)

    1,三种方法计算组合数 ①设计思路:第一种方法就是通过阶乘公式然后运用公式计算出组合数,第二种通过公式推导出cnk=n/(n-k)cnk-1,然后然后从ckk 开始运算到cnk,第三种方法就是通过递归 ...

  6. ASP.NET Web APIs 基于令牌TOKEN验证的实现(保存到DB的Token)

    http://www.cnblogs.com/niuww/p/5639637.html 保存到DB的Token 基于.Net Framework 4.0 Web API开发(4):ASP.NET We ...

  7. Docker镜像构建上下文(Context)

    镜像构建上下文(Context) Dicker在构建镜像时,如果注意,会看到 docker build 命令最后有一个 ... 表示当前目录,而 Dockerfile 就在当前目录,因此不少初学者以为 ...

  8. 胖子哥的大数据之路(7)- 传统企业切入核心or外围

    一.引言 昨天和一个做互联网大数据(零售行业)的朋友交流,关于大数据传统企业实施的切入点产生了争执,主要围绕两个问题进行了深入的探讨: 问题1:对于一个传统企业而言什么是核心业务,什么是外围业务? 问 ...

  9. DS二叉树--Huffman编码与解码

    题目描述 1.问题描述 给定n个字符及其对应的权值,构造Huffman树,并进行huffman编码和译(解)码. 构造Huffman树时,要求左子树根的权值小于.等于右子树根的权值. 进行Huffma ...

  10. [Java]JGit用法总结

    clone public static void gitClone(String remoteUrl, File repoDir) { try { Git git = Git.cloneReposit ...