Обновление Debian 11 до Debian 12
Описание
В этой статье мы опишем процесс обновления ОС с Debian 11 до Debian 12.
Обновление
Перед обновлением операционной системы мы настоятельно рекомендуем сделать полную резервную копию всех данных на сервере. Это послужит страховкой на случай проблем и позволит восстановить систему в экстренной ситуации.
Все команды во время обновления ОС выполняются в терминале сервера от имени пользователя root.
Отказывайтесь от предложений системы заменить ко нфигурационные файлы (действие по умолчанию).
Имена файлов репозиториев в /etc/apt/sources.list.d вашей ОС могут отличаться от используемых в этой инструкции.
- Убедитесь, что у вас указаны правильные репозитории в
/etc/apt/sources.list. Список репозиториев для Debian 11 приведён ниже.
Репозитории Debian 11
deb http://deb.debian.org/debian/ bullseye main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye main contrib non-free
deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free
- Обновите все текущие пакеты до последних версий
apt update && apt dist-upgrade
- Замените список репозиториев в
/etc/apt/sources.listна репозитории Debian 12. Список репозиториев для Debian 12 приведён ниже.
Репозитории Debian 12
deb http://deb.debian.org/debian/ bookworm main contrib non-free
deb-src http://deb.debian.org/debian/ bookworm main contrib non-free
deb http://deb.debian.org/debian/ bookworm-updates main contrib non-free
deb-src http://deb.debian.org/debian/ bookworm-updates main contrib non-free
deb http://deb.debian.org/debian-security bookworm-security main contrib non-free
deb-src http://deb.debian.org/debian-security bookworm-security main contrib non-free
- Устранение возможных ошибок обновления apache2
a2dismod php7.4
- Обновите пакеты. Выполните следующие команды по одной
apt update
apt upgrade
apt dist-upgrade
- Обновление других репозиториев
sed -i 's|bullseye|bookworm|g' /etc/apt/sources.list.d/*.list
- Добавьте ключи репозитория nginx
wget -q -O - http://nginx.org/keys/nginx_signing.key |apt-key add -
Если на сервере используется MariaDB, необходимо исправить репозиторий, указав версию не ниже 10.11.
Узнать версию используемого сервера баз данных можно, выполнив команду
mysql -V
Если используется MySQL, исправьте репозиторий, обновите его ключ и добавьте репозиторий безопасности Debian 11:
sed -i 's|bookworm|bullseye|g' /etc/apt/sources.list.d/mysql.list
echo "deb http://security.debian.org/debian-security bullseye-security main" > /etc/apt/sources.list.d/bullseye-security.list
wget -q -O - http://repo.mysql.com/RPM-GPG-KEY-mysql |apt-key add -
Для MariaDB ниже 10.5 используйте:
sed 's/10.[0-9]/11.1/' /etc/apt/sources.list.d/mariadb.list
- Обновите пакеты
apt update
apt dist-upgrade
- Установите PHP 8.2 с базовыми модулями, PHP7.3-FPM и модулем Apache2
apt install -f php php-fpm libapache2-mod-php libapache2-mod-php8.2 php-common php8.2-cgi php8.2-cli php8.2-common php8.2-curl php8.2-gd php8.2-mbstring php8.2-mysql php8.2-opcache php8.2-readline php8.2-xml php8.2-xmlrpc php-imagick php-memcached
phpenmod calendar ctype curl dom exif fileinfo ftp gd gettext iconv mbstring mysqli mysqlnd pdo pdo_mysql phar posix readline shmop simplexml sockets sysvmsg sysvsem sysvshm tokenizer xml xmlreader xmlrpc xmlwriter xsl opcache imagick memcached
- Переместите конфигурации PHP-FPM
mv /opt/php82/etc/php-fpm.d/* /etc/php/8.2/fpm/pool.d/
rm /etc/php/7.4/fpm/pool.d/www.conf
mv /etc/php/7.4/fpm/pool.d/* /opt/php74/etc/php-fpm.d/
- Замените PHP 7.4
apt-get purge php7.4*
- Активируйте PHP 8.2
a2enmod php8.2
- Исправьте версию PHP в базе FASTPANEL
sqlite3 /usr/local/fastpanel2/app/db/fastpanel2.db "update site set php_version = 82 where mode = 'mpm_itk';"
- Установите компонент Dovecot, необходимый для приёма почты
apt install dovecot-lmtpd
- Перенастройте сервисы
mogwai services configure -f
- Дополнительная настройка в зависимости от используемого сервера баз данных
Для MariaDB — выполните mysql_upgrade
mysql_upgrade
- Перезагрузите сервер
reboot
- Убедитесь, что после перезагрузки все сервисы запущены
systemctl --failed
Обновление завершено.