メインコンテンツにスキップ

Debian 11 を Debian 12 にアップグレードする

説明

この記事では、OS を Debian 11 から Debian 12 にアップグレードする手順について説明します。

アップグレード

警告

オペレーティングシステムをアップグレードする前に、サーバー上のすべてのデータの完全なバックアップを作成することを強く推奨します。 これにより、問題が発生した場合の保険となり、緊急時にシステムを復元できるようになります。

重要

OS のアップグレード中のすべてのコマンドは、root ユーザーでサーバーのターミナル上で実行します。

設定ファイルを置き換えるというシステムの提案は拒否してください(デフォルトの動作)。

お使いの OS の /etc/apt/sources.list.d にあるリポジトリファイル名は、この手順で使用されているものと異なる場合があります。

  1. /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
  1. 現在のすべてのパッケージを最新バージョンに更新します
apt update && apt dist-upgrade
  1. /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
  1. apache2 のアップグレード時に発生する可能性のあるエラーを解消する
a2dismod php7.4
  1. パッケージを更新します。 以下のコマンドを1つずつ実行する
apt update
apt upgrade
apt dist-upgrade
  1. その他のリポジトリを更新します
sed -i 's|bullseye|bookworm|g' /etc/apt/sources.list.d/*.list
  1. nginx リポジトリキーを追加する
wget -q -O - http://nginx.org/keys/nginx_signing.key |apt-key add -
重要

サーバーで MariaDB を使用している場合は、少なくとも 10.11 のバージョンを指定するようにリポジトリを修正する必要があります。

使用中のデータベースサーバーのバージョンは、次のコマンドを実行して確認できます

mysql -V

MySQL を使用している場合は、リポジトリを修正し、そのキーを更新して、Debian 11 の security リポジトリを追加してください:

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

9。 パッケージを更新します

apt update
apt dist-upgrade
  1. 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
  1. 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/
  1. PHP 7.4 を置き換えます
apt-get purge php7.4*
  1. PHP 8.2 を有効化します
a2enmod php8.2
  1. FASTPANEL ベース内の PHP バージョンを修正します
sqlite3 /usr/local/fastpanel2/app/db/fastpanel2.db "update site set php_version = 82 where mode = 'mpm_itk';"
  1. メール受信に必要な Dovecot コンポーネントをインストールします
apt install dovecot-lmtpd
  1. サービスを再設定します
mogwai services configure -f
  1. 使用しているデータベースサーバーに応じた追加設定

MariaDB の場合 - mysql_upgrade を実行します

mysql_upgrade
  1. サーバーを再起動します
reboot
  1. 再起動後にすべてのサービスが起動していることを確認します
systemctl --failed

アップグレードが完了しました。