PC

WSL2 Ubuntu20.04でapt-get updateが失敗する

WSL2 Ubuntu20.04でapt-get updateが失敗してしまいました。

どうやら時刻ずれが原因だったようで、対処方法を紹介します。

まずエラー内容と修正方法の結論です。

エラー内容

$ sudo apt update
Hit:1 http://archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Get:3 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:4 http://archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Reading package lists... Done
E: Release file for http://security.ubuntu.com/ubuntu/dists/focal-security/InRelease is not valid yet (invalid for another 7h 52min 6s). 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 7h 52min 28s). 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 7h 53min 20s). Updates for this repository will not be applied.

修正方法

$ sudo hwclock -s

エラー内容

冒頭にエラー内容を載せていますが、apt-get updateコマンドを実行すると、~~~ is not valid yet (invalid for ...)というエラーが発生してしまいます。

システムの時間がずれている?と思い、dateコマンドで調べると案の定システム時間と現実時間がずれていました。

# システムの時間を調べる
$ date
Sat Jul 24 15:04:54 JST 2021

この時間を修正する必要がありそうです。

修正方法

WSLで困ったらとりあえずGItHubのissueに行きます。

やはり、issueが立っていました。(GitHub issue: https://github.com/microsoft/WSL/issues/4245

ここからは、上記のページで述べられていることをまとめます。

原因

詳しい原因はわかっていないようですが、この問題が起きる状況はわかっているようです。

  1. WSL2の起動
  2. パソコンをスリープ状態へ
  3. パソコンのスリープを解除
  4. WSL2の時間がずれている

たしかに自分もスリープ後にこのエラーに出会いました、、、

解決策1:hwclockコマンドの実行

解決策の一つ目は、hwclockコマンドを実行することです。

# 時刻がずれている
$ date
Sat Jul 24 05:20:06 JST 2021

# 時刻の修正
$ sudo hwclock -s

# 時刻が修正されたことを確認
$ date
Sat Jul 24 14:56:25 JST 2021

これで、apt-get updateコマンドもエラーなく動くはずです。

解決策2:WSLの再起動

もう一つの解決策として紹介されているのが、WSLの再起動です。

PowerShellを開いて、wsl --shutdownを実行しましょう。

その後、WSLの起動すれば修正されているはずです。

まとめ

時刻ズレが原因でapt-get updateコマンドが失敗するときの対処方法を紹介しました。

個人的には再起動するのはめんどくさいので、解決策1のhwclockコマンドの利用がおすすめです。

  • この記事を書いた人

たかけの夫。IT系コンサルティング会社に勤務し、主にクラウドや機械学習に関するコンサルティング業務を行う三十路男。IT技術・投資に興味を持ち、家族と楽に人生を楽しみたい人。

-PC
-,