Обновление ubuntu 14.04 через терминал

Внимание: Более ранняя версия этой статьи включала упоминание Ubuntu 14.04. Хотя обновление с версии 14.04 может успешно завершиться, обновления с одной версии LTS до следующей версии LTS по умолчанию отключены до момента выхода первого обновления новой версии LTS (point release). Мы рекомендуем не обновляться до выхода версии 16.04.1. На серверах Digital Ocean системы с Ubuntu 14.04 после обновления будут использовать старое ядро, которое в течение первого времени нельзя будет обновить.

Хотя эта версия ещё не доступна для обновления на момент написания данной статьи, в настоящее время возможно обновить систему с 15.10 до девелоперской версии 16.04. Это может быть полезно для тестирования процесса обновления и новых возможностей 16.04 до момента официального выхода новой версии.

Эта статья описывает процесс обновления для систем с Ubuntu 15.10 (включая, но не ограничиваясь дроплетами Digital Ocean).

Внимание: Как и в случае любого другого обновления операционной системы этот процесс подвержен риску потери данных и конфигураций программного обеспечения. Рекомендуем сделать бэкапы перед началом процесса обновления и тщательно тестировать свои сервера после обновления.

Перед началом

Инструкции в этой статье предполагают, что у вы используете Ubuntu 15.10. Перед началом убедитесь, что у вас есть не-рутовый пользователь с привилегиями sudo .

Потенциальные проблемы

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

Не следует обновлять production систему без предварительного тестирования всего установленного программного обеспечения и сервисов с новой версией в staging среде. Помните, что библиотеки, языки программирования и системные сервисы могли значительно измениться в обновлении. В Ubuntu 16.04 важными изменениями по сравнению с предыдущей LTS версией стали переход к использованию системы инициализации systemd вместо Upstart, особый акцент на поддержке Python 3, а также использование PHP 7 вместо PHP 5.

Шаг 1. Бэкап системы

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

В случае дроплета Digital Ocean самым простым способом создания бэкапа является выключения сервера и создание снимка системы (snapshot). Выключение сервера при этом гарантирует, что файловая система будет сохранена в целостном состоянии. Для ознакомления с этим процессом рекомендуем прочитать статью . После того, как вы убедитесь, что обновление прошло успешно, вы можете удалить снимок системы, чтобы сэкономить деньги на его хранении.

Для поиска более универсального способа создания бэкапов, который будет работать на любой системе с Ubuntu, рекомендуем ознакомиться со статьёй .

Шаг 2. Обновление установленных пакетов

Перед началом обновления системы лучше всего установить самые последние версии всех пакетов для текущей версии операционной системы .

Для этого сначала обновим список пакетов:

  • sudo apt-get update
  • sudo apt-get upgrade

Вам будет представлен список обновлений пакетов. Отвечайте y и нажимайте Enter для продолжения.

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

  • sudo apt-get dist-upgrade

Отвечайте y для продолжения и дождитесь завершения установки обновлений пакетов.

Теперь, когда у вас есть полностью обновлённая версия Ubuntu 15.10, вы можете использовать do-release-upgrade для обновления до 16.04.

Шаг 3. Использование do-release-upgrade для обновления системы

Сначала убедимся, что у вас установлен пакет update-manager-core:

  • sudo apt-get install update-manager-core

Традиционно дистрибутивы на базе Debian используют для обновления файл /etc/apt/sources.list , указывающий на список репозиториев пакетов для apt, а также используют команду apt-get dist-upgrade для выполнения самого обновления. Ubuntu основана на Debian, поэтому данный процесс, скорее всего, сработает. Тем не менее, мы будем использовать утилиту do-release-upgrade , предоставляемую проектом Ubuntu, которая проверяет наличие нового релиза, обновляет sources.list , а также выполняет ряд других действий. Это официально рекомендованный способ обновления серверов, который должен выполняться с помощью удалённого соединения.

Начнём с команды do-release-upgrade без каких-либо опций:

  • sudo do-release-upgrade

Если Ubuntu 16.04 ещё не доступна, вы увидите следующий вывод:

Checking for a new Ubuntu release No new release found

Для обновления до версии 16.04 до момента её официального релиза, укажите ключ -d для использования девелоперского релиза:

  • sudo do-release-upgrade -d

Если вы зашли на свой сервер через SSH (как, например, в случае использования дроплета Digital Ocean), вас спросят, хотите ли ли вы продолжить установку.

