Ошибка при выполнении apt: Unable to acquire the dpkg lock /var/lib/dpkg/lock. Linux статьи
Написать статью
Войдите, чтобы писать статьи

Ошибка при выполнении apt: Unable to acquire the dpkg lock /var/lib/dpkg/lock

27

Ошибка dpkg lock

Описание проблемы. Ошибка

При выполнении в Ubuntu команды вида:

sudo apt install someprogram

в терминале появляется ошибка:

E: Не удалось получить доступ к файлу блокировки /var/lib/dpkg/lock-frontend - open (11: Ресурс временно недоступен)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

Ошибка может появляться не только при выполнении apt install, но и при любых других действиях с apt или 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?
E: Could not get lock /var/lib/apt/lists/lock – open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/
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-get (apt) не может получить доступ к файлу блокировки /var/lib/dpkg/lock*. Данный файл используется, чтобы запретить одновременное выполнение операций, связанных с управлением пакетами в системе, так как при одновременном изменении данных о пакетах будет нарушена целостность «пакетной базы».

Обычно существует две основные причины появления, описанных выше ошибок:

  1. В данный момент уже выполняется экземпляр программы apt-get (apt).
  2. Предыдущий вызов apt-get (apt) завершился некорректно.

Способ первый

Сначала нужно проверить, что уже не запущен другой экземпляр программы apt-get (apt). Выполним следующую команду, чтобы проверить есть ли apt в списке запущенных процессов:

ps aux | grep -i apt

Вывод команды может быть следующим:

root 9425 0.0 0.0 79516 3752 pts/1 S+ 10:31 0:00 sudo apt-get install inkscape
pingvin+ 9456 0.0 0.0 38892 944 pts/0 S+ 10:32 0:00 grep --color=auto -i apt

dpkg lock завершение apt

В первой строке мы видим, что уже есть работающий экземпляр программы apt-get, который имеет PID (идентификатор) 9425. Вторая строка относится к нашей команде grep, которую мы запустили с аргументом apt, поэтому она вывела саму себя. Итак, нас интересует только первая строка.

Если вы уверены, что не запускали программу apt-get сами, или она не запущена в фоновом режиме, например, выполняется автоматическое обновление системы, то нужно принудительно завершить ее выполнение. Для этого воспользуемся командой kill −9. Команде нужно указать числовой идентификатор процесса. В нашем случае это 9425. Выполняем команду:

sudo kill -9 9425

После выполнения данной команды, процесс с идентификатором 9425 завершится.

Можно воспользоваться еще одним простым способом — это завершить все экземпляры программ apt и apt-get сразу. Для этого можно выполнить команду:

sudo killall apt apt-get

Способ второй

Если первый способ вам не помог, то рассмотрим еще один способ решения проблемы. Обычно он используется, когда нет работающих экземпляров программ apt или apt-get, а значит предыдущее их выполнение завершилось аварийно, и файлы блокировки остались закрытыми.

Нам нужно удалить все файлы блокировки. Для этого выполняем команды:

sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo rm /var/lib/dpkg/lock-frontend

Если при выполнении каких-нибудь из этих команд появится сообщение: rm: невозможно удалить ’/var/../lock’: Нет такого файла или каталога, это нормально, не обращайте на него внимания.

После этого нужно выполнить переконфигурацию (донастройку) пакетов:

sudo dpkg --configure -a

Заключение

Мы рассмотрели два способа решения ошибок, связанных с доступом к файлу блокировки dpkg. Как правило, эти способы помогают. Если у вас остались какие-либо вопросы, оставляйте их в комментариях.

Лайков: +3
войдите, чтобы ставить лайки
27
  • Опубликовано: 10.02.2019

Комментарии

Никоай
10.02.2019
14:46
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+2
войдите, чтобы ставить лайки
fuser -vki /var/lib/dpkg/lock
VadimAndy
Активный пользователь
Активный
15.02.2019
21:08
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
эта ошибка возникает, когда когда запущен графический менеджер пакетов - скажем synaptic && после этого мы для чего-то еще используем apt. разумеется, чтобы выполнить хоть один из двух процессов система выберет наиболее приоритетный из них.если такой выбор невозможен, то для одного из пакетных менеджеров каталог будет заблокирован, так как в него скачивается софт из оф реп
Василий
17.02.2019
22:43
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийVadimAndyРодительский комментарий
+1
войдите, чтобы ставить лайки
Не всегда: бывает и на "пустом месте" возникает, не без причин, понятное дело.
VadimAndy
Активный пользователь
Активный
18.02.2019
06:55
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийВасилийРодительский комментарий
+1
войдите, чтобы ставить лайки
lock - это отказ в доступе, в связи с недостаточностью прав или по причине занятости менеджера пакетов.Если права одинаковые, то тогда приоритет отдается первому запросу на выполнение. говоря проще, система просто не может скачать софт из реп, ибо каталог, куда он прилетает, попросту заблокирован /занят другим менеджером пакетов.
Irina
11.07.2019
18:11
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Не помогло. В запущенных процессах нет, после удаления фаилов блокировок и переконфигурации все равно вылезает вопрос Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
VadimAndy
Активный пользователь
Активный
11.07.2019
20:28
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийIrinaРодительский комментарий
+1
войдите, чтобы ставить лайки
вас спрашивают права админа на выполнение операции, а еще это - намек, что ненужно лезть в каталог, где уже работает root-пользователь
Василий
12.07.2019
10:05
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийIrinaРодительский комментарий
+1
войдите, чтобы ставить лайки
unattended-upgrades - переконфиг(было?), или удали его нахфиг совсем(ну если десктоп). Что за система то(это, основной вопрос)?
SHamil
18.08.2019
13:55
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Помогло удаление lists в var/lib/apt через sudo rm -rf lists
Ильмира
30.08.2019
09:38
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+2
войдите, чтобы ставить лайки
Спасибо! Помог второй вариант
Сергей
26.11.2019
17:28
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Пишу sudo rm /var/lib/apt/lists/lock, а в ответ получаю Name or service not known

Хотя пишу все точно правильно
Frol
01.04.2020
11:14
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
sudo dpkg --configure -a помогла сразу
витяй
22.04.2020
15:56
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
apt install get
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
Андрей
24.05.2020
18:35
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийвитяйРодительский комментарий
+1
войдите, чтобы ставить лайки
apt install
Евгений
10.05.2020
03:39
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Все просто. Измените сервер на Main в настройках Software Update
brigadir
31.05.2020
09:35
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Большое спасибо 2 вариант меня спас.
fain983
02.06.2020
22:48
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Спасибо а то на чистый кали не могу установить git
User
30.06.2020
10:37
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
каждый раз новая проблема на пустом месте,linux для мазохистов это факт.
User
30.06.2020
14:13
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo rm /var/lib/dpkg/lock-frontend
это только и помогло
Wolzhanka
23.08.2020
23:02
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Спасибо добры человек, помогло!
sham
05.12.2020
19:14
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
второй помог, спасибо
Ромко
07.12.2020
15:42
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Второй способ помог, благодарю.
neon
18.04.2021
14:36
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Спасибо большое, помогло второе решение
Harry
27.04.2021
22:18
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
у меня вот что пишет(( подскажете как это понимать?

ps aux | grep -i apt
root 7454 0.0 0.0 17460 1100 pts/7 S+ 22:10 0:00 grep --color=auto -i apt
root 20129 0.0 0.0 60116 4088 ? S 19:47 0:00 sudo apt upgrade
root 20130 0.1 1.2 159040 97680 ? S 19:47 0:08 apt upgrade
root 21075 0.0 0.3 50580 25516 pts/6 Ds+ 21:54 0:00 /usr/bin/dpkg --status-fd 63 --no-triggers --unpack --auto-deconfigure --recursive /tmp/apt-dpkg-insta
ll-dSaiqt
Nurlan
16.05.2021
14:10
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Спасибо! Помогло!
Дмитрий
22.07.2021
13:08
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
sudo dpkg --configure -a
dpkg: ошибка: unable to access the dpkg database directory /var/lib/dpkg: Нет такого файла или каталога

А что с этим делать?
МегаБуль
07.10.2021
21:43
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Второй вариант сработал. Благодарю!
Ветер
07.07.2022
09:45
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Когда я делаю "sudo dpkg --configure -a", мне пишет что dpkg frontend заблокирована другим процессом

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила