Linux でパッケージをインストールしようとした際に、以下のようなエラーが出ることがあります。
Existing lock /var/run/yum.pid: another copy is running as pid 1234.
E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 5678
これは、yum / apt がロックを取得している状態で発生するエラーです。
同時に複数のパッケージ管理プロセスを走らせないための安全機構ですが、異常終了した場合などに ロックファイルが残りっぱなし になることがあります。
あわせて読みたい


【まとめ】Linuxパッケージ管理のチートシート(yum,dnf,apt,rpmなど)
Linuxパッケージ管理の基本と主要コマンド一覧 Linuxのシステム管理では、パッケージ管理がソフトウェアのインストール、削除、更新を効率化する重要な手段です。主要な…
目次
主な原因
- 他のパッケージ管理プロセスが実行中
- 例:
yum update
やapt upgrade
が裏で動いている。
- 例:
- 前回の処理が異常終了し、ロックファイルが残っている
- yum:
/var/run/yum.pid
- apt/dpkg:
/var/lib/dpkg/lock-frontend
,/var/lib/dpkg/lock
- yum:
- 未完了の dpkg 設定が残っている
- apt 系で処理が中断されると、再設定が必要になる。
解決方法
1. 実行中のプロセスを確認する
まずは他の処理が本当に動いていないか確認します。
ps aux | grep -E "yum|apt|dpkg"
もし yum
や apt
のプロセスが動いていれば、それが終了するまで待ちましょう。
2. yum のロック解除
もし yum のプロセスが動いていないのにロックが残っている場合、ロックファイルを削除します。
sudo rm -f /var/run/yum.pid
その後、改めて yum を実行します。
sudo yum install <パッケージ名>
3. apt/dpkg のロック解除
apt の場合はロックファイルを削除します。
sudo rm -f /var/lib/dpkg/lock-frontend
sudo rm -f /var/lib/dpkg/lock
さらに dpkg の状態を修復します。
sudo dpkg --configure -a
最後にキャッシュを更新します。
sudo apt update
注意点
- 強制的にロックを削除するのは最終手段 です。
本当に別のプロセスが動いていないことを確認してから実施してください。 - プロセスが動作中にロックを削除すると、パッケージの依存関係が壊れる可能性があります。
まとめ
- yum/apt の「lock」エラーは、他の処理が動いているかロックファイル残存が原因。
- 実行中プロセスを確認し、なければ ロックファイル削除 + dpkg 再設定 を実施。
- 強制削除は最後の手段とする。
👉 これで yum/apt の「lock」問題を安全に解決できます。