本想在 Debian Squeeze 上安装一些依赖,没想到刚执行 apt-get update ,就出现这样的错误信息。

W: GPG error: http://mirrors.163.com squeeze Release: The following signatures were invalid: KEYEXPIRED 1520281423 KEYEXPIRED 1501892461
E: Release file expired, ignoring http://mirrors.163.com/debian-archive/dists/squeeze-lts/Release (invalid since 923d 19h 26min 3s)

问题出在哪里

Debian Squeeze 6.0 版本对于当前最新的 9.5 版本来说,是过于陈旧了。

错误信息表示,证书过期,也不是太意外的事。

The following signatures were invalid 为关键字进行搜索,大体有两种方案:

缓存原因?

搜索到的大多数结果给出这样的解答,比如这里

sudo apt-get clean
cd /var/lib/apt
sudo mv lists lists.old
sudo mkdir -p lists/partial
sudo apt-get clean
sudo apt-get update

他们认为原因是 apt 系统出现临时性的缓存故障,所以用 clean 的方式来清除。

我不知道在当时是否真的有效,毕竟那篇博客写在 2012 年,当时 Debian 6.0 也才发布一年,决不至于密钥出现过期,怀疑到缓存身上也

情有可原。

但是当前我的密钥是真的过期了,invalid since 923d(ays),我尝试了这种 clean 的方法,并不能生效。看来解决方案也有保持期啊。

密钥续期?

另一种方案是续期密钥,比如这里

sudo apt-key list | grep "expired: "
sudo apt-key adv --keyserver keys.gnupg.net --recv-keys [KEY]

这种方案想为过期的密钥续期,使其可用。

我先在系统里查看了密钥的情况,确实过期的太久。

$ sudo apt-key list
/etc/apt/trusted.gpg
--------------------
..........................
..........................
..........................
pub 2048R/6D849617 2009-01-24 [expired: 2013-01-23]
uid Debian-Volatile Archive Automatic Signing Key (5.0/lenny) pub 4096R/B98321F9 2010-08-07 [expired: 2014-08-05]
uid Squeeze Stable Release Key <debian-release@lists.debian.org>
..........................
..........................
..........................

于是用 apt-key adv 进行续期,再次查看密钥情况,发现并没有多少改观,

时间确实前进更新了几个月,但是依旧保持着 expired 状态,毕竟还差很多年。

我想可能和第一种方案是一样的问题,“方案过期”。在当时版本还支持的时候,应该是有效果的,但是当前情况已经

发生了变化,错误信息是一样的,但是问题本身已经出现了本质的变化。

当前的正确方案

于是继续搜索,在官方文档的FAQ部分,找到了官方解答。

1.修改 source.list

deb http://archive.debian.org/debian squeeze main
deb http://archive.debian.org/debian squeeze-lts main

2.同时配置 apt,添加以下内容到 /etc/apt/apt.conf(没有则新建)

Acquire::Check-Valid-Until false;

其中特别提到了 The second line will fail with an "expired" type message, so you also need to ...,so sweet!

既然 Debian Squeeze 已经不再更新,apt source 也划入了 archive,这个方案应该是最“长治久安”的。cheers~

正确配置 debian squeeze apt 源的更多相关文章

  1. 配置 ROS 的 apt 源

    配置 ROS 的 apt 源 ROS的apt源有官方源.国内 USTC 源或新加坡源可供选择, 选择其一就可以了,建议使用国内 USTC 源或新加坡源,安装速度会快很多. 方式一:官方源 $ sudo ...

  2. debian之apt源

    美国的 deb http://ftp.us.debian.org/debian stable main contrib non-freedeb-src http://ftp.us.debian.org ...

  3. [技术博客]nginx 部署 apt 源

    [技术博客] nginx 部署 apt 源 出于各种各样的原因, 有时需要自己配置apt源, 比如发布自己编写的debian软件包, 内网中只有一台电脑可以访问外网,或者在本地配置自己的apt源.我们 ...

  4. 【转】关于apt源配置的问题

    涉及的基本配置文件: apt核心配置文件集中在 /etc/apt 其中,管理软件来源的配置文件如下 sources.list                           // 主要软件源 so ...

  5. [debian]use ISO as debian apt source / 使用ISO文件作为apt源

    准备文件: debian-9.8.0-amd64-DVD-1.iso debian-9.8.0-amd64-DVD-2.iso debian-9.8.0-amd64-DVD-3.iso 挂载: roo ...

  6. Debian 采用 iso 镜像作为 apt 源

    1.将N个debian-506-amd64-DVD-N.iso存放于本地或其他媒介内,本例是放在本机/iso/目录下2.创建N个挂载点目录 如下: debian:~#mkdir –r /media/d ...

  7. ubuntu apt源配置

    前言:看见Ubuntu新出了18.04版本感觉不错,装一个玩玩,虽然有很多教程可以参考,但我也给出一个不是很一样的方案吧,尽量解释的详细一点. 为了下载更方便,速度更快,我们往往在使用Linux系列系 ...

  8. APT源

    Debian 6.0.7 deb http://mirrors.163.com/debian squeeze main non-free contribdeb http://mirrors.163.c ...

  9. Debian添加软件源

    安装完渗透测试系统kali linux后,默认的只有security这个源,只更新那些集成的安全软件,不能安装其他新软件,官网给出了3类源: Kali Linux提供了3类软件源,这些源在世界各地都有 ...

随机推荐

  1. 理解JVM——类加载机制

    我们在编写Java程序之后,会通过编译器得到一个class文件,这个class文件是如何与JVM进行配合的呢?类中的信息是如何变成JVM可以使用的Java类型呢?这些都是类加载机制做到的. 虚拟机把描 ...

  2. IntelliJ IDEA使用技巧一览表

    1 .写代码时用 Alt-Insert ( Code|Generate… )可以创建类里面任何字段的 getter 与 setter 方法. 2 .右键点击断点标记(在文本的左边栏里)激活速查菜单,你 ...

  3. PHP MemCached高级缓存配置图文教程

    memcache是一个高性能的分布式的内存对象缓存系统,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.     1.Memcache相关介绍 memcache是一个高性能的 ...

  4. Js apply()使用详解

    Js apply方法详解 我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这 ...

  5. 记录一下iOS Leak的使用方法。

    观测过程中不需要使用xcode.只需观察Leak工具即可 1:选中Xcode,点击左上角的Xcode.找到tool   然后找到instrument.如下图 2:打开instrument 找到Leak ...

  6. gulp插件 run-sequence(同步执行任务)

    功能描述 gulp默认使用最大并发数执行任务,也就是说所有的任务几乎都是同时执行,而不会等待其它任务.但很多时候,任务是需要有先后次序的,比如要先清理目标目录,然后再执行打包. run-sequenc ...

  7. 为什么can接口要接通用CAN隔离收发器啊?

    为什么can接口要接通用CAN隔离收发器啊? 主要是为了实现远端接地环路断开的系统,让接口允许在很大的共模电压变化下保证可靠通讯.通常使用CAN通讯的系统,都是要实现远距离可靠通讯,这也恰恰是CAN- ...

  8. 【jq】插件—缓存jquery.cookie.js

    jquery.cookie.js插件   轻量级cookie管理 1°下载地址:http://plugins.jquery.com/cookie/ 2°引入方式:(基于jquery) <scri ...

  9. 对ArrayList存放的对象,按照对象的某个属性进行排序。

    使用Collections.sort()方法进行实现: import java.util.ArrayList; import java.util.Collections; import java.ut ...

  10. 菜鸟成长心酸史之php初遇教程

    phpstorm是我接触到的第二个制作网页的程序,刚拿到php的时候,我是懵逼的,从安装到使用,可以说一点都不会,尤其是它还要配合wampsever使用,即使看视频,不同的制作php的软件也有不同的地 ...