解決策 1:
期限切れのリポジトリ キーとその ID を見つけるには、apt-key
を使用します。 次のように:
LANG=C apt-key list | grep expired
次のような結果が得られます:
pub 4096R/BE1DB1F1 2011-03-29 [expired: 2014-03-28]
キー ID は /
の後のビットです。 すなわち BE1DB1F1
キーを更新するには、実行します
sudo apt-key adv --recv-keys --keyserver keys.gnupg.net BE1DB1F1
注: キーの更新は明らかにしません パッケージメンテナが (まだ) 新しいキーをアップロードしていない場合に機能します。その場合、メンテナに連絡したり、ディストリビューションにバグを報告したりする以外にできることはほとんどありません。
期限切れのすべてのキーを更新するための 1 つのライナー: (@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
解決策 2:
新しいキーを取得して追加する必要があります。その時点で、apt はそれを検出し、文句を言いません。これは通常は発生しないはずですが、発生することがあります。本当に必要なのは、追加する必要があるキーの 16 進コードを知ることです。それができたら、そこからかなり下り坂になります。
いくつかの例:
-
バックポート用のキーの追加:最初の数行が目的ですが、必要なキーが必要です。
-
キーの追加 ala Ubuntu
解決策 3:
SecureAPT に関する Debian Wiki で、non-us
を含む行を削除する必要があることがわかりました。 /etc/apt/sources.list から。
私は実際にそれを行い、うまくいきました.
解決策 4:
同様のエラーが発生しましたが、問題はシステム時間にありました。その年は1961年でした:)
システムの日付/時刻を修正した後、プロなしで更新できました
解決策 5:
日付が正しくない場合にも発生する可能性があります。
で日付を確認してください
date
設定が間違っている場合は、次の手順に従ってタイムゾーンと日付の自動同期を設定してください。
apt-get install ntp ntpdate && service ntp stop
dpkg-reconfigure tzdata
ntpdate-debian
service ntp start