В случае дроплета обновляться через SSH безопасно. Вы всегда можете использовать консоль в панели управления Digital Ocean для подключения к серверу не используя SSH.

При использовании виртуальный серверов или серверов других провайдеров вам необходимо иметь в виду, что потеря SSH соединения несёт риски, особенно, если у вас нет другого способа удалённо зайти на вашу машину. В случае других ваших систем, помните, что безопаснее всего выполнять обновления операционной системы только если у вас есть физический доступ к машине.

Ответьте y и нажмите Enter для продолжения:

Reading cache Checking package manager Continue running under SSH? This session appears to be running under ssh. It is not recommended to perform a upgrade over ssh currently because in case of failure it is harder to recover. If you continue, an additional ssh daemon will be started at port "1022". Do you want to continue? Continue y

Starting additional sshd To make recovery in case of failure easier, an additional sshd will be started on port "1022". If anything goes wrong with the running ssh you can still connect to the additional one. If you run a firewall, you may need to temporarily open this port. As this is potentially dangerous it"s not done automatically. You can open the port with e.g.: "iptables -I INPUT -p tcp --dport 1022 -j ACCEPT" To continue please press

Нажмите Enter . Далее вы можете увидеть предупреждение о том, что зеркало для обновления не найдено. В системах Digital Ocean вы можете игнорировать это сообщение и продолжать обновление, поскольку локальное зеркало для 16.04 на самом деле является доступным. Введите y :

Updating repository information No valid mirror found While scanning your repository information no mirror entry for the upgrade was found. This can happen if you run an internal mirror or if the mirror information is out of date. Do you want to rewrite your "sources.list" file anyway? If you choose "Yes" here it will update all "trusty" to "xenial" entries. If you select "No" the upgrade will cancel. Continue y

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

Do you want to start the upgrade? 6 installed packages are no longer supported by Canonical. You can still get support from the community. 9 packages are going to be removed. 104 new packages are going to be installed. 399 packages are going to be upgraded. You have to download a total of 232 M. This download will take about 46 seconds with your connection. Installing the upgrade can take several hours. Once the download has finished, the process cannot be canceled. Continue Details [d]y

В процессе установки вам могут задавать различные вопросы. Например, вас могут спросить, хотите ли вы автоматически перезапускать сервисы, когда это необходимо:

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

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

Remove obsolete packages? 53 packages are going to be removed. Continue Details [d]y

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

System upgrade is complete. Restart required To finish the upgrade, a restart is required. If you select "y" the system will be restarted. Continue y

При использовании SSH вы, скорее всего, увидите нечто похожее:

Command detached from window (Thu Apr 7 13:13:33 2016) === === Command terminated normally (Thu Apr 7 13:13:43 2016) ===

Возможно, вам придётся нажать любую клавишу для выхода в локальную консоль, поскольку ваша SSH сессия была прервана на стороне сервера. Подождите, пока система перезагрузится и войдите в неё снова. В процессе логина вы должны увидеть приветствие, подтверждающее установку Xenial Xerus:

Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 4.4.0-17-generic x86_64)

Заключение

Теперь у вас должен быть работающий сервер с Ubuntu 16.04. Далее вам, скорее всего, будет необходимо изучить требуемые изменения конфигурации сервисов и установленных приложений для работы с новой версии операционной системы. В следующие несколько недель мы начнём публиковать статьи от Digital Ocean на разные темы, касающиеся Ubuntu 16.04.

Сегодня выпущен Ubuntu 16.04 LTS. Я видел здесь iso. Но я не хочу делать чистую установку. Может кто-нибудь объяснить мне, как обновить?

Related of "Помощь для обновления ubuntu 14.04 до 16.04"

Теперь, когда выйдет релиз, вы можете сделать следующее:

sudo do-release-upgrade -d

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

(Флаг -d предназначен для «Разработка», но он даст вам окончательный выпуск 16.04 LTS. Причина, по которой вы должны заставить его таким образом, состоит в том, что обычно рекомендуется дождаться выхода версии 16.04.1 он обычно содержит множество исправлений ошибок.)

Окончательный выпуск 16.04 LTS не выпущен для обновления, но он будет выпущен через некоторое время сегодня и завтра.

От man do-release-upgrade

