На этот вопрос уже есть ответ здесь:
Я получаю следующую ошибку:
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?
каждый раз, когда я пытаюсь установить новое программное обеспечение, а затем я пытался остановить процесс. Итак, я ввел команду ps -A | grep apt-get 'и не получите от него ответа.
Как мне избавиться от этой блокировки?
apt-get
не единственная вещь приложения фронтенда, которая использует /var/lib/dpkg/lock
.
Вещи как Менеджер обновлений и Центр программного обеспечения, Синаптический и aptitude
, у всех есть их собственные способы взаимодействовать через интерфейс со Способными и dpkg базами данных.
Для обнаружения , что имеет его открытый можно использовать fuser
:
sudo fuser -u /var/lib/dpkg/lock
Затем если бы это безопасно уничтожить (я советовал бы, люди всегда проверяют перед использованием эти -k
флаг), можно уничтожить его и удалить lockfile.
Используя lsof <file>
, кажется, работает также.
, Например, если я имею synaptic
рабочий (живой):
$ sudo lsof /var/lib/dpkg/lock
lsof: WARNING: can't stat() tmpfs file system /cow
Output information may be incomplete.
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/999/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
synaptic 20942 root 10uW REG 0,18 0 39610 /var/lib/dpkg/lock
Тогда я знаю, что synaptic
с PID 20942 то, что открыло файл блокировки, блокируя другие программы управления пакетом.