อัปเกรด Ubuntu 18 เป็น Ubuntu 20
คำอธิบาย
ในบทความนี้ เราจะอธิบายกระบวนการอัปเกรดระบบปฏิบัติการจาก Ubuntu 18.04 เป็น Ubuntu 20.04
การอัปเกรด
ก่อนอัปเกรดระบบปฏิบัติการ เราขอแนะนำอย่างยิ่งให้สำรองข้อมูลทั้งหมดบนเซิร์ฟเวอร์แบบเต็ม สิ่งนี้จะทำหน้าที่เป็นหลักประกันในกรณีที่เกิดปัญหา ทำให้คุณสามารถกู้คืนระบบได้ในกรณีฉุกเฉิน
คำสั่งทั้งหมดระหว่างการอัปเกรด OS จะดำเนินการในเทอร์มินัลของเซิร์ฟเวอร์ภายใต้ผู้ใช้ root
ปฏิเสธคำแนะนำของระบบในการแทนที่ไฟล์การกำหนดค่า (การดำเนินการเริ่มต้น)
ชื่อของไฟล์รีโพซิทอรีใน /etc/apt/sources.list.d ของ OS ของคุณอาจแตกต่างจากที่ใช้ในคำแนะนำนี้
- ตรวจสอบให้แน่ใจว่าคุณมีรีโพซิทอรีที่ถูกต้องใน
/etc/apt/sources.listดูรายการรีโพซิทอรีสำหรับ Ubuntu 18.04 ได้ด้านล่าง
รีโพซิทอรี Ubuntu 18
### Main repo for Ubuntu bionic
deb http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse
### Updates repo for Ubuntu bionic
deb http://archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse
### Security repo for Ubuntu bionic
deb http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb-src http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
### Backports repo for Ubuntu bionic
deb http://archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse
### Proposed repo for Ubuntu bionic
deb http://archive.ubuntu.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ bionic-proposed main restricted universe multiverse
- อัปเดตแพ็กเกจปัจจุบันทั้งหมดเป็นเวอร์ชันล่าสุด
apt update && apt dist-upgrade
- แก้ไขข้อผิดพลาดที่อาจเกิดขึ้นในการอัปเกรด proftpd และ apache2
a2dismod php7.2
sed -e 's/^IdentLookups/#IdentLookups/' -i /etc/proftpd/proftpd.conf
- ลบรายการ query-cache ทั้งหมดออกจากการกำหนดค่า mysql และปรับรีโพซิทอรี mysql:
sed -i 's/^query[_,-]cache[^ ]*//' /etc/mysql/my.cnf.fastpanel/99-fastpanel.cnf
- เรียกใช้การอัปเดต
do-release-upgrade --allow-third-party
หากยูทิลิตีไม่ได้ติดตั้งด้วยเหตุผลบางประการ คุณสามารถแก้ไขได้ด้วยคำสั่ง
apt install update-manager-core
อ่านผลลัพธ์ของยูทิลิตีอย่างละเอียดก่อนยืนยัน และตรวจสอบให้แน่ใจว่าจะไม่มีสิ่งที่ไม่จำเป็นถูกลบออกในกระบวนการ
การอัปเกรดถือว่าสำเร็จหากระบบแจ้งให้คุณรีสตาร์ทเซิร์ฟเวอร์
ยอมรับการรีบูต
- ติดตั้ง PHP 7.4 พร้อมโมดูลพื้นฐาน, PHP7.4-FPM และโมดูลสำหรับ Apache2
apt-get 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 json 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/php74/etc/php-fpm.d/* /etc/php/7.4/fpm/pool.d/
rm /etc/php/7.2/fpm/pool.d/www.conf
mv /etc/php/7.2/fpm/pool.d/* /etc/php/7.4/fpm/pool.d/
- แก้ไขเวอร์ชัน 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
การอัปเกรดเสร็จสมบูรณ์