H, --help show help message and exit -d, --devel-release Check if upgrading to the latest devel release is possible -p, --proposed Try upgrading to the latest release using the upgrader from Ubuntu-proposed -m MODE, --mode=MODE Run in a special upgrade mode. Currently "desktop" for regular upgrades of a desktop system and "server" for server systems are supported. -f FRONTEND, --frontend=FRONTEND Run the specified frontend -s, --sandbox Test upgrade with a sandbox aufs overlay

В man-странице есть одна недопустимая функция, но вы можете ее увидеть, когда вы вызываете do-release-upgrade --help:

-c, --check-dist-upgrade-only Check only if a new distribution release is available and report the result via the exit code

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

Do-release-upgrade -c

который даст вам следующий выход, если выпуск недоступен:

Checking for a new Ubuntu release No new release found.

и следующее, если релиз действительно доступен:

Checking for a new Ubuntu release New release "16.04" available. Run "do-release-upgrade" to upgrade to it.

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

Sudo do-release-upgrade -s

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

Для самого обновления, если вы хотите это сделать, и вы получили подтверждение, что релиз доступен, вы можете просто запустить

Sudo do-release-upgrade

без каких-либо параметров, которые будут выполнять обновление.

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

Sudo do-release-upgrade -d

Sudo do-release-upgrade

Это команда для обновления до последней версии, но на данный момент она ничего не сделает, поскольку последняя версия еще не доступна на зеркалах.

Странный момент: я загрузил Ubuntu Mate 16.04 для RPI3 вчера, что было довольно странно, так как обычный образ рабочего стола по-прежнему 15.10.

Следующий Long Term Support релиз дистрибутива Ubuntu, версия 16.04 (Xenial Xerus), выйдет в свет 21 апреля 2016.

Хотя на момент написания статьи эта версия ещё не выпущена, вы уже можете обновить свою систему Ubuntu. Это пробное обновление системы позволяет заранее ознакомиться с функциями версии 16.04.

Данное руководство поможет обновить системы Ubuntu 14.04 и 15.10.

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

Требования

  • Машина Ubuntu 14.04 LTS (или более поздний релиз).
  • Доступ к sudo.

Потенциальные ошибки

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

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

Имейте в виду, что библиотеки, языки программирования и системные сервисы могут существенно измениться. В Ubuntu 16.04 важными изменениями являются переход от системы инициализации Upstart к Systemd, акцент на поддержку Python 3, и переход к PHP 7 вместо PHP 5.

Примечание : Прежде чем приступить к обновлению, обратитесь к документации версии Xenial Xerus .

1: Резервное копирование

Прежде чем приступить к полному обновлению, нужно защитить данные. Лучше всего создать полную резервную копию файловой системы. В случае сбоя обновления у вас будут копии пользовательских домашних каталогов, все пользовательские конфигурационные файлы и данные сервисов (например, БД).

Примечание : Подробные инструкции по созданию бэкапа можно найти в нашем .

2: Обновление текущих пакетов

Обновите индекс пакетов:

sudo apt-get update

Обновите установленные пакеты:

sudo apt-get upgrade

Система предоставит список обновлений. Для подтверждения нажмите y и Enter.

Этот процесс займёт некоторое время. После завершения используйте команду dist-upgrade, которая выполнит обновление с учётом изменившихся зависимостей, добавит или удалит пакеты по мере необходимости. Она внесёт ряд обновлений, которые были опущены командой apt-get upgrade.

sudo apt-get dist-upgrade

Теперь, когда у вас есть полностью обновлённая система Ubuntu 14.04, можно приступать к обновлению до 16.04.

3: Обновление Ubuntu до 16.04

Для обновления версии используйте инструмент do-release-upgrade.

Сначала установите пакет update-manager-core:

sudo apt-get install update-manager-core

Традиционно релизы Debian обновляются через /etc/apt/sources.list и apt-get dist-upgrade. Поскольку Ubuntu является Debian-подобным дистрибутивом, этот процесс, вероятно, сработает. Однако в данном руководстве используется do-release-upgrade – инструмент, который выполнит обновление до разрабатываемой версии Ubuntu.

Примечание : Этот метод обновления официально рекомендуется для удалённых серверов.

Запустите:

sudo do-release-upgrade

Если версия Ubuntu 16.04 ещё не вышла, на экране появится:

Checking for a new Ubuntu release
No new release found

Чтобы обновиться до Ubuntu 16.04 до официального релиза версии, добавьте опцию –d (т.е. development).

sudo do-release-upgrade -d

Процесс обновления происходит в сессии GNU Screen.

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

Чтобы продолжить, нажмите y и Enter.

