Server upgrade Debian 10 na Debian 11 Linux u ISPconfig instalace

Upgrade serveru Debian 10 na Debian 11 Linux u ISPconfig instalace. ISPConfig je široce používaný open source řídicí panel hostingu pro Linux, licencovaný pod licencí BSD a vyvinutý společností ISPConfig UG. Projekt ISPConfig zahájil na podzim roku 2005 Till Brehm z německé společnosti projektfarm GmbH.

ISPConfig umožňuje správcům spravovat webové stránky, e-mailové adresy, databáze MySQL a MariaDB, účty FTP, účty Shell a záznamy DNS prostřednictvím webového rozhraní. Software má 4 úrovně přihlášení: administrátor, prodejce, klient a uživatel e-mailu. ISPConfig podporuje operační systémy CentOS, Debian, Fedora, OpenSUSE a Ubuntu založené na Linuxu. ISPConfig lze používat s distribucemi Linuxu: CentOS, Debian, Ubuntu.

Debian 11 sources.list

1. Ručně nebo pomocí sed upravíme zdroje balíčků

sed -i 's/buster\/updates/bullseye-security/g' /etc/apt/sources.list
sed -i 's/buster/bullseye/g' /etc/apt/sources.list
sed -i 's/buster\/updates/bullseye-security/g' /etc/apt/sources.list.d/*.list
sed -i 's/buster/bullseye/g' /etc/apt/sources.list.d/*.list

2. Provedeme upgrade operačního systému

apt-get update -y
apt-get full-upgrade -y
reboot

PHP 7.4

3. Používáte Sury PHP repo? Pak pravděpodobně používáte i php7.4 (tento krok můžete přeskočit). Pokud používáte původni Debian 10 verzi php7.3, nainstalujte php7.4. To je minimální verze používána pro Debian 11

apt -y install php7.4 php7.4-common php7.4-gd php7.4-mysql php7.4-imap php7.4-cli php7.4-cgi php7.4-curl php7.4-intl php7.4-pspell php7.4-sqlite3 php7.4-tidy php7.4-xmlrpc php7.4-xsl php7.4-zip php7.4-mbstring php7.4-soap php7.4-fpm php7.4-opcache php7.4-json php7.4-readline php7.4-xml curl

MySQL upgrade

4. Provedeme aktualizaci MySQL databáze. Debian 11 BullsEye v čase upgrade používá verzi 10.5.15, původní Debian 10 nižší verzi MySQL 10.3.34

mysql_upgrade --host=localhost -uuživatel -pheslo

Pokud již proběhla částečná aktualizace a mysql_upgrade skončí s hláškou, že databaáze je již nainstalována stačí přídat přepínač –force

mysql_upgrade --host=localhost -uuživatel -pheslo --force

Výpis z logu terminálu MySQL aktualizace..

Major version upgrade detected from 10.3.34-MariaDB to 10.5.15-MariaDB. Check required!

Phase 1/7: Checking and upgrading mysql database
Phase 2/7: Installing used storage engines... Skipped
Phase 3/7: Fixing views
Phase 4/7: Running 'mysql_fix_privilege_tables'
Phase 5/7: Fixing table and database names
Phase 6/7: Checking and upgrading tables
Processing databases
...
Phase 7/7: Running 'FLUSH PRIVILEGES'

MariaDB lze aktualizovat přímo na verzi MariaDB 10.7.

ISPconfig PHP

5. Změna konfigurace ISPconfig nastavení PHP (default dle vašeho výběru – minimum je v7.4) v cestě Systém -> Konfigurace Serveru -> server.mojedoman.cz -> WWW -> PHP

Apache php.ini path:
/etc/php/7.4/apache2/php.ini

CGI php.ini path:
/etc/php/7.4/cgi/php.ini

PHP-FPM init script:
php7.4-fpm

PHP-FPM php.ini path:
/etc/php/7.4/fpm/php.ini

PHP-FPM pool directory:
/etc/php/7.4/fpm/pool.d

PHP-FPM socket directory:
/var/lib/php7.4-fpm
Debian Linux IPSconfig PHP verze
Debian Linux IPSconfig PHP verze

Chybu (Failed to make backup of database …)

cat /var/log/ispconfig/cron.log
mysqldump: Couldn't execute 'SHOW FUNCTION STATUS WHERE Db = 'c111db'': Cannot load from mysql.proc. The table is probably corrupted (1728)
ERROR - Failed to make backup of database c111db, because mysqldump failed

nebo i v logu

cat /var/log/ispconfig.log
30.03.2022-00:07 - ERROR - Failed to make backup of database c111db, because mysqldump failed
30.03.2022-00:07 - ERROR - Failed to make backup of database c112db, because mysqldump failed
30.03.2022-00:07 - ERROR - Failed to make backup of database c113db, because mysqldump failed
30.03.2022-00:07 - ERROR - Failed to make backup of database c114db, because mysqldump failed
30.03.2022-00:07 - ERROR - Failed to make backup of database c115db, because mysqldump failed
30.03.2022-00:07 - ERROR - Failed to make backup of database c116db, because mysqldump failed

lze odstranit poaktualizační aktualizací samotné databáze viz. krok MySQL upgrade.

ispconfig_update.sh

Přegenerování instalace ISPconfig (i v případě aktuální verze je nutné). Provedeme pomocí příkazu

ispconfig_update.sh --force

Perl vlogger

Po aktualizaci na Debian 11, po zadání příkazu apt-get autoremove může dojít u odinstalace starších balíčků k odstranění vlogger. Zjistíte to zak, že statistika návštěvnosti (třeba Awstats) bude po dalším dni, to jest pozítří, ukazovat 0 návštěv. Pokud statistiku používáte, skontrolujte přítomnost vlogger. Kontrola log rotate aplikace, kterou ISPconfig používá, pomocí příkazu dpkg

dpkg -s vlogger
Package: vlogger
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 40
Maintainer: RISKO Gergely <risko@debian.org>
Architecture: all
Version: 1.3-4.1
Depends: perl:any, libtimedate-perl
Suggests: libdbi-perl
Description: virtual web logfile rotater/parser
 Vlogger is a little piece of code borned to handle dealing with large
 amounts of virtualhost logs.  It's bad news that apache can't do this
 on its own.  Vlogger takes piped input from apache, splits it off to
 separate files based on the first field.  It uses a file handle cache
 so it can't run out of file descriptors.  It will also start a new
 logfile every night at midnight, and maintain a symlink to the most
 recent file.  For security, it can drop privileges and do a chroot to
 the logs directory.

Automatická záloha

Příčinou nefunkční ISPconfig automatické zálohy webu a databáze (nastavené pomocí panelu u domény) je neaktualizovaná MySQL databáze viz krok MySQL upgrade.

phpMyAdmin

V případě, že používáte vlastní instalaci phpMyAdmin (na extra doméně zabezpečenou pomocí platného SSL certifikátu) a PHP Sury repo (kvůly akuální verzi PHP 8.1) výchozí verzi PHP 7.3 z Debian 10 máte pořád nastavenou v ISPconfig.. Je nutné (u domény kde běží phpMyAdmin) změnit volbu PHP na verzi PHP 7.4. V opačnem případě bude v operačním systému Debian 11 podrženo několik balíčků PHP 7.3.

Debian ISPconfig konfigurace PHP
Debian ISPconfig konfigurace PHP

Aktualizace phpMyAdmin

Najdete v v textu Aktualizace phpMyAdmin snapshot verze s podporou PHP8.x.

Debian 11 phpMyAdmin
Aktualizovaný phpMyAdmin vzhled Metro

Apache Handler

Ručně vyeditovat Sethandler v každém .vhost souboru domény a změnit 7.3 na 7.4. Pokud používáte Sury PHP balíček lze provést i přepnutím PHP verze tam a zpátky

SetHandler "proxy:unix:/var/lib/php7.4-fpm/web14.sock|fcgi://localhost" 

Toto nastavení se samo pouhou aktualizací nezmění.

Apache HTTP/2

Pokud máte na serveru aktivní podporu pro HTTP/2 po změně PHP na verzi 7.4 bude nutné konfiguraci HTTP/2 provést znovu.

systemctl stop apache2.service
a2dismod php7.3
a2dismod php8.1 # pokud používáte sury multi php balíček
a2dismod mpm_prefork
a2enmod mpm_event
systemctl start apache2.service

Mediawiki atp

Pokud na aktualizovaném serveru běží redakční systémy které používají PHP7.3 a po aktualizací potřebují php7.4 (jelikož na php8.1 nefungují); kupříkladu Joomla, Mediawiki, phpBB; přechod na minimální verzi PHP 7.4 nemusí proběhnout hladce. Operační systém si ponechá nejdůležitější PHP 7.3 balíčky i v případě, že původní starší verzi PHP deaktivujete. Odstranit starší verzi PHP lze pouze pomocí

apt-get autoremove php-7.3*

Načež můžou jmenované redakční systémy přestat fungovat. Pokud používáte doinstalovanou nejnovější verzi PHP 8.1 pomocí Sury PHP balíčku, řešení je jednoduché. Pomocí konfigurace verze PHP v ISPconfig, v nastavení u každé domény stačí přepnout verzi PHP z výchozí na na 8.1; počkat až se změna přegeneruje a pak zpátky na původní nastavení. Tímto se automaticky načte a zapíše správna konfigurace.

Nativní ISPconfig PHP 8

Nebude dostupná dřív než 22. 04 2022, na kdy je plánováno vydání verze Ubuntu 22.04

MariaDB 10.7

Aktualizace verze 10.5 na MariaDB 10.6.7 není na produkčním operačním systému možná bez úplné odinastalace balíčku z již aktualizovaného Debian 11. Pokud i přesto o tom avažujete, doporučujeme provést upgrade databáze s upgrade na Debian 11 přímo na verzi MariaDB 10.7. Tak, že před aktualizací na Debian 11 s editací repo balíčků přidáte i repo na poslední verzi mariaDB.

Užitečné

Domovská stránka Debian Linux.
Domovská stránka phpMyAdmin.
Domovská stránka ISPconfig.

ICTIS.CZ