在 Fedora/CentOS 等使用 yum 套件管理器的系統上,執行安裝或更新指令時,可能會遇到以下錯誤訊息:
[root@fedora10clearcase 下載]# yum install unzip
載入插件: refresh-packagekit
鎖已被用 /var/run/yum.pid: 另外的一個復制正在運行在 PID為 3117.
另外一個應用程序正在適用yum鎖;等待其退出 ... ...
這表示系統中已有另一個 yum 或 rpm 進程正在運行(例如自動更新服務 yum-updatesd 或 PackageKit),導致資料庫被鎖定,無法同時進行另一項操作。
找到錯誤訊息中提示的 PID(上例為 3117),使用 kill 指令強制結束該進程:
kill -9 3117
隨後即可重新執行 yum 指令。
若頻繁遇到此問題,通常是因為背景自動更新服務(如 yum-updatesd、PackageKit)定期檢查更新並佔用鎖。建議停用或移除這些服務,改為手動更新:
service yum-updatesd stop 並 chkconfig yum-updatesd offsystemctl stop packagekit 並 systemctl disable packagekit或直接移除套件:yum remove PackageKit。
yum/rpm 操作,避免誤殺正常進程。/var/run/yum.pid 檔案也可釋放鎖,但不建議在進程仍存活時這樣做,可能導致 RPM 資料庫損壞。