Reading cache
Checking package manager
Continue running under SSH?
This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.
If you continue, an additional ssh daemon will be started at port
"1022".
Do you want to continue?
Continue y

Затем инструмент do-release-upgrade сообщит, что он запускает новый экземпляр sshd на порт 1022.

Starting additional sshd
To make recovery in case of failure easier, an additional sshd will
be started on port "1022". If anything goes wrong with the running
ssh you can still connect to the additional one.
If you run a firewall, you may need to temporarily open this port. As
this is potentially dangerous it"s not done automatically. You can
open the port with e.g.:
"iptables -I INPUT -p tcp --dport 1022 -j ACCEPT"
To continue please press

Нажмите Enter.

После этого может возникнуть предупреждение о том, что невозможно найти зеркальную запись. Это предупреждение можно проигнорировать, нажав y.

Updating repository information
No valid mirror found
While scanning your repository information no mirror entry for the
upgrade was found. This can happen if you run an internal mirror or
if the mirror information is out of date.
Do you want to rewrite your "sources.list" file anyway? If you choose
"Yes" here it will update all "trusty" to "xenial" entries.
If you select "No" the upgrade will cancel.
Continue y

После загрузки новых пакетов и подсчёта изменений система предложит начать обновление. Чтобы продолжить, нажмите у.

Do you want to start the upgrade?
6 installed packages are no longer supported by Canonical. You can
still get support from the community.
9 packages are going to be removed. 104 new packages are going to be
installed. 399 packages are going to be upgraded.
You have to download a total of 232 M. This download will take about
46 seconds with your connection.
Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.
Continue Details [d]y

После этого новые пакеты будут извлечены, распакованы и установлены. Этот процесс займёт некоторое время.

Во время установки может появиться интерактивное диалоговое окно. К примеру, система может спросить, нужно ли автоматически перезапускать сервисы, заменить пользовательские конфигурационные файлы стандартными и т.п. Чаще всего это зависит от настроек и требований конкретного сервера.

После установки новых пакетов система предложит удалить устаревшие пакеты. Если вы не вносили пользовательских конфигураций и не устанавливали дополнительных пакетов в систему, можете нажать у. Если же в системе существует множество пользовательских конфигураций, вы можете ввести d и проверить список пакетов, которые будут удалены.

Remove obsolete packages?
53 packages are going to be removed.
Continue Details [d]y

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

System upgrade is complete.
Restart required
To finish the upgrade, a restart is required.
If you select "y" the system will be restarted.
Continue y

В сессии SSH появится:

Command detached from window (Thu Apr 7 13:13:33 2016) ===
=== Command terminated normally (Thu Apr 7 13:13:43 2016) ===

Теперь можно вернуться в локальную командную строку, так как SSH сессия на стороне сервера будет прекращена. Подождите, пока система перезагрузится и создаст повторное подключение. При входе в систему вы увидите сообщение, подтверждающее, что теперь используется версия 16.04:

Welcome to Ubuntu Xenial Xerus (development branch) (GNU/Linux 3.13.0-79-generic x86_64)

Заключение

Теперь у вас есть рабочая установка Ubuntu 16.04. Можно внести коррективы в стандартные настройки системы, установить дополнительные сервисы и развернуть приложение.

Tags: ,

На данный момент стало возможным обновить систему до версии 18.04 LTS beta с помощью менеджера приложений т.к. она достигла версии финальной бета-заморозки. В последствии после выхода релизной версии — дистрибутив обновится в штатном режиме через обычное обновление пакетов. Но, если Ubutnu 18.04 уже вышла из стадии беты — то не страшно — данная статья подойдет и для обновление системы до релизной версии (разницы в данном случае нет).

Перед началом обновления следует подстраховаться и сделать резервную копию важных данных, ведь всегда остается вероятность ошибок при обновлении ОС. Также желательно на время обновления включить использование открытых драйверов на видео вместо проприетарных (если используются) во избежании непредвиденных ситуаций с графикой после перезагрузки системы, что вполне не исключено. Сделать этом можно в меню «Software & Updates» -> «Дополнительные драйверы».

Также стоит убедиться, что в конфигурационном файле /etc/update-manager/release-upgrades значение Prompt установлено как lts . Если это не так, то менеджер обновления предложит обновиться не до версии 18.04 LTS, а до следующей доступной (например с 17.04 до 17.10).

Обновление системы

Через графический интерфейс

Для начала следует обновить все приложения в Ubuntu выполнив с помощью терминала команды:

Sudo apt update sudo apt upgrade

Или с помощью менеджера приложений (используя графический интерфейс).

После того, как все приложения были обновлены можно приступать к обновлению системы. Запускаем менеджер обновления от имени суперпользователя и с флагом d (в терминале — CTRL+ALT+T):

Sudo update-manager -d

Флаг d необходим в данный момент из-за того, что последняя версия имеет статус бета (разрабатываемый релиз). Если на момент чтения статьи 18.04 уже доступна в качестве релизной версии, то можно использовать команду без данного флага.

Если все идет по плану — то откроется окно (рис. выше) в котором будет сообщаться об отсутствии обновлений для компьютера и доступности нового выпуска системы (Ubuntu 18.04). Для начала обновления жмем на кнопку «Обновить».

Следующим откроется окно с информацией о выпуске, можно просмотреть информацию и двигаться дальше, нажав «Обновить»:

Если у тебя добавлены сторонние репозитории (источники приложений) то откроется окно с информацией о том, что они были отключены. Если они понадобятся в дальнейшем — то их можно будет активировать после обновления системы.

После всех вышеописанных действий мы наконец добрались до финишной прямой, после прохождения которой останется только ждать, глядя на заполняющийся прогрессбар процесса обновления.

На окне с двумя кнопками «Отменить» и «Начать обновление» — думаю не стоит особо заострять внимание — тут все понятно:

А вот и все — после выполнения предыдущего пункта откроется окно с прогрессом обновления:

В процессе установки могут периодически всплывать окна с различными вопросами и предупреждениями как от различных приложений, так и от самой системы. Что касается приложений — тут все индивидуально, а примером вопроса от системы я продемонстрирую следующее окно:

Тут нас спрашивают: «удалять ли устаревшие пакеты?». В большинстве случаев рекомендуется удалить их (предварительно можно просмотреть список того, что будет удалено под кнопкой «подробности»).

Последним всплывающим окном мы увидим следующее:

Перезагрузим систему.

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

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

Lsb_release -a

Через текстовый терминал

Процесс обновления Ubuntu в консоли мы инициируем командой do-release-upgrade от имени суперпользователя. И, по аналогии с обновлением через update-manager используем флаг d — как я указывал в начале статьи, он: «необходим в данный момент из-за того, что последняя версия имеет статус бета (разрабатываемый релиз). Если на момент чтения статьи 18.04 уже доступна в качестве релизной версии, то можно использовать команду без данного флага».

Итак, выполняем команду:

Sudo do-release-upgrade -d

Запустится проверка наличия обновлений. После чего, если обновления системы будут найдены, тебе нужно будет подтвердить начало их установки нажав Д (Y):

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

Вы зашли в терминал и ваша Ubuntu приветствует Вас сообщением, что могут быть обновлены пакеты. Какие команды надо набрать, чтобы обновить Ubuntu из командной строки?

Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-79-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage Могут быть обновлены 17 пакетов. 0 обновлений касаются безопасности системы.

Перед обновлением необходимо выполнить команду apt-get update , которая обновит информацию о пакетах, содержащихся в репозиториях, чтобы в процессе обновления получить самые последние версии пакетов. Далее существует 2 варианта обновления: dist-upgrade и upgrade . Предпочтительнее первый вариант.

Когда мне надо обновить убунту через терминал, я выполняю эти две команды:

Sudo apt-get update sudo apt-get dist-upgrade

dist-upgrade делает тоже самое, что upgrade плюс выполяет «умное» разрешения конфликтов версий пакетов. При конфликтах пакетов Ubuntu попытается обновите наиболее важные пакеты за счет менее важных. Поэтому команда dist-upgrade может установить дополнительные пакеты или удалить один из конфликтующих пакетов.

Команды upgrade и dist-upgrade не меняют версию системы, например с Ubuntu 13.04 до Ubuntu 13.10. Для этого есть отдельная команда.

Do-release-upgrade

На мой взгляд простым смертным имеет смысл апгрейдится только с LTS на LTS, то есть совершать переход между версиями с долгосрочной поддержкой, а выпускаются они раз в 2 года и поддерживаются 5 лет. Еще это обусловлено тем, что большинство производителей серьёзного программного обеспечения также поддерживают свои продукты для LTS версий операционных систем, например цитата из документации MongoDB :

PLATFORM SUPPORT
MongoDB only provides packages for 64-bit LTS (long-term support) Ubuntu releases. For example, 12.04 LTS (precise), 14.04 LTS (trusty), 16.04 LTS (xenial), and so on. These packages may work with other Ubuntu releases, however, they are not supported.

То есть, если вы обновитесь с Ubuntu 16.04 на 16.10 и вдруг MongoDB перестанет работать, то не факт, что даже за деньги вам помогут решить эту пробему.

В рассматриваемом случае получается периодичность выполнения команды do-release-upgrade примерно раз в 2-4 года.

Обновление с 16.04 до 18.04

В апреле 2018 года Canonical выпустила Ubuntu 18.04 LTS (кодовое имя Bionic Beaver). А это значит, что можно обновлять систему.

Однако стоит упомянуть слова Стив Лангасека, менеджера команды Ubuntu Engineering Foundations, который напоминает про принцип «Работатет - не трогай»:

Обновления между выпусками LTS не включаются по умолчанию, пока не будет выпущен первый выпуск (18.04.1), запланированный на июль. Рекомендуется, чтобы большинство пользователей LTS подождали до этого времени до обновления до 18.04.

Поэтому, до недавнего времени если запускалась команда do-release-upgrade , то она выводила сообщение, что обновлений нет.

$ sudo do-release-upgrade Checking for a new Ubuntu release No new release found.

Если в таком случае добавить ключ -d (версии разработки), то обновление запустится

$ sudo do-release-upgrade -d

// Пробовал обновиться 8.05.2018, не получилось, откатился назад.

Итак, время пришло. Терминал торжественно встречает фразой.

New release "18.04.1 LTS" available. Run "do-release-upgrade" to upgrade to it. do-release-upgrade Чтение временных файлов Проверка менеджера пакетов Продолжить работу через SSH? Этот сеанс запущен через ssh. Не рекомендуется выполнять обновление через ssh, так как в случае неудачи восстановление будет очень сложным. Если вы продолжите, дополнительная служба ssh будет запущена на порту «1022». Хотите ли вы продолжить? Продолжить [дН]

И вот на этом моменте следует остановиться. Если у вас нет «прямого» доступа к машине, то есть риск, что обновление пройдет неудачно и вы не сможете об этом узнать по SSH. Безопаснее обновлять операционную систему, если у вас есть физический доступ к машине.

Второй момент. Система несколько раз спросит подтверждение:

Продолжить [дН] Подробности [п]

Если у вас локализованная версия Ubuntu, то прямо в терминале (не SSH) сменить раскладку не получится((, а ответ yes или y не подойдет. Поэтому стоит скопировать букву «д» в буфер обмена.

После подтверждения начинатся загрузка и установка пакетов, модификация системных файлов. В зависимости от установленного ПО мастер установки задаст вопросы вида:

Файл настройки «/etc/apache2/apache2.conf» ==> Изменён с момента установки (вами или сценарием). ==> Автор пакета предоставил обновлённую версию. Что нужно сделать? Есть следующие варианты: Y или I: установить версию, предлагаемую сопровождающим пакета N или O: оставить установленную на данный момент версию D: показать различия между версиями Z: запустить оболочку командной строки для проверки ситуации По умолчанию сохраняется текущая версия файла настройки. *** apache2.conf (Y/I/N/O/D/Z) [по умолчанию N] ?

Ничего сложного. Отвечаем, дожидаемся завершения обновления.

Обновление системы завершено. Требуется перезагрузка Чтобы завершить обновление, требуется перезагрузка. Если вы выберите «д», система будет перезагружена.

Перезагружаемся.

Проблемы после обновления

На вопрос Файл настройки «/etc/apache2/apache2.conf» изменён я ответил установить версию, предлагаемую сопровождающим пакета. Из-за этого apache2 не запустился.

Смотрим журнал journalctl -xe -u apache2

Apachectl: AH00558: apache2: Could not reliably determine the server"s fully qualified domain name, using 127.0.1.1. Set the "ServerName" directive globally to suppress this message

Запись сообщает, что не удалось достоверно определить полное доменное имя сервера. Добавление ServerName

Echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf sudo a2enconf servername sudo systemctl reload apache2

Ls /etc/apache2/mods-available | grep php php7.2.conf php7.2.load

Включаем модуль PHP 7.2

Sudo a2enmod php7.2

Система не поставила PHP расширение pdo_mysql . Исправляем:

Sudo apt-get install php7.2-mysql

Также не помешает ознакомиться:

  • Не забывайте посматривать