База данных dpkg заблокирована другим процессом [duplicate]

Вы также можете настроить имена меню «Приложения и места», используя файл языка. Я изменил «Приложения» на «Приложения». Это сохраняет некоторое ценное пространство.

1) Загрузите файл oneiric gnome-panel .po для вашего языка из bazaar.launchpad.net

2) Измените строку, которую вы хотите изменить в файле .po. Легче всего использовать текстовый редактор UTF-8, например gedit. Оригинал:

    #: ../gnome-panel/panel-menu-bar.c:183
    msgid "Applications"
    msgstr "Applications"

Отредактировано:

    #: ../gnome-panel/panel-menu-bar.c:183
    msgid "Applications"
    msgstr "Apps"

3) Запустите msgfmt в отредактированном файле, создав messages.mo. Переименуйте его gnome-panel-3.0.mo, измените владельца и группу на root.

4) Сделайте резервную копию файла, который мы собираемся заменить, в /usr/share/locale/?/LC_MESSAGES/gnome-panel-3.0.mo (с? Являющимся языком, который вы используете) ,

5) Замените файл в /usr/share/locale/?/LC_MESSAGES/gnome-panel-3.0.mo (используя? Язык, который вы используете), с вашим отредактированным файлом.

6) Выход из системы и авторизоваться. Или запустите killall gnome-panel.

53
задан 17 July 2015 в 14:20

8 ответов

Можно также попробовать:

sudo apt-get install -f

Исправить любые сломанные пакеты:

Fix; попытайтесь исправить систему со сломанными зависимостями. Эта опция при использовании с установкой / удалением может опускать любые пакеты, позволяющие APT выводить вероятное решение. Если пакеты указаны, они должны полностью исправить проблему. Опция иногда необходима при запуске APT в первый раз; Сам APT не разрешает существование в системе разбитых пакетов. Возможно, структура зависимостей системы может быть настолько коррумпирована, что требует ручного вмешательства (что обычно означает использование dselect(1) или dpkg --remove для устранения некоторых из повреждающих пакетов). Использование этой опции вместе с -m может привести к ошибке в некоторых ситуациях. Элемент конфигурации: APT :: Get :: Fix-Broken.
3
ответ дан 18 July 2018 в 01:58

Первый запуск:

lsof /var/lib/dpkg/lock

Затем убедитесь, что процесс не запущен:

ps cax | grep PID

Если он запущен:

kill PID #wait kill -9 PID

Убедитесь, что процесс завершен:

ps cax | grep PID

Затем удалите файл блокировки:

sudo rm /var/lib/dpkg/lock

Пусть dpkg исправляет себя:

sudo dpkg --configure -a

Вы должны после этого прекратите:)

59
ответ дан 18 July 2018 в 01:58

Вы не можете одновременно запускать несколько приложений / команд / инструментов пакетов. Иногда это означает, что в backgroung работают синаптические, apt-get или инструменты обновления пакета. Просто закройте другие инструменты пакета или дождитесь их завершения. И dpkg будет запущен.

6
ответ дан 18 July 2018 в 01:58

Это может произойти, если процесс обновления был прерван (например, вы потеряли соединение). Вы можете попробовать использовать экран как root (sudo su), чтобы вернуться в сеанс.

screen -r
0
ответ дан 18 July 2018 в 01:58

Можно также попробовать:

sudo apt-get install -f

Исправить любые сломанные пакеты:

Fix; попытайтесь исправить систему со сломанными зависимостями. Эта опция при использовании с установкой / удалением может опускать любые пакеты, позволяющие APT выводить вероятное решение. Если пакеты указаны, они должны полностью исправить проблему. Опция иногда необходима при запуске APT в первый раз; Сам APT не разрешает существование в системе разбитых пакетов. Возможно, структура зависимостей системы может быть настолько коррумпирована, что требует ручного вмешательства (что обычно означает использование dselect(1) или dpkg --remove для устранения некоторых из повреждающих пакетов). Использование этой опции вместе с -m может привести к ошибке в некоторых ситуациях. Элемент конфигурации: APT :: Get :: Fix-Broken.
3
ответ дан 24 July 2018 в 17:29

Первый запуск:

lsof /var/lib/dpkg/lock

Затем убедитесь, что процесс не запущен:

ps cax | grep PID

Если он запущен:

kill PID #wait kill -9 PID

Убедитесь, что процесс завершен:

ps cax | grep PID

Затем удалите файл блокировки:

sudo rm /var/lib/dpkg/lock

Пусть dpkg исправляет себя:

sudo dpkg --configure -a

Вы должны после этого прекратите:)

59
ответ дан 24 July 2018 в 17:29
  • 1
    Нельзя удалять блокировочные файлы вручную. Они там не просто так. Пожалуйста, используйте это только в крайнем случае. Сначала попробуйте определить и закрыть другие приложения, используя управление пакетами. – gertvdijk 6 May 2013 в 21:06
  • 2
    Если есть процесс, фактически использующий файл блокировки, вероятно, было бы лучше убить этот процесс, а не просто удалить файл блокировки. Вы должны найти способ с помощью lsof /var/lib/dpkg/lock. – Abe Voelker 27 May 2014 в 20:34
  • 3
    Сильный +1 для комментария Абэ. Никогда не удаляйте файл блокировки, не убивая все процессы, у которых есть дескрипторы открытых файлов. – Pooyan Khosravi 20 January 2015 в 10:48
  • 4
    @PooyanKosravi Это, вероятно, должен быть ваш собственный ответ, я бы вместо этого – Xen2050 20 January 2015 в 12:06
  • 5
    @ Xen2050 IMO новый ответ добавляет лишний беспорядок. Если вы считаете, что скрипт bash, который делает то же самое, автоматически можно использовать, я напишу его как еще один ответ. – Pooyan Khosravi 20 January 2015 в 12:13

Вы не можете одновременно запускать несколько приложений / команд / инструментов пакетов. Иногда это означает, что в backgroung работают синаптические, apt-get или инструменты обновления пакета. Просто закройте другие инструменты пакета или дождитесь их завершения. И dpkg будет запущен.

6
ответ дан 24 July 2018 в 17:29

Это может произойти, если процесс обновления был прерван (например, вы потеряли соединение). Вы можете попробовать использовать экран как root (sudo su), чтобы вернуться в сеанс.

screen -r
0
ответ дан 24 July 2018 в 17:29

Другие вопросы по тегам:

Похожие вопросы: