我正在尝试将 apt 与一个很长时间没有碰过的存储库一起使用。不幸的是,所述存储库的 gpg 密钥已过期(我尝试从各种密钥服务器更新它,但没有成功)
我不想完全禁用签名检查,有什么方法可以告诉 apt 根据过期的密钥验证签名吗?
答案1
我得出的结论是,没有办法在 apt 中禁用此检查,实现该检查的代码如下在methods/gpgv.cc中。
if (strncmp(buffer, GNUPGKEYEXPIRED, sizeof(GNUPGKEYEXPIRED)-1) == 0)
{
if (Debug == true)
std::clog << "Got KEYEXPIRED! " << std::endl;
WorthlessSigners.push_back(string(buffer+sizeof(GNUPGPREFIX)));
}
而且它似乎没有任何形式的条件背后。
然而,可以通过使用 faketime 来解决该检查。例如
faketime 2017-01-01 apt-get update