Выполнение шагов 2-5 процедуры устранения неполадок диспетчера пакетов обычно решает эту проблему.
На шаге 2 отключите все ваши PPA. Вы можете снять все флажки в Software Sources так же, как и один; см. Как отключить конкретный PPA? , Вы можете включить их позже.
На шаге 3 закройте все открытые программы, которые вы можете. Вероятно, безопасно держать ваш веб-браузер открытым, чтобы ваши инструкции были перед вами. Но особенно важно убедиться, что менеджеры пакетов не запущены . Это включает Центр программного обеспечения, Software Updater (Менеджер обновлений в более старых версиях Ubuntu), Synaptic и Gdebi. Она также включает в себя утилиты управления пакетами из командной строки , как apt-get
, dpkg
и aptitude
.
Обратите внимание, что если другие пользователи вошли в систему одновременно, они должны выйти из системы, если это возможно.
Для шага 4 откройте окно терминала. Один из способов сделать это, независимо от того, какую среду рабочего стола вы используете, - нажать Ctrl+ Alt+ T.
Для шага 5 выполните эти команды в окне терминала:
ubuntu-support-status
sudo grep -R proxy /etc/apt/*
grep proxy /etc/environment
echo $http_proxy
echo $ftp_proxy
grep proxy /etc/bash.bashrc
grep proxy ~/.bashrc
cat /etc/apt/apt.conf
sudo fuser -vvv /var/lib/dpkg/lock
sudo fuser -vvv /var/cache/apt/archives/lock
cat /etc/lsb-release
uname -a
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo cp -arf /var/lib/dpkg /var/lib/dpkg.backup
sudo mv /var/lib/dpkg/status /var/lib/dpkg/status-bad
sudo cp /var/lib/dpkg/status-old /var/lib/dpkg/status || sudo cp /var/backups/apt.extended_states.0 /var/lib/dpkg/status
sudo mv /var/lib/dpkg/available /var/lib/dpkg/available-bad
sudo cp /var/lib/dpkg/available-old /var/lib/dpkg/available
sudo rm -rf /var/lib/dpkg/updates/*
sudo rm -rf /var/lib/apt/lists
sudo rm /var/cache/apt/*.bin
sudo mkdir /var/lib/apt/lists
sudo mkdir /var/lib/apt/lists/partial
LANG=C;sudo apt-get clean
LANG=C;sudo apt-get autoclean
LANG=C;sudo apt-get --purge autoremove
LANG=C;sudo apt-get --fix-missing update -o APT::Cache-Limit=100000000
sudo dpkg --configure -a
sudo dpkg --clear-avail
LANG=C;sudo apt-get -f install
LANG=C;sudo apt-get --fix-missing install
LANG=C;sudo apt-get update -o APT::Cache-Limit=100000000 && sudo apt-get dist-upgrade
find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; cat -n "$1"' _ '{}' \;
Я дословно скопировал это из PackageManagementTroubleshoootingProcedure 2 марта 2014 года. Эти команды развивались в прошлом, и рекомендуемые команды в этой статье могут быть изменены или расширены в будущем . Таким образом, вы можете работать с шага 5 там . (Эта статья, созданная / отредактированная « Сторонниками вики-документации по Ubuntu» - особенно Марком Рийкенбергом - лицензирована CC-BY-SA 3.0 , что позволяет включать ее здесь с надлежащей атрибуцией.)
Некоторые из этих команд пытаются решить проблему (а также могут отображать диагностическую информацию); другие отображают ценную информацию о проблеме, которую вы можете включить в свой вопрос или иным образом предоставить кому-то, кто вам помогает. (Или, в зависимости от ваших навыков, вы сможете диагностировать и решать проблемы.)
Часто это исправляет, но когда этого не происходит, часто дает достаточно информации, чтобы это исправить.
Вам не нужно вводить эти команды вручную; Вы можете скопировать и вставить их. Я рекомендую вставлять и запускать каждый отдельно. Это делает более понятным, какой вывод и какие команды.