Не могу терпеть безделье больше одного дня, а ещё и болеть – тем более скучно. Поэтому нотубук в кровать – и вперёд, покорять обновление убунты очень древней версии. А что такого, спросите вы? А то, что в моём случае версия 7.04 уже давно не поддерживается, и не поддерживается даже следующая за ней 7.10. Поэтому все штатные процедуры обновления Линукса падают с фатальными ошибками.
Причина в том, что в штатном репозитории убунты archive.ubuntu.com уже нет дистрибутивов тех версий, по которым поддержка прекращена. Но ничего не пропало: всё живёт на old-releases.ubuntu.com.
Итак, работаем из-под sudo. Первый шаг: открываем на редактирование файл /etc/apt/sources.list и меняем там *.archive. на old-releases. Строки в конце файла про security лучше пока закомментировать.
Запускаем традиционные apt-get update, apt-get upgrade, и на всякий случай apt-get install update-manager, если у вас его не было. Затем пытаемся сказать do-release-upgrade и получаем примерно такую уйню:
Checking for a new ubuntu release
Failed Upgrade tool signature
Failed Upgrade tool
Done downloading
extracting ‘/tmp/tmpaIgInN/gutsy.tar.gz’
…
IOError: [Errno 2] No such file or directory: ‘/tmp/tmpaIgInN/gutsy.tar.gz’
В чём дело? Дело в том, что дуралеи из Ubuntu не обучили update-manager скачивать дистрибутивы из old-releases. Не пытайтесь найти где он берёт этот URL – зря потратите время. Лучше запустить обновление напрямую. Обратите внимание, как именно у вас лично назвалась эта временная директория, и попробуйте так:
cd /tmp/tmpaIgInN
wget http://old-releases.ubuntu.com/ubuntu/dists/gutsy/main/dist-upgrader-all/current/gutsy.tar.gz.gpg
wget http://old-releases.ubuntu.com/ubuntu/dists/gutsy/main/dist-upgrader-all/current/gutsy.tar.gz
gpg –keyring /etc/apt/trusted.gpg –verify gutsy.tar.gz.gpg gutsy.tar.gz
tar zxvf gutsy.tar.gz
Делаем пару магических пассов:
perl -p -i.feisty -e ‘s/(http:\/\/).*archive(.ubuntu.com)/${1}old-releases$2/’ prerequists-sources.list
perl -p -i.feisty -e ‘s/feisty/gutsy/g’ /etc/apt/sources.list
Теперь обновляем систему:
./gutsy –frontend DistUpgradeViewText –mode=server
Ждем пока обновится , перезагрузится машина и проверяем версию системы:
lsb_release -a
У вас должно получиться Gutsy 7.10. Источник волшебного способа здесь.
Дальше нужно снова отредактировать /etc/apt/sources.list, чтобы убедиться, что там указаны old-releases для gutsy. И снова запустить do-release-upgrade для апгрейда до следующей версии.
Следующая версия называется hardy. На данный момент она поддерживается, а значит, присутствует в штатных дистрибутивах. Вовремя подсуньте правильные ссылки в sources.list, и её уже можно обновить и обновлять до более свежих версий без лишнего шаманства.
Процесс обновления требует стабильного соединения с сервером (и сервера – с интернетом), и может занять до часа времени на каждую версию. Не спите в процессе – установщик будет задавать некоторые вопросы. Успехов!