Ubuntu проверка пакетов на ошибки

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

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

Как исправить у вас зафиксированы сломанные пакеты?

1. Обновите списки пакетов

Возможно вам не удалось установить нужные пакеты потому что списки репозиториев устарели, и там ещё не было нужных пакетов. Для обновления списка пакетов выполните:

sudo apt update --fix-missing

2. Установите битые пакеты

После обновления списка пакетов из репозиториев может помочь установка битых пакетов. Этот шаг поможет особенно если вы устанавливали пакет с помощью dpkg и теперь нужно доустановить его зависимости с помощью пакетного менеджера. Для этого есть специальная команда:

sudo apt install -f

3. Очистите лишние пакеты

Установке могут мешать лишние пакеты, которые больше не нужны в системе. Для их удаления выполните:

sudo apt clean

Затем:

sudo apt autoremove

Утилита отобразит список всех битых пакетов, которые не установлены, вы можете попытаться их удалить с помощью команды:

sudo dpkg --remove -force --force-remove-reinstreq имя_пакета

4. Используйте dpkg

Вместо apt вы можете использовать команду dpkg чтобы посмотреть какие пакеты вызывают проблему. Просто выполните:

sudo dpkg --configure -a

Команда покажет проблемные пакеты, а потом вы сможете их удалить той же командой:

sudo dpkg --remove -force --force-remove-reinstreq имя_пакета

5. Разрешите зависимости

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

Выводы

В этой небольшой статье мы рассмотрели что делать если в вашей системе появились битые пакеты и как их исправить. Здесь решение проблемы очень сильно зависит от вашей ситуации, но здесь приведены основные варианты решения, которые должны помочь вернуть пакетный менеджер к работе. Иногда рекомендуют удалить пакет вручную из базы данных dpkg /var/lib/dpkg/status, однако лучше этого не делать и найти путь решить проблему по другому, ручное редактирование подобных файлов может создать ещё больше проблем.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

Introduction

Linux packages are compressed archives containing programs and files necessary to run them. The package distribution system is designed to be robust and simplify the application installation process.

However, a bad internet connection or misconfigured third-party installers can corrupt packages and cause problems on your system.

This article will show you how to troubleshoot and fix broken packages on Ubuntu using the available APT and DPKG tools.

How to fix broken packages in Ubuntu

Prerequisites

  • An account with sudo privileges
  • An Ubuntu system

Check for Updates

Start troubleshooting by rebuilding the list of dependencies. The --fix-missing option tells APT to ignore missing packages. The option ensures the update process is performed without APT returning an error.

sudo apt update --fix-missing
The --fix-missing option tells APT to ignore the missing packages

Force APT to Correct Missing Dependencies or Broken Packages

Missing package dependencies are a common reason for package-related errors.

1. Use apt install with the -f flag to tell APT to locate the missing packages and install them.

sudo apt install -f

APT lists the missing packages on your system.

The apt install tells APT to locate the missing packages and install them

2. Press ENTER to start the installation.

Note: If troubleshooting has led to Ubuntu needing to be reinstalled, please refer to our reinstallation guide How to Reinstall Ubuntu.

Force Reconfigure or Remove Broken Packages with DPKG

Broken packages may cause package manager configuration problems.

1. Reconfigure DPKG, the base package management system, with the following command:

sudo dpkg --configure -a

2. Check if DPKG marked some packages as needing a reinstall.

sudo dpkg -l | grep ^..R

3. If the command above returns a list of one or more packages, try removing the packages by typing:

sudo dpkg --purge --force-all [package-name]

The example below shows how to remove the corrupted vlc-plugin-base package.

Remove the corrupted vlc-plugin-base package

Warning: The dpkg --purge --force-all command removes a package even if the removal causes further dependency issues. Use the command with care.

4. After you finish troubleshooting, run the following command to clean up the system:

sudo apt clean

5. Then update the repositories again:

sudo apt update

Resolve DPKG Lock Issue

The DPKG lock error appears when trying to install a package while another process is using DPKG.

The DPKG lock error appears when trying to install a package while another process is using DPKG

However, sometimes the error occurs even if no other processes are using the package management system.

1. To fix the problem, remove the lock file manually:

sudo rm /var/lib/apt/lists/lock

2. Also, remove the lock in cache:

sudo rm /var/cache/apt/archives/lock

Deleting the lock enables you to use APT and DPKG again.

