Ubuntu 20.04 / 18.04以前のバージョンでupdateコマンドを実行していて、リリースファイルが特定の期間無効であるというエラーが発生し始めた場合は、次の解決策があります。
このエラーは、システム時刻が現在の地理的な場所またはタイムサーバーと同期されないために表示されます。簡単に言うと、システムの日時が正しくないため、リモートリポジトリサーバーは、リリースが特定の期間、マシンに対して無効であるというエラーをスローします。
Error: Reading package lists... Done E: Release file for http://security.ubuntu.com/ubuntu/dists/focal-security/InRelease is not valid yet (invalid for another 18h 32min 20s). Updates for this repository will not be applied. E: Release file for http://archive.ubuntu.com/ubuntu/dists/focal-updates/InRelease is not valid yet (invalid for another 18h 32min 19s). Updates for this repository will not be applied. E: Release file for http://archive.ubuntu.com/ubuntu/dists/focal-backports/InRelease is not valid yet (invalid for another 18h 32min 45s). Updates for this repository will not be applied.
まず、次のように入力して、現在の日付と時刻を確認します。
date
ここで、時間またはデータが正確でないことがわかった場合は、それを変更して、システム実行のハードウェアクロックと同期します。
sudo hwclock --hctosys
上記のコマンドが機能しなかった場合は、NTPをインストールし、タイムゾーンを選択して手動で構成します。
sudo apt install ntp sudo dpkg-reconfigure tzdata
sudo service ntp restart
さて、ここでシステム更新コマンドを実行します。今度は、システムで問題が解決されていなくてもエラーは発生しません。次に、一時的な時間のチェックを保留します 動作します。これで問題は確実に解決します:
sudo apt-get -o Acquire::Check-Valid-Until=false -o Acquire::Check-Date=false update
すべてのリポジトリはある程度のデータと時間で署名されているため、最新のリリースを確認できるように、リポジトリをフェッチしているシステムが正しい時間を持っていることを確認する必要があります。システムが過去のものである場合、この不一致により問題が発生します。