Виконуючи кроки 2-5 у процедурі усунення несправностей менеджера пакунків, зазвичай це рішення вирішується.
На кроці 2 вимкніть всі ваші PPA. Ви можете зняти прапорець з усіма ними в джерелах програм так само, як ви знімете лише одну; див. Як відключити певний PPA? . Ви можете їх знову ввімкнути пізніше.
На кроці 3 закрийте будь-які відкриті програми. Напевно, безпечно тримати ваш веб-браузер відкритим, щоб ви мали свої вказівки перед собою. Але особливо важливо переконатися, що будь-які менеджери пакунків не працюють . Сюди входять Центр програмного забезпечення, Оновлення програмного забезпечення (Менеджер оновлень у старих версіях 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» - особливо Марк Rijckenberg --is ліцензована CC-BY SA-3.0 ., Що дозволяє включити сюди з належною атрибуцією)
Деякі з цих команд намагаються вирішити проблему (а також можуть відображати діагностичну інформацію); інші показують цінну інформацію про проблему, яку ви можете включити у своє запитання або іншим чином надати комусь, хто допомагає. (Або, в залежності від ваших навичок, може дозволити Вам діагностувати і вирішити її.)
Часто це виправляється, але коли цього немає, він часто дає достатньо інформації, щоб виправити це.
Не потрібно вручну вводити ці команди; ви можете їх скопіювати та вставити. Однак я рекомендую вставляти та запускати кожен окремо. Це дозволяє зрозуміти, який вихід з яких команд.