Conclusion

The article provided common ways of resolving problems caused by broken packages on Ubuntu.

For more information related to package management on Ubuntu, read:

  • How to List Installed Packages on Ubuntu
  • A Comprehensive Guide to Using Snap Packages on Ubuntu
  • How to Install Deb Files (Packages) on Ubuntu
  • Печать

Страницы: [1] 2  Все   Вниз

Тема: Какова команда для проверки целостности и наличия файлов к пакетам?  (Прочитано 16612 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
tengry

У меня не запускается воспроизведение DVD в Тотеме и MPlayer. Все кодеки вроде установлены. Вот я и хочу проверить нет ли битых файлов и недостачи. Нашел поиском совет о команде для Мандривы:
«Можно сделать так: запустить проверку всех файлов, принадлежащих установленным пакетам. Это будет долго, но зато выведет список всех нарушенных или отсутствующих файлов. Проверку запускать так:
Код
rpm -Va &> rpmv_log.txt
, желательно от root. После этого в файле «rpmv_log.txt» появится список файлов с нарушениями. За подробностями смотрите в «man rpm», раздел «Опции проверки».»

————————————————————————————————————-
А как такая команда должна выглядеть в Ubuntu? И где будет жить лог?
————————————————————————————————————-
Прошу извинить, создал тему о проблеме с воспр. в разделе Мультимедиа, но сенсеи туда вроде редко заглядывают.

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Clause

попробуй поставить libdvdcss2…


Оффлайн
tengry

Он стоит. И libdvdcss-read, -dev тоже установлены. Хочу просто проверить полный ранжир.

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Clause

Если ты ставил и никакой ошибки не выдало и сам ничего не удалял, то всё должно быть ок… для проверки недоустановленных пакетов можно использовать sudo apt-get check, но если бы у тебя поломался какой-нить пакет у тебя бы отвалился синаптик. А версия у тебя 8.10?


Оффлайн
tengry

Да, 8.10.
Так как насчёт вида той команды для Ubuntu? А то наличие возможности играть ДВД имеет принципиальное значение для вербовки новых убунтистов :-)

« Последнее редактирование: 04 Декабря 2008, 23:32:56 от tengry »

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Оффлайн
Cramen

dpkg —help
по русски-же написано!

  -C|—audit                          проверить наличие сломанных пакетов.


Оффлайн
tengry

Спасибо. Попробую. Значит надо в терминале написать:

sudo -C|—audit

« Последнее редактирование: 05 Декабря 2008, 00:13:37 от tengry »

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Оффлайн
axe

tengry, посмотри все-таки предложенный —help :)
-C|—audit значит «так или так», но не вместе же)


Оффлайн
sht0rm


Оффлайн
tengry

Спасибо, ребята! Сейчас смотрю хелп.

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Оффлайн
Петрик П`яточкін

sudo dpkg --audit

Прикольно, но эта команда исполняется у меня где-то пол-секунды и не выводит никакого результата и сообщения. Что-то сильно быстро для проверки наличия сломаных пакетов.
Аналогичная команда под офтопик — sfc -scannow занимает существенно больше времени.


Оффлайн
tengry

Петрик П`яточкін, у меня тот же эффект. Ввожу «sudo dpkg —audit», потом требуемый пароль суперпользователя и через несколько миллисекунд появляется снова строка с курсором. И никаких данных, советов и прочего. Может мы чего то недовводим? Что делать?
***
Хочется высказать сожаление по поводу отсутствия хорошего учебника для начинающих пользователей Линукса  и именно для каждого из семейств: Ubuntu, Мандрива и т.д. (чего то вроде книжек А. Левина про винду), а то всё что имеется рассчитано на специалистов ИТ (или будущих специалистов :-)) и к тому же крайне фрагментировано. Вот у меня экран рабочего стола забит инфой, вчера еще добавил 24 мБ хорошей книги Федосеева «Введение в Unix», но врядли и в ней найду решение вышеуказанной проблемы. Остаётся надеяться только на помощь коллективного разума форума. Странно что никто пока не написал такое «пособие для чайников с картинками», ведь даже в финансовом отношении это будет довольно выгодно — сейчас народ довольно активно ищет альтернативу редмодским поделиям и тираж наверняка будет огромным.

« Последнее редактирование: 06 Декабря 2008, 16:19:27 от tengry »

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Оффлайн
tengry

