1. Обновление с Debian 8 до 9
1.1. Debian 9 выпущен
После 2 лет разработки Debian 9 (кодовое название «Stretch») был выпущен для ожидающего сообщества Linux. Выпуск Debian 9 является переломным моментом, потому что это первый крупный выпуск дистрибутива после смерти его основателя Яна Мердока, тем самым сигнализируя о том, что проект продолжит процветать в новую эру.
Помимо обычных обновлений пакетов в каждом выпуске, Debian 9 добавил более 15000 новых пакетов в свой 51000 сильный репозиторий. Примечательные новые функции и изменения включают следующее:
-
PHP 7
PHP обновлен с версии 5.6 в Debian с 8 по 7.0 в Debian 9. Если вы написали сценарии, в которых используется PHP, обратите внимание, что пути к исполняемым файлам для двух версий значительно различаются.
-
MariaDB
MariaDB - это форк и прямая замена оригинального программного обеспечения MySQL. Debian 9 делает MariaDB вариантом MySQL по умолчанию. При обновлении с Debian 8 до 9 ваша существующая база данных MySQL автоматически преобразуется в MariaDB 10.1. Вы должны сделать полный дамп базы данных перед обновлением Debian.
-
Firefox и Thunderbird
Если вы поищете Iceweasel и Icedove в Debian 9, вы их не найдете. Спустя более 10 лет Firebox и Thunderbird, фирменные версии двух вышеупомянутых программ, вновь вошли в Debian 9.
-
Новые имена сетевых интерфейсов
Пользователи Debian 8 знакомы с именами сетевых интерфейсов, такими как eth0 для Ethernet и wlan0 для беспроводной сети. Чтобы решить проблему условий гонки перечисления в предыдущих выпусках, Debian 9 использует новую схему именования, основанную на индексных номерах прошивки / BIOS и номерах слотов для карт PCI.
Вы увидите имена интерфейсов, такие как enp3s0 для Ethernet и wlp2s0 для беспроводной сети. Обратите внимание, что новая схема именования вступает в силу только для новых установок; при обновлении с 8 до 9 старая схема именования остается в силе.
-
Запустите X как пользователь без полномочий root
До Debian 9 сервер Xorg должен запускаться от имени пользователя root. Статус root потенциально подвергает систему риску повышения привилегий в случае ошибки или нарушения. Debian 9 делает возможным запуск сервера Xorg от имени непривилегированного пользователя. Предостережение: только диспетчер отображения gdm3 поддерживает эту функцию.
-
net-tools устарел
По умолчанию пакет net-tools больше не является частью новых установок Debian 9. Однако обновления Debian с выпуска 8 исключены. Без net-tools вы не сможете выполнить знакомые команды ifconfig / route / arp / netstat, если сначала не установите устаревший пакет вручную.
Вместо этого вам предлагается использовать новую команду ip из пакета iproute2, который по умолчанию установлен.
2. Перед обновлением
Обновление системы Debian без надлежащего резервного копирования похоже на прогулку по канату без ремней безопасности: это можно сделать, но последствия могут быть катастрофическими. Следующие типы файлов следует учитывать при резервном копировании:
-
Дата файлы
Перед обновлением системы крайне важно создать резервные копии всех баз данных и критически важных файлов с плоскими данными. Как упоминалось выше, базы данных MySQL будут автоматически преобразованы в MariaDB в процессе обновления.Вы можете использовать команду mysqldump для экспорта базы данных MySQL в текстовый файл, содержащий операторы SQL, необходимые для воссоздания базы данных.
Полученные файлы SQL, а также другие плоские файлы данных могут быть сжаты и зарезервированы с помощью комбинации команд tar, gzip, rsync или git.
-
Файлы конфигурации
Обновления программного обеспечения обычно сопровождаются изменениями в соответствующих файлах конфигурации программного обеспечения. Вы должны сделать резервную копию старых файлов конфигурации, чтобы вы могли обратиться к ним для решения любой проблемы несовместимости, которая может возникнуть. Файлы конфигурации системы хранятся в основном в / etc.
Файлы конфигурации для конкретного пользователя обычно хранятся в домашнем каталоге соответствующего пользователя (/ home). Файлы конфигурации представляют собой текстовые файлы, поэтому для них можно использовать те же инструменты, что и для файлов текстовых данных.
Наконец, резервные копии не должны храниться на локальном диске. Хорошее место для резервного копирования - внешний диск, удаленный компьютер и облачное хранилище.
3. Пошаговое обновление
-
Обновите существующий Debian 8
Перед обновлением до Debian 9 рекомендуется обновить Debian 8. От имени пользователя root выполните следующие команды:
# apt-get update # apt-get upgrade
Обновление существующей версии обычно несложная процедура. Однако иногда вы можете увидеть в выходном сообщении, что один или несколько пакетов «были сохранены.Это означает, что рассматриваемые пакеты не могут быть обновлены, потому что новая зависимость требует установки нового пакета или удаления существующего пакета.
Чтобы решить указанную выше проблему, выполните следующую команду:
# apt-get dist-upgrade
Если обновление включает обновление ядра, вам следует перезагрузить компьютер, прежде чем продолжить.
-
Отредактируйте / etc / apt / sources.список
В / etc / apt / sources.В файле списка указаны источники, включая дистрибутив, из которых можно скачать пакеты. Распределение может быть указано с использованием кодового имени Debian («stretch» против «jessie») или статуса выпуска («стабильный» против «oldstable»).
Чтобы обновить Debian 8 («jessie») до Debian 9 («stretch»), замените все вхождения «jessie» в файле на «stretch».Например, ваш старый файл может выглядеть следующим образом:
deb http: // ftp.нас.дебиан.org / debian / jessie main contrib non-free deb http: // security.дебиан.org / jessie / updates main contrib non-free deb http: // ftp.нас.дебиан.org / debian / jessie-updates main contrib non-free
Обратите внимание, что URL-адрес репозитория, скорее всего, будет выглядеть иначе в вашем собственном / etc / apt / sources.файл списка. Кроме того, если ваш старый файл ссылается на «стабильный», а не на явное кодовое имя («jessie»), вы можете при желании оставить его без изменений (поскольку текущий стабильный выпуск - «stretch»).
Однако рекомендуется явно указывать кодовое имя, чтобы гарантировать, что ваша система не будет обновляться непреднамеренно, когда станет доступна более новая стабильная версия.
Новый файл должен выглядеть следующим образом:
deb http: // ftp.нас.дебиан.org / debian / stretch main contrib non-free deb http: // security.дебиан.org / stretch / updates main contrib non-free deb http: // ftp.нас.дебиан.org / debian / stretch-updates main contrib non-free
Запустить обновление после редактирования файла.
# apt-get update
-
Проверьте требования к месту на диске
Перед фактическим обновлением выполните пробный прогон, чтобы узнать, какое дополнительное дисковое пространство требуется:
# apt-get -o APT :: Get :: Trivial-Only = true dist-upgrade
Найдите следующую строку в конце вывода:
«После этой операции будет использовано XXXX МБ дополнительного дискового пространства.”Перед началом обновления убедитесь, что на машине достаточно места на диске. Чтобы проверить объем доступного в настоящее время дискового пространства, запустите:
# df -h
-
Запустите обновление Debian 9.
Выполните следующие 2 команды по порядку.
# apt-get upgrade # apt-get dist-upgrade
Во время обновления вам может быть предложено разрешить любой конфликт файла конфигурации. Конфликт возникает, когда установщик замечает, что вы ранее редактировали файл конфигурации, который он пытается обновить.
Прежде чем принять решение о том, какую версию использовать, вы можете просмотреть различия между вашей последней отредактированной версией и версией, которая будет установлена. Если вы не можете сразу решить, какую версию использовать, вы можете сохранить последнюю отредактированную версию и позже вручную согласовать различия.
-
Перезагрузить
Обновление с Debian 8 до Debian 9 включает обновления ядра. В результате вам следует перезагрузить компьютер после обновления.
После перезагрузки вы можете убедиться, что на машине действительно запущен Debian 9, выполнив следующую команду.
# lsb_release -a Нет доступных модулей LSB. Идентификатор распространителя: Debian Описание: Debian GNU / Linux 9.2 (растяжка) Выпуск: 9.2 Кодовое имя: stretch