アプリケーションをインストールしようとすると、「他のアプリケーションが現在yumロックを保持しています。終了するのを待っています...」というメッセージが頻繁に表示され、yumを手動で終了する必要があります。これをどのように避けることができますか? yumを簡単にロック解除する方法はありますか?
yumインスタンスが1つだけ実行されているようです。他のパッケージマネージャ(apt-get、pacman)と同じですか?
答え1
私はこれがPackageKitのためだと思います。 PackageKitをチェックして無効にする必要があります(CentOS 7に同梱されているとします。そうでなければ、およびsystemctl
使用できます)(説明で述べたようにサービス名ではありません)。service
chkconfig
packagekit
packagekitd
systemctl stop packagekit
systemctl disable packagekit
別の方法(CentOS / RHEL 6、Fedora 19以下)は/etc/yum/pluginconf.d/refresh-packagekit.conf
テキストエディタでenabled=1
開きますenabled=0
。
または完全に削除することもできます。
yum remove PackageKit
答え2
問題を解決するには:
cd /var/run
rm -f yum.pid
後でyumを更新することもできます。
yum -y update
答え3
次の2つの簡単な手順でyumのロックを解除できます。
1)ps aux | grep yum
どのプロセスがyumをロックしているかを確認するには、実行します。 2)kill <process_id>
プロセスを終了します。
もう一度実行してps aux | grep yum
プロセスが終了したことを確認してください。 Yumはプロセスを終了するとロックが解除されます。
答え4
systemctl disable packagekit
十分ではない。 packagekitは再起動時に実行されます。mask
コマンドの代わりにコマンドを使用してくださいdisable
。
[root@localhost yum.repos.d]# systemctl mask packagekit
Created symlink from /etc/systemd/system/packagekit.service to /dev/null.
その後、再起動すると見ることができます...
[sri@localhost ~]$ systemctl status packagekit
● packagekit.service
Loaded: masked (/dev/null; bad)
Active: inactive (dead)