Ubuntu で apt install や apt update を実行したときに、突然赤いエラーが出て止まってしまった経験はありますか。「E: Unable to locate package」「Could not get lock」「dpkg was interrupted」——どれも初めて見ると何が起きたのか分からず焦りますが、パターンを把握しておけばほぼ確実に解決できます。
本記事では Ubuntu 24.04 LTS の Docker 公式イメージ(ubuntu:24.04)を使って apt のエラーを実際に再現し、その解決コマンドを実測で確認しました。apt 2.8.3 / dpkg 1.22.6(2026-06-13 時点)の環境で検証しています。
この記事のポイント
E: Unable to locate packageの原因はほぼ「apt update未実行」か「パッケージ名のtypo」- ロックファイルエラーは別の apt プロセスが動いていないか確認してから対処する
sudo dpkg --configure -aは dpkg 中断エラーの万能修復コマンド- Ubuntu 24.04 では apt が 2.8.3 に、sources.list が DEB822 形式(ubuntu.sources)に変わっている
目次
- 前提環境
- E: Unable to locate package(最もよく出るエラー)
- E: Could not get lock(ロックファイルエラー)
- E: dpkg was interrupted(dpkg 中断エラー)
- W: GPG error / NO_PUBKEY(GPGキーエラー)
- E: Sub-process /usr/bin/dpkg returned an error code (1)
- エラー早見表
- まとめ
前提環境
本記事のコマンドは次の環境で実測しています。
| 項目 | 値 |
|---|---|
| OS | Ubuntu 24.04.4 LTS(noble) |
| apt バージョン | 2.8.3 |
| dpkg バージョン | 1.22.6 |
| 実行環境 | Docker 公式イメージ ubuntu:24.04(2026-06-13 実測) |
注意
Ubuntu 22.04 LTS(apt 2.4.14)でも同じコマンドで解決できますが、/etc/apt/sources.list の書き方が異なります。22.04 では従来形式の sources.list、24.04 では DEB822 形式の /etc/apt/sources.list.d/ubuntu.sources が使われています。
E: Unable to locate package(最もよく出るエラー)
E: Unable to locate package <パッケージ名> は apt エラーの中で最も発生頻度が高いものです。Ubuntu 24.04 の Docker コンテナで再現しました。

①原因1:apt update を実行していない
実際に上の図を見てもわかる通り、コンテナ起動直後や OS インストール直後は、パッケージ一覧が空の状態です。この状態で apt install を実行しても「どこにもそのパッケージが見つからない」というエラーになります。
解決策はシンプルです。まず apt update を実行してパッケージ一覧を最新化します。
apt update で取得するのは「どんなパッケージが存在するか」という一覧情報(インデックス)であり、実際のパッケージはダウンロードしません。高速に完了するので、インストール前の習慣にしましょう。
②原因2:パッケージ名のtypo
パッケージ名を間違えてもまったく同じエラーが出ます。実測した例を紹介します。
ngnix(n と g が逆)は正しくは nginx です。パッケージ名は apt-cache search で確認してからインストールすると確実です。

