อัปเกรด Debian 10 เป็น Debian 11
คำอธิบาย
ในบทความนี้ เราจะอธิบายกระบวนการอัปเกรด OS จาก Debian 10 เป็น Debian 11
การอัปเกรด
ก่อนอัปเกรดระบบปฏิบัติการ เราขอแนะนำอย่างยิ่งให้สำรองข้อมูลทั้งหมดบนเซิร์ฟเวอร์แบบเต็มก่อน การทำเช่นนี้จะเป็นหลักประกันในกรณีที่เกิดปัญหา ทำให้คุณสามารถกู้คืนระบบได้ในกรณีฉุกเฉิน
คำสั่งทั้งหมดระหว่างการอัปเกรด OS จะต้องดำเนินการในเทอร์มิน ัลของเซิร์ฟเวอร์ภายใต้ผู้ใช้ root
ปฏิเสธคำแนะนำของระบบในการแทนที่ไฟล์การกำหนดค่า (การดำเนินการเริ่มต้น)
ชื่อของไฟล์รีโพซิทอรีใน /etc/apt/sources.list.d ของ OS ของคุณอาจแตกต่างจากที่ใช้ในคำแนะนำนี้
- ตรวจสอบให้แน่ใจว่าคุณมีรีโพซิทอรีที่ถูกต้องใน
/etc/apt/sources.listรายการรีโพซิทอรีสำหรับ Debian 9 อยู่ด้านล่าง
รีโพซิทอรี Debian 10
deb http://archive.debian.org/debian/ buster main contrib non-free
deb-src http://archive.debian.org/debian/ buster main contrib non-free
deb http://archive.debian.org/debian/ buster-updates main contrib non-free
deb-src http://archive.debian.org/debian/ buster-updates main contrib non-free
deb http://archive.debian.org/debian-security buster/updates main contrib non-free
deb-src http://archive.debian.org/debian-security buster/updates main contrib non-free
- อัปเดตแพ็กเกจปัจจุบันทั้งหมดเป็นเวอร์ชันล่าสุด
apt update && apt dist-upgrade
- แทนที่รายการรีโพซิทอรีใน
/etc/apt/sources.listเป็นรายการจาก Debian 11 รายการรีโพซิทอรีสำหรับ 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
- แก้ไขข้อผิดพลาดที่อาจเกิดขึ้นในการอัปเดต proftpd
sed -e 's/^IdentLookups/#IdentLookups/' -i /etc/proftpd/proftpd.conf
- อัปเดตแพ็กเกจ เรียกใช้คำสั ่งต่อไปนี้ทีละคำสั่ง
apt update
apt upgrade
apt dist-upgrade
- อัปเดตรีโพซิทอรีอื่น ๆ
sed -i 's|buster|bullseye|g' /etc/apt/sources.list.d/*.list
- เพิ่มคีย์รีโพซิทอรี nginx
wget -q -O - http://nginx.org/keys/nginx_signing.key |apt-key add -
รีโพซิทอรี Debian 11 ไม่มีฐานข้อมูลเซิร์ฟเวอร์เวอร์ชันเก่า หากต้องการอัปเกรดต่อ คุณต้องระบุเวอร์ชัน 8.0 และ 10.5 สำหรับ MySQL และ MariaDB ตามลำดับ ใน /etc/apt/sources.list.d/ คุณสามารถดูเวอร์ชันปัจจุบันของฐานข้อมูลเซิร์ฟเวอร์ได้โดยเรียกใช้คำสั่ง
mysql -V
หากใช้ MySQL ให้เปลี่ยนเวอร์ชันแพ็กเกจและเพิ่มคีย์รีโพซิทอรี:
sed -i 's/mysql-5.7/mysql-8.0/g' /etc/apt/sources.list.d/mysql.list
wget -q -O - http://repo.mysql.com/RPM-GPG-KEY-mysql |apt-key add -
สำหรับ MariaDB ที่ต่ำกว่า 10.5 ให้ใช้:
sed -i 's/10.[0-4]/10.9/' /etc/apt/sources.list.d/mariadb.list
- อัปเดตแพ็กเกจ
apt update
apt dist-upgrade
- ติดตั้ง PHP 7.3 พร้อมโมดูลพื้นฐาน, PHP7.3-FPM และโมดูล Apache2
dpkg -l | awk '/php7.3/ {print $2}' | sed -e 's/7.3/7.4/' | xargs apt install -y
apt install -f php php-fpm libapache2-mod-php libapache2-mod-php7.4 php-common php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline php7.4-xml php7.4-xmlrpc php-imagick php-memcached
phpenmod calendar ctype curl dom exif fileinfo ftp gd gettext iconv json mbstring mysqli mysqlnd pdo pdo_mysql phar posix readline shmop simplexml sockets sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlrpc xmlwriter xsl opcache imagick memcached
- แทนที่การกำหนดค่า PHP-FPM
mv /opt/php74/etc/php-fpm.d/* /etc/php/7.4/fpm/pool.d/
rm /etc/php/7.3/fpm/pool.d/www.conf
mv /etc/php/7.3/fpm/pool.d/* /opt/php73/etc/php-fpm.d/
- ลบ PHP 7.3
apt purge php7.3*
- เปิดใช้งาน PHP 7.4
a2enmod php7.4
- แก้ไขเวอร์ชัน PHP ในฐานข้อมูล FASTPANEL
sqlite3 /usr/local/fastpanel2/app/db/fastpanel2.db "update site set php_version = 74 where mode = 'mpm_itk';"
- ติดตั้ งคอมโพเนนต์ Dovecot ที่จำเป็นสำหรับการรับเมล
apt install dovecot-lmtpd
- กำหนดค่าบริการใหม่
mogwai services configure -f
- การกำหนดค่าเพิ่มเติมขึ้นอยู่กับฐานข้อมูลเซิร์ฟเวอร์ที่ใช้
สำหรับ MySQL 8 - เพิ่มการตั้งค่าความเข้ากันได้
echo 'disable-log-bin
mysqlx = OFF
default-authentication-plugin = mysql_native_password
character-set-server = utf8
collation-server = utf8_unicode_ci
' >> /etc/mysql/my.cnf.fastpanel/99-fastpanel.cnf
สำหรับ MariaDB - เรียกใช้ mysql_upgrade
mysql_upgrade
- รีสตาร์ทเซิร์ฟเวอร์
reboot
- ตรวจสอบให้แน่ใจว่าบริการทั้งหมดเริ่มทำงานหลังจากรีบูต
systemctl --failed
การอัปเกรดเสร็จสมบูรณ์