Ну что, никто не объяснит нашу с Петрик П`яточкін проблему?

Всё меняется, неизменны только перемены. (с) Вроде Лао Цзы.


Clause

ИМХО, Ваша проблема в том, что ищите проблему не там, то что команда ‘sudo dpkg —audit’ быстро выполняется, не значит, что она выполняется плохо, просто другой алгоритм работы нежели у тех программ, с которыми Вы сравниваете.


Оффлайн
Gena_Zakharov

Скорее всего, все пакеты были установлены как надо, целиком и полностью.

Наличие битых зависимостей можно исправить командой

sudo apt-get -f install
Кроме того, можно переустановить требуемые кодеки.
Например

sudo apt-get reinstall libdvdcss2 libdvdread3
Пока ничего больше по теме добавить не могу.

Dell Inspiron 1501
OS: Ubuntu 10.04 / Gentoo


  • Печать

Страницы: [1] 2  Все   Вверх

Если вы активный пользователь Linux, то наверняка встречались с тем, что некоторые пакеты так сказать ломаются. Это может быть вызвано по разным причинам, некорректно установленный пакет, какие-то ошибки во время установки и многое другое. Что в свою очередь может сказаться и на самом менеджере пакетов “apt-get”, и как итог, возможно что дойдет даже то того, что вы не сможете обновляться или устанавливать программное обеспечения. Данная статья поможет вам решить вопрос со сломанными пакетами в Debian / Ubuntu, а так же их производными. Так как сломанные пакеты могут возникать по разным причинам, существует несколько способов для решения этой задачи, но, не все они могут сработать, тут все зависит от конкретного случая.

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

Чиним сломанные пакеты с apt-get

Первый вариант, который может помочь починить сломанные пакеты имеется в самом менеджере пакетов apt, и для починки сломанных пакетов достаточно ввести две команды:

sudo apt-get update --fix-missing
sudo apt-get install -f

сломанные пакеты в Debian Ubuntu 1

Этот способ поможет для решения уже установленных в вашей системе пакетов, который по каким то причинам сломались. После выполнения первой команды необходимо убедиться, что она исправила ошибки, а затем переходить к введению второй команды. Возможно, что для исправления сломанных пакетов понадобиться несколько минут:

Чиним сломанные пакеты с apt-get и dpkg

Но, что делать если пакет сломался во время установки? Можно попробовать выполнить команды из первого примера, если они не сработают, переходим к использованию apt-get и dpkg, для этого первым делом используем dpkg для настройки пакетов. А затем выполняем очистку apt-get:

sudo dpkg --configure -a
sudo apt-get clean
sudo apt-get update

сломанные пакеты в Debian Ubuntu 2

В некоторых ситуациях может понадобиться удалить файл блокировки, после удаления файла блокировки, снова выполните предыдущие команды:

sudo rm /var/lib/apt/lists/lock

Принудительное удаление пакета с помощью apt-get и dpkg

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

sudo apt-get remove и название пакета

Если же вам не удалось удалить пакет, переходим к кардинальным мерам, для принудительного пакеты введите команду:

sudo dpkg --remove --force-remove-reinstreq и название пакеты

Затем выполните очистку и обновление пакетов:

sudo apt-get clean && sudo apt-get update

Заключение

Если вы не знаете про менеджеры пакетов apt-get и dpkg, на WIKI имеется статьи, первая про apt, вторая статья про dpkg. В редких ситуациях, выше приведенных мер может быть недостаточно для исправления сломанных пакетов. В этом случае, может понадобиться ручная сборка и удаление сломанных пакетов, правда, имеется риск повредить работоспособность всей системы, что в свою очередь может вывести ее из строя. В этом случае, если вы делали резервные копии вашей системы можно откатиться работоспособной версии системы. Сделать резервную копию вашей системы можно при помощи Timeshift или Deja Dup, последняя имеется в дистрибутиве Ubuntu. Но, чаще всего удается отделаться малой кровью когда появляются сломанные пакеты, и выше приведенных мер достаточно для исправления сломанных пактов.

А на этом сегодня все. Надеюсь данная статья будет вам полезна.
Журнал Cyber-X

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

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

Что такое сломанные пакеты?

Когда вы устанавливаете новый пакет в Linux, менеджер пакетов вашей системы отвечает за весь процесс установки. Эти менеджеры пакетов имеют встроенные методы для обработки исключений и ошибок. Но иногда, в случае непредвиденных проблем, установка останавливается и не устанавливается полный пакет. Такие пакеты в Linux называются сломанными пакетами.

Менеджеры пакетов, такие как Apt, не разрешают дальнейшую установку пакетов, если в системе обнаружен неработающий пакет. В такой ситуации ремонт сломанных пакетов – единственный выбор.

Как найти и исправить сломанные пакеты

Каждый менеджер пакетов обрабатывает разные типы пакетов. Например, DNF и Yum работают с RedHat Package Manager (RPM) для загрузки и установки пакетов RPM. Точно так же Apt действует как оболочка внешнего интерфейса для базового программного обеспечения dpkg в дистрибутивах на основе Debian.

Переустановка битых пакетов в Debian

Apt – это менеджер пакетов по умолчанию, который предустановлен в каждом дистрибутиве на основе Debian. Помимо Apt, пользователи Debian также могут загружать и устанавливать пакеты вручную с помощью dpkg .

Чтобы исправить сломанные пакеты в дистрибутивах на основе Debian с помощью Apt:

  1. Откройте свой терминал, нажав Ctrl + Alt + T на клавиатуре, и введите:
     sudo apt --fix-missing update
  2. Обновите пакеты в вашей системе:
     sudo apt update
  3. Теперь принудительно установите поврежденные пакеты с помощью флага -f . Apt автоматически найдет сломанные пакеты в вашей системе и переустановит их из официального репозитория.
     sudo apt install -f

Если вышеупомянутые шаги не работают для вас, вы можете попробовать решить проблему с помощью dpkg.

  1. Заставьте dpkg перенастроить все ожидающие пакеты, которые уже распакованы, но нуждаются в настройке. Флаг -a в команде означает Все .
     sudo dpkg --configure -a
  2. Соедините grep с dpkg, чтобы получить список всех пакетов, помеченных dpkg как обязательные .
     sudo dpkg -l | grep ^..r
  3. Используйте флаг –remove, чтобы удалить все поврежденные пакеты.
     sudo dpkg --remove --force-remove-reinstreq
  4. Очистите кеш с помощью Apt clean.
     sudo apt clean
  5. Обновите системные пакеты, используя следующую команду.
     sudo apt update

В Fedora / CentOS

Хотя Yum и Dnf отлично подходят для управления сломанными пакетами, иногда возникают проблемы, поскольку в системе Linux установлены тысячи пакетов. В таких ситуациях вы можете использовать RPM (базовый менеджер пакетов для Fedora и CentOS), чтобы быстро исправить такие проблемы.

  1. Проверьте все пакеты в вашей системе с помощью флага -V .
     sudo rpm -Va
  2. Вы увидите длинный список, содержащий все пакеты, установленные в вашей системе.
  3. Переустановите пакет, который, по вашему мнению, может вызывать неисправность пакета.
     sudo dnf --refresh reinstall packagename

Вышеупомянутые шаги очень неудобны – определить, какой пакет вызывает проблему из списка сотен, утомительно. Хотя RPM – мощный менеджер пакетов, и вы редко будете сталкиваться с такими проблемами, знание того, как исправить эти проблемы, по-прежнему важно, если вы столкнетесь с подобной ситуацией в ближайшем будущем.

Менеджеры пакетов в Linux способны решать большинство проблем, включая неудачные установки. Но иногда возникают различные проблемы, которые можно решить только интуитивно. Решение для исправления поврежденных пакетов состоит из нескольких шагов – определение поврежденного пакета, его переустановка и обновление списка пакетов системы.

В Интернете доступно бесчисленное количество дистрибутивов Linux, которые стоит попробовать, но в глубине души каждый из них имеет аналогичную основу. Среды рабочего стола выделяют каждый дистрибутив, обеспечивая уникальный пользовательский интерфейс. Выбор идеальной среды рабочего стола, которая соответствует вашему вкусу, должен быть вашим приоритетом, если вы, наконец, решили продолжить работу с Linux.

Понравилась статья? Поделить с друзьями:
  • Ubuntu проверить разделы на ошибки
  • Ubuntu проверить диск на ошибки при загрузке
  • Ubuntu проверить диск на ошибки и битые сектора
  • Ubuntu посмотреть логи ошибок
  • Ubuntu ошибки ядра