apt-get`を使おうとすると、このようなエラーが出ます。
E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?
どうしたら直せますか?
aptコマンドを実行する際にsudo
を忘れていると、このメッセージが表示されます。
それ以外の場合は、何か他のものがソフトウェアをインストールしたり削除したりして、その操作を行っている間にaptデータベースをロックしたというサインです。このようなことができるプログラムは
**重要:以下の方法は、システムをクラッシュさせる可能性があるため、最後の手段としてのみお試しください。まず、Faheemの回答で説明されているように、実行中のapt
またはaptitude
のインスタンスをすべてkillしてみてください。
ファイルを削除することで強制的にロックを解除することができますが、ロックを保持しているプログラムを最初に安全に終了させないと、破損やインストールの中断を引き起こす可能性があるため、お勧めできません(悪い意味で)。João氏が提供するコマンドは、ロックを保持しているプログラムを終了してからロックを解除しますが、インストールの中断からは保護されません。
sudo fuser -cuk /var/lib/dpkg/lock; sudo rm -f /var/lib/dpkg/lock
また、同じコマンドがaptキャッシュのロックにも使えます。
sudo fuser -cuk /var/cache/apt/archives/lock; sudo rm -f /var/cache/apt/archives/lock
ロックを保持できるのは1つのプログラムだけです。aptitudeやsynaptic、adeptなどのプログラムが起動していないか確認してください。synapticを開いているか、apt-getを実行している別のターミナルウィンドウを開いているか、update managerを実行しているかを確認し、どれかが実行されていれば、それを閉じてから再度試してください。
ターミナルで次のコマンドを実行して、何が実行されているかを確認してください。
ps -e | grep -e apt -e adept | grep -v grep
注:。 これで何も表示されない場合は、ターミナルで次のように入力してロックを解除します。
sudo rm /var/lib/dpkg/lock
sudo rm /var/cache/apt/archives/lock
これで、任意のパッケージをインストールできます。