อัปเกรด Ubuntu 20 เป็น Ubuntu 22
คำอธิบาย
ในบทความนี้ เราจะอธิบายกระบวนการอัปเกรดระบบปฏิบัติการจาก Ubuntu 20.04 เป็น Ubuntu 22.04
การอัปเกรด
ก่อนอัปเกรดระบบปฏิบัติการ เราขอแนะนำอย่างยิ่งให้ทำการสำรองข้อมูลทั้งหมดบนเซิร์ฟเวอร์แบบเต็ม ซึ่งจะทำหน้าที่เป็นหลักประกันในกรณีที่เกิดปัญหา โดยช่วยให้คุณสามารถกู้คืนระบบได้ในกรณีฉุกเฉิน
คำสั่งทั้งหมดระหว่างการอัปเกรด OS จะถูกรันในเทอร์มินัลของเซิร์ฟเวอร์ภายใต้ผู้ใช้ root
ปฏิเสธคำแนะนำของระบบในการแทนที่ไฟล์การกำหนดค่า (การดำเนินการเริ่มต้น)
ชื่อของไฟล์รีโพซิทอรีใน /etc/apt/sources.list.d ของ OS ของคุณอาจแตกต่างจากที่ใช้ในคำแนะนำนี้
- ตรวจสอบให้แน่ใจว่าคุณมีรีโพซิทอรีที่ถูกต้องใน
/etc/apt/sources.list. รายการรีโพซิทอรีสำหรับ Ubuntu 20.04 แสดงอยู่ด้านล่าง
รีโพซิทอรี Ubuntu 20
### Main repo for Ubuntu focal
deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse
### Updates repo for Ubuntu focal
deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
### Security repo for Ubuntu focal
deb http://security.ubuntu.com/ubuntu focal-security main restricted universe multiverse
deb-src http://security.ubuntu.com/ubuntu focal-security main restricted universe multiverse
### Backports repo for Ubuntu focal
deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
### Proposed repo for Ubuntu focal
deb http://archive.ubuntu.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-proposed main restricted universe multiverse
- อัปเดตแพ็กเกจปัจจุบันทั้งหมดเป็นเวอร์ชันล่าสุด
apt update && apt dist-upgrade
- แก้ไขข้อผิดพลาดที่อาจเกิดขึ้นในการอัปเกรด proftpd และ apache2
a2dismod php7.4
sed -e 's/^IdentLookups/#IdentLookups/' -i /etc/proftpd/proftpd.conf
- เรียกใช้การอัปเกรด
do-release-upgrade --allow-third-party
หากด้วยเหตุผลบางประการยูทิลิตีไม่ได้ติดตั้งไว้ คุณสามารถแก้ไขได้ด้วยคำสั่ง
apt install update-manager-core
อ่านผลลัพธ์ของยูทิลิตีอย่างละเอียดก่อนยืนยัน และตรวจสอบให้แน่ใจว่าจะไม่มีสิ่งที่ไม่จำเป็นถูกลบออกในกระบวนการ
การอัปเกรดจะถือว่าสำเร็จหากระบบแจ ้งให้คุณรีสตาร์ทเซิร์ฟเวอร์
ยอมรับการรีบูต
- ติดตั้ง PHP 8.1 พร้อมโมดูลพื้นฐาน, PHP8.1-FPM และโมดูลสำหรับ Apache2
apt install -f php php-fpm libapache2-mod-php libapache2-mod-php8.1 php-common php8.1-cgi php8.1-cli php8.1-common php8.1-curl php8.1-gd php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-readline php8.1-xml php8.1-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/php81/etc/php-fpm.d/* /etc/php/8.1/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 purge php7.4*
- เปิดใช้งาน PHP 8.1
a2enmod php8.1
- แก้ไขเวอร์ชัน PHP ในฐานข้อมูล FASTPANEL
sqlite3 /usr/local/fastpanel2/app/db/fastpanel2.db "update site set php_version = 81 where mode = 'mpm_itk';"
- ติดตั้งคอมโพเนนต์ Dovecot ที่จำเป็นสำหรับการรับอีเมล
apt install dovecot-lmtpd
- กำหนดค่าบริการใหม่
mogwai services configure -f
- รีสตาร์ทเซิร์ฟเวอร์
reboot
- ตรวจสอบให้แน่ใจว่าบริการทั้งหมดเริ่มทำงานหลังจากรีบูตแล้ว
systemctl --failed
การอัปเกรดเสร็จสมบูรณ์