apt-cache search <キーワード> でパッケージ名を探し、apt-cache policy <パッケージ名> でインストール候補バージョンを確認できます。ubuntu:24.04 環境では nginx 1.24.0-2ubuntu7.11 がインストール候補であることを実測で確認しました。
③原因3:リポジトリが有効になっていない
Ubuntu のデフォルトリポジトリには「main」「restricted」「universe」「multiverse」の4種類があります。Ubuntu 24.04 では universe や multiverse が最初から有効になっている場合が多いですが、カスタム環境では無効になっていることがあります。
サードパーティのソフトウェア(例: NodeSource の Node.js、Docker公式リポジトリなど)は専用のリポジトリを追加する必要があります。各ソフトウェアの公式インストールガイドに従って add-apt-repository または /etc/apt/sources.list.d/ への設定追加を行ってください。
E: Could not get lock(ロックファイルエラー)
次のようなエラーが出た場合は、ロックファイルの問題です。
手順1:別の apt プロセスが動いていないか確認する
Ubuntu のバックグラウンドで自動更新(unattended-upgrades)が動いていると、手動で apt を実行したときにロックが競合します。まず数分待って再試行するのが最も安全な対処法です。
lsof でロックを保持しているプロセスの PID を確認し、そのプロセスが終了するのを待ちます。
手順2:プロセスが存在しない場合は lock ファイルを削除する
注意
lock ファイルを削除するのは、本当に別プロセスが動いていないことを確認した後にしてください。実行中のプロセスのロックを強制削除するとパッケージデータベースが壊れることがあります。
Ubuntu 24.04 でロックファイルが存在する場所は、/var/lib/dpkg/lock(dpkg のロック)と /var/lib/apt/lists/lock(apt のリスト取得ロック)の2か所です。ubuntu:24.04 コンテナで実測したところ、どちらのファイルも正常時は 0 バイトで存在していました。

E: dpkg was interrupted(dpkg 中断エラー)
電源断や Ctrl+C でパッケージのインストール・削除が途中で中断されると、次回の apt 実行時に次のエラーが出ることがあります。
解決:sudo dpkg –configure -a を実行する
sudo dpkg --configure -a はこのエラーの特効薬です。中断された設定処理を再開し、パッケージデータベースを正常な状態に戻します。
sudo apt install -f(--fix-broken の短縮形)も合わせて実行すると、壊れた依存関係を自動修復してくれます。ubuntu:24.04 コンテナで dpkg --configure -a を実行した場合、正常環境では出力なしで即時終了しました(2026-06-13 実測)。
W: GPG error / NO_PUBKEY(GPGキーエラー)
apt update 時に次のような警告が出る場合は、リポジトリの GPG 公開鍵が未登録か期限切れになっています。
解決:GPG キーを追加する
エラーメッセージの NO_PUBKEY に続く文字列(例: ABCDEF1234567890)がキーIDです。
注意
Ubuntu 22.10 以降では apt-key は非推奨(deprecated)になっています。新しい方法は curl -fsSL <key-url> | sudo gpg --dearmor -o /etc/apt/keyrings/<name>.gpg でキーを /etc/apt/keyrings/ に保存し、sources に signed-by= を指定する形式が推奨されています。
E: Sub-process /usr/bin/dpkg returned an error code (1)
このエラーは dpkg がパッケージの設定・展開中に問題が発生したことを示します。多くの場合、エラー3(dpkg was interrupted)の修復手順で解決します。
それでも解決しない場合は、エラーメッセージの直前に出力される dpkg: error processing package <名前> のパッケージ名を特定し、そのパッケージのログ(/var/log/dpkg.log)を確認します。
エラー早見表
本記事で取り上げた5つのエラーとその解決コマンドをまとめます。

まとめ
Ubuntu の apt エラーは見た目が怖いですが、原因のパターンは限られています。
E: Unable to locate package→ まずsudo apt update。それでも出たらパッケージ名のtypoとapt-cache searchで確認E: Could not get lock→ 別プロセスが動いていないか確認してからロックファイルを削除しdpkg --configure -aE: dpkg was interrupted→sudo dpkg --configure -aで一発解決W: GPG error / NO_PUBKEY→apt-key adv --keyserverでキーを追加Sub-process dpkg returned an error code (1)→dpkg --configure -a && apt install -f
今回の検証は Ubuntu 24.04.4 LTS(noble)の Docker 公式イメージ ubuntu:24.04(apt 2.8.3 / dpkg 1.22.6)を使って 2026-06-13 に実測したものです。

Ubuntu の基本操作に慣れてきたら、VPS を借りて本番環境での運用に挑戦してみましょう。apt の使い方が身についていれば、サーバーのセットアップも格段にスムーズになります。



コメント