Поиск по сайту:

Исправление «Подпроцесс /usr/bin/dpkg вернул код ошибки (1)».


Нередко можно столкнуться с проблемой неработающих пакетов в Ubuntu и других дистрибутивах на основе Debian. Иногда при обновлении системы или установке пакета программного обеспечения вы можете столкнуться с ошибкой «Подпроцесс /usr/bin/dpkg возвратил код ошибки».

Ключевая фраза в этой ошибке — /usr/bin/dpkg, которая указывает на установщик пакета dpkg, используемый в Linux. Установщик пакетов управляет программным обеспечением, обновлениями и зависимостями. Если он поврежден, любая попытка установить новое программное обеспечение может вызвать это сообщение об ошибке.

Например, некоторое время назад я попытался обновиться до Ubuntu 22.04 и столкнулся с ошибкой dpkg, как показано ниже.

Errors were encountered while processing:
google-chrome-stable
E: Sub-process /usr/bin/dpkg returned an error code (1)

Это указывает на то, что пакет google-chrome-stable либо сломан, либо поврежден. Есть несколько обходных путей этой проблемы, поэтому не сдавайтесь и не выбрасывайте свою систему.

Исправление Подпроцесс /usr/bin/dpkg вернул код ошибки (1)

Давайте решим проблему с этой ошибкой сломанного пакета. Я познакомлю вас с несколькими методами, начиная с самых простых. Эти начальные шаги просты и не требуют особых усилий.

Способ 1: перенастройка базы данных пакетов dpkg

Одной из причин этой ошибки является поврежденная база данных пакетов dpkg. Это может быть вызвано внезапным прерыванием установки программного пакета. Перенастройка базы данных — один из способов решения этой проблемы.

Для этого просто выполните команду:

sudo dpkg --configure -a

Это переконфигурирует распакованные пакеты, которые не были установлены в процессе установки.

Способ 2: принудительная установка проблемного пакета

Иногда во время установки пакетов программного обеспечения могут возникать ошибки. В этом случае вы можете принудительно установить пакет, используя опцию -f, как показано.

sudo apt install -f
OR
sudo apt install --fix-broken

Опция -f и --fix-broken могут взаимозаменяемо использоваться для исправления сломанных зависимостей, возникающих в результате прерванной загрузки пакета или загрузки кэшированного пакета.

Способ 3. Удалите или очистите плохой или поврежденный пакет программного обеспечения.

Если первые два решения не помогли устранить проблему, вы можете удалить или очистить проблемный пакет программного обеспечения, как показано.

sudo apt remove --purge package_name

Например, в моем случае очистка пакета Google Chrome устранила проблему.

sudo apt remove --purge google-chrome-stable

Затем вызовите приведенные ниже команды, чтобы удалить все старые, неиспользуемые и ненужные пакеты, что также освободит место на вашем жестком диске.

sudo apt clean
sudo apt autoremove

Способ 4: удалить все файлы, связанные с пакетом

Наконец, вы можете вручную удалить все файлы, связанные с проблемным пакетом. Сначала вам нужно найти эти файлы, которые расположены в каталоге /var/lib/dpkg/info, как показано.

sudo ls -l /var/lib/dpkg/info | grep -i package_name

После вывода списка файлов вы можете переместить их в каталог /tmp, как показано ниже.

sudo mv /var/lib/dpkg/info/package-name.* /tmp

Альтернативно вы можете использовать команду rm для удаления файлов вручную.

sudo rm -r /var/lib/dpkg/info/package-name.*

Наконец, обновите списки пакетов, как показано:

sudo apt update

После этого вы можете попробовать еще раз, переустановив пакет программного обеспечения.

Заключение

Этот тип ошибки dpkg указывает на проблему с установщиком пакета, обычно вызванную прерыванием процесса установки или повреждением базы данных dpkg.

Любое из вышеупомянутых решений должно исправить эту ошибку. Если вы зашли так далеко, то мы надеемся, что проблема была успешно решена и вы смогли переустановить пакет программного обеспечения.

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