【WSL2】sudo apt update で Yarn の GPG エラーが出たときの原因と解決方法

みなさん、こんにちは。

私はWindows 11 で WSL2(Ubuntu 22.04)をほぼ毎日ガシガシ使っているのですが、先日 sudo apt update を実行したところ、突如としてこんなエラーに遭遇しました。

W: 署名照合中にエラーが発生しました。リポジトリは更新されず、過去のインデックスファイルが使われます。
GPG エラー: https://dl.yarnpkg.com/debian stable InRelease: 公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY 62D54FD4003F6525
W: https://dl.yarnpkg.com/debian/dists/stable/InRelease の取得に失敗しました

「えっ、Yarn? 使ってないはずなんだけど……いつ入れたっけ?」と、一瞬固まってしまいました。正直、Yarnが具体的に何をするものなのかも、記憶がふわっとしています。

私と同じように「心当たりがないのにYarnのエラーでアップデートが止まって困っている」という方に向けて、原因と解決策を今日はお話します。

 


 

なぜ使っていない「Yarn」のエラーが出るのか?

 

結論から言うと、「昔 Node.js をインストールしたとき、ついでに Yarn のリポジトリも追加されていた」可能性が非常に高いです。

特に WSL で Ubuntu 20.04 や 22.04 を長く使っている方は、以下のような流れに心当たりがあるはずです。

  1. Ubuntu 標準の Node.js が物凄く古かったので、NodeSource のスクリプトなどで更新した。
  2. その際、参考にしていた技術記事に「ついでに Yarn も入れよう!」という手順が含まれていた。
  3. そのまま Yarn は一度も使わずに放置。
  4. 数年経った今、Yarn の GPG キー(署名)が更新期限切れになり、APT がエラーを吐くようになった。

つまり、自覚がなくても「設定だけがひっそりと残っていた」というわけですね。

 


 

本当に Yarn を使っていないか確認しよう

 

念のため、削除する前に自分が Yarn を使っているかどうかを確認しておきます。

① インストールされているか確認

まずは、コマンドが存在するかチェックします。

which yarn
yarn --version

私の場合、古い Yarn Classic (v1.x) である 1.22.22/usr/bin/yarn に居座っていました。

② プロジェクトで使っていないか確認

自分のホームディレクトリ以下に、Yarn の管理ファイル yarn.lock がないか探してみます。

find ~ -name yarn.lock 2>/dev/null

私の場合、以下のようなパスがヒットしました。

~/.vscode-server/extensions/.../node_modules/.../yarn.lock

しかし、これは VS Code の拡張機能が内部で勝手に使っているだけなので、私の環境の Yarn とは無関係です。ということは使っていないことが確定!

 


 

使っていないなら「削除」が一番スッキリ!

 

私はターミナル型AIであるGitHub Copilot CLIを使っています。しかし、最近のターミナル型AIツール(Claude Code、Gemini CLI、 GitHub Copilot CLI など)は、最新のNode.js さえあれば動きます。そのため、メンテナンスモードに入っている古い Yarn v1 はもう不要です。

今後も使う予定がないので、以下の 3 ステップでサクッと整理しましょう。

# 1. Yarn 本体を削除
sudo apt remove yarn

# 2. リポジトリの設定ファイルを削除
sudo rm /etc/apt/sources.list.d/yarn.list

# 3. アップデートを再試行
sudo apt update

削除後、エラーは出なくなりました!これでもう安心です。

 


 

【どうしても使いたい人向け】GPG キーの更新方法

 

「いや、私はこれからも Yarn を使いたいんだ!」という方は、以下のコマンドで新しい GPG キーを登録し直せば解決します。

# 新しい形式でキーを登録
curl -fsSL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo gpg --dearmor -o /usr/share/keyrings/yarnkey.gpg

# source.list の書き換え
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt update

※ただし、Yarn v1 はすでにメンテナンスモードです。特別な理由がなければ、削除するか corepack を使った管理へ移行するのがおすすめです。

 


 

昔の設定を整理して快適な WSL2 環境を!

 

WSL2 の Ubuntu 環境は長く使うほど「昔入れた設定の残骸」が溜まりがちです。

  • Yarn を使っていない → 削除してスッキリ!
  • Yarn を使っている → GPG キーを再登録
  • VS Code 内のファイル → 気にしなくて大丈夫

今回のようなエラーは、環境を整理する良いきっかけになりますね。

 

本日も最後までお読みいただきありがとうございました。

それでは、よい WSL2 ライフを!

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール