Обновление Debian / Ubuntu, проблемы и тонкости

Cписок репозиториев ubuntu содержится в файле /etc/apt/sources.list

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

Команда для редактирования через консоль:

sudo gedit /etc/apt/sources.list  
или
software-properties-gtk

Путь для редактирования через веб интерфейс
Система → Администрирование → Источники приложений → Загрузить с → Другой → Выбрать лучший сервер

Либо просто пройти по адресу /etc/apt/sources.list и сделать даблклик по файлу.

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

Структура записи репозиториев

deb http://old-releases.ubuntu.com/ubuntu natty main universe

deb — тип репозитория. Может быть deb (двоичный) и deb-src (исходный)

natty — версия дистрибутива, в данном случае 11.04. Узнать название версии ubuntu 

mainuniverse —  Уровни поддержки. Может указываться как один, так и несколько, в строчку. Также бывают уровни multiverse и restricted.

Проблемы которые могут возникнуть

W: Duplicate sources.list entry http://archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problemsW: Duplicate sources.list entry http://archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems

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

_________

Когда при попытке обновить систему или при поиске подходящего репозитория возникает надпись «Ошибка при загрузке информации об источниках приложений. Проверьте интернет-соединение», это последствия ошибки 404, из примера ниже.

_________

Ошибки вида 404 Not Found. Пример 

Err http://in.archive.ubuntu.com/ubuntu/ utopic/universe libfftw3-3 amd64 3.3.4-1ubuntu1
404  Not Found [IP: 91.189.88.152 80]

Есть несколько причин возникновения подобных ошибок 

  1. Репозитория больше не существует
  2. В адресе к репозиторию есть ошибка
  3. Установлена старая версия, которая больше не доступна на репозитории 

Варианты решения

  1. Выбрать другой репозиторий
  2. Исправить ошибку в написании
  3. В файле в качестве адреса сайта указать old-releases.ubuntu.com. Это сайт с архивами старых версий ubuntu. Указать этот адрес можно командой 
    sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

    Затем обновить 

    sudo apt-get update && sudo apt-get dist-upgrade

Принудительный поиск обновлений

sudo apt-get update
sudo apt-get install update-manager-core
sudo do-release-upgrade

update-manager-core — пакет содержащий базовые программы для менеджера обновлений

Список команд

sudo apt-get update — обновление установленных файлов

sudo apt-get upgrade — обновление всех пакетов

sudo apt-get dist-upgrade — обновление всех пакетов с принудительным механизмом разрешения конфликтов

do-release-upgrade — команда для обновления версии системы. В отличии от dist-upgrade позволяет отслеживать изменения в конфигурациях систем при переходе от выпуска к выпуску.