Řešení 1:
Chcete-li najít všechny klíče úložiště, jejichž platnost vypršela, a jejich ID, použijte apt-key
takto:
LANG=C apt-key list | grep expired
Dostanete výsledek podobný následujícímu:
pub 4096R/BE1DB1F1 2011-03-29 [expired: 2014-03-28]
ID klíče je bit za /
tj. BE1DB1F1
v tomto případě.
Chcete-li aktualizovat klíč, spusťte
sudo apt-key adv --recv-keys --keyserver keys.gnupg.net BE1DB1F1
Poznámka: Aktualizace klíče samozřejmě ne fungovat, pokud správce balíčku (zatím) nenahrál nový klíč. V tom případě nezbývá nic jiného než kontaktovat správce, nahlásit chybu proti vaší distribuci atd.
Jedna vložka pro aktualizaci všech klíčů, jejichž platnost vypršela: (díky @ryanpcmcquen)
for K in $(apt-key list | grep expired | cut -d'/' -f2 | cut -d' ' -f1); do sudo apt-key adv --recv-keys --keyserver keys.gnupg.net $K; done
Řešení 2:
Musíte získat novější klíč a přidat jej, v tomto okamžiku jej apt zjistí a nebude si stěžovat. Normálně by se to stávat nemělo, ale občas se to stane. Co opravdu potřebujete, je znát hexadecimální kód klíče, který potřebujete přidat; jakmile to máte, je to odtamtud docela z kopce.
Několik příkladů:
-
přidání klíčů pro zpětné porty:prvních pár řádků je to, co hledáte, i když budete muset mít klíč, který chce.
-
přidání klíčů ala Ubuntu
Řešení 3:
Na Debian Wiki o SecureAPT jsem zjistil, že bych měl odstranit řádek obsahující non-us
z /etc/apt/sources.list.
Vlastně jsem to udělal a fungovalo to.
Řešení 4:
Měl jsem podobnou chybu, ale problém byl v systémovém čase. Psal se rok 1961 :)
Opravil jsem systémové datum/čas a poté jsem mohl aktualizovat bez profesionála
Řešení 5:
Může k tomu také dojít, když datum není správné.
Zkontrolujte datum pomocí
date
Pokud je špatně nakonfigurován, proveďte následující pro nastavení automatické synchronizace časového pásma a data.
apt-get install ntp ntpdate && service ntp stop
dpkg-reconfigure tzdata
ntpdate-debian
service ntp start