جدول محتوایی
می دانید، CentOS8 به زودی به پایان می رسد. Red Hat در حال تغییر از CentOS8 به CentOS Stream است. جریان CentOS خود را بین فدورا لینوکس و RHEL قرار می دهد. این 100% کلون RHEL نیست بلکه جلوتر از توسعه RHEL است. آن را به عنوان یک توزیع میانی در نظر بگیرید. البته، اگر به سازگاری 100% RHEL نیاز دارید، به راکی لینوکس یا آلمالینوکس نیاز دارید.
نحوه آپگرید CentOS8 به CentOS Stream را با استفاده از دستور ssh ببینیم.
مرحله 1.Backup
مانند هر توسعه دهنده و sysadmin باتجربه، از تمام فایل های پروژه، پایگاه داده MySQL و فایل های پیکربندی پشتیبان تهیه کنید. بنابراین اگر مشکلی پیش بیاید، باید بتوانید سریع به عقب برگردید.بنابراین، نسخههای پشتیبان تأیید شده را نگه دارید. و نرم افزار زیر را نصب کنید:
- ELEP repo enabled for CentOS 8
- SELinux and FirewallD on CentOS 8 enabled
- Python 3.6.8.
- python3-mod_wsgi.
- Perl 5.26.3.
- mod_perl 2.0.11-4.
- Apache (httpd) 2.4.37 with mod_ssl, mod_security, mod_session, mod_speedycgi and other modules.
مخازن فعال را یادداشت کنید و فهرست کنید:
# yum repolist # yum repolist enabled > /root/pre.update.dnf.repo.txt
مرحله 2.نصب تمام به روز رسانی ها در CentOS8
با استفاده از دستور ssh وارد شوید:
ssh {userName}@{your-Server-Name-IP-Here} # for example: ssh vivek@nixcraft-centos-httpd
سپس به سادگی دستور dnf را اجرا کنید:
sudo dnf update
سپس جعبه لینوکس را با استفاده از دستور shutdown یا دستور reboot راه اندازی مجدد کنید:
sudo shutdown -r now
اجازه دهید نسخه CentOSLinux 8 را با استفاده از دستور cat command/more یا دستور کمتر تأیید کنیم:
more /etc/centos-release
مرحله 3.نصب بسته CentOS Stream
اجازه دهید فایل انتشار CentOS-Stream را با تایپ دستور dnf زیر نصب کنیم:
sudo dnf in centos-release-stream
مرحله 4. تبدیل CentOS8 به CentOS Stream
در حال حاضر بسته مورد نیاز در محل است. به عبارت دیگر، dnf آماده است تا راه ساده ای را برای ما فراهم کند تا بتوانیم از CentOS8 به CentOS Stream انتقال بدهیم. اما، اول، ما باید مخازن را مبادله کنیم. دستور زیر مخزن CentOS8 را حذف می کند و آن را با مخزن CentOS Stream جایگزین می کند. ما همه بهروزرسانیها و lib/برنامهها را از CentOS Stream دریافت خواهیم کرد. دستور زیر را اجرا کنید:
sudo dnf swap centos-linux-repos centos-stream-repos
Last metadata expiration check: 0:07:46 ago on Friday 03 December 2021 05:14:03 PM UTC. Dependencies resolved. ======================================================================================== Package Architecture Version Repository Size ======================================================================================== Installing: centos-stream-release noarch 8.6-1.el8 Stream-BaseOS 22 k replacing centos-linux-release.noarch 8.5-1.2111.el8 replacing centos-release-stream.x86_64 8.1-1.1911.0.7.el8 centos-stream-repos noarch 8-3.el8 extras 19 k Removing: centos-linux-repos noarch 8-3.el8 @baseos 26 k Transaction Summary ======================================================================================== Install 2 Packages Remove 1 Package Total download size: 42 k Is this ok [y/N]: y Downloading Packages: (1/2): centos-stream-repos-8-3.el8.noarch.rpm 588 kB/s | 19 kB 00:00 (2/2): centos-stream-release-8.6-1.el8.noarch.rpm 61 kB/s | 22 kB 00:00 ---------------------------------------------------------------------------------------- Total 91 kB/s | 42 kB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Running scriptlet: centos-stream-release-8.6-1.el8.noarch 1/1 Installing : centos-stream-release-8.6-1.el8.noarch 1/5 Installing : centos-stream-repos-8-3.el8.noarch 2/5 Obsoleting : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 3/5 Obsoleting : centos-linux-release-8.5-1.2111.el8.noarch 4/5 Erasing : centos-linux-repos-8-3.el8.noarch 5/5 warning: /etc/yum.repos.d/CentOS-Linux-PowerTools.repo saved as /etc/yum.repos.d/CentOS-Linux-PowerTools.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-Plus.repo saved as /etc/yum.repos.d/CentOS-Linux-Plus.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-HighAvailability.repo saved as /etc/yum.repos.d/CentOS-Linux-HighAvailability.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-FastTrack.repo saved as /etc/yum.repos.d/CentOS-Linux-FastTrack.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-Extras.repo saved as /etc/yum.repos.d/CentOS-Linux-Extras.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-Devel.repo saved as /etc/yum.repos.d/CentOS-Linux-Devel.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-ContinuousRelease.repo saved as /etc/yum.repos.d/CentOS-Linux-ContinuousRelease.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-BaseOS.repo saved as /etc/yum.repos.d/CentOS-Linux-BaseOS.repo.rpmsave warning: /etc/yum.repos.d/CentOS-Linux-AppStream.repo saved as /etc/yum.repos.d/CentOS-Linux-AppStream.repo.rpmsave Running scriptlet: centos-linux-repos-8-3.el8.noarch 5/5 Verifying : centos-stream-repos-8-3.el8.noarch 1/5 Verifying : centos-stream-release-8.6-1.el8.noarch 2/5 Verifying : centos-linux-release-8.5-1.2111.el8.noarch 3/5 Verifying : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 4/5 Verifying : centos-linux-repos-8-3.el8.noarch 5/5 Installed: centos-stream-release-8.6-1.el8.noarch centos-stream-repos-8-3.el8.noarch Removed: centos-linux-repos-8-3.el8.noarch Complete!
در نهایت نصب CentOS8 را به جریان CentOS منتقل کنید
اولین لیست مخازن، اجرا کنید:
sudo dnf repolist
ارتقاء CentOS8 به CentOS Stream
اکنون به هدف خود نزدیک شده ایم. در مرحله بعد، ما باید بسته هایی را برای CentOS Stream ABI/API دریافت کنیم. این کار بستهها را برای مطابقت با ABI/API جدید ارتقا یا کاهش میدهد و به دلیل تغییر ABI/API، سازگاری 100% RHEL را از بین میبرد. من اینطوری راحتم. پس اجازه دهید این کار را انجام دهیم:
sudo dnf distro-sync
Last metadata expiration check: 0:00:19 ago on Friday 03 December 2021 05:28:32 PM UTC. Dependencies resolved. ======================================================================================== Package Arch Version Repo Size ======================================================================================== Upgrading: NetworkManager x86_64 1:1.36.0-0.1.el8 baseos 2.3 M NetworkManager-libnm x86_64 1:1.36.0-0.1.el8 baseos 1.8 M NetworkManager-team x86_64 1:1.36.0-0.1.el8 baseos 149 k NetworkManager-tui x86_64 1:1.36.0-0.1.el8 baseos 341 k bash x86_64 4.4.20-3.el8 baseos 1.5 M c-ares x86_64 1.13.0-6.el8 baseos 93 k ca-certificates noarch 2021.2.50-82.el8 baseos 390 k cloud-init noarch 21.1-9.el8 appstream 1.0 M cpio x86_64 2.12-11.el8 baseos 266 k cronie x86_64 1.5.2-6.el8 baseos 118 k cronie-anacron x86_64 1.5.2-6.el8 baseos 42 k crypto-policies noarch 20211116-1.gitae470d6.el8 baseos 64 k crypto-policies-scripts noarch 20211116-1.gitae470d6.el8 baseos 83 k device-mapper x86_64 8:1.02.181-1.el8 baseos 377 k device-mapper-libs x86_64 8:1.02.181-1.el8 baseos 409 k dnf noarch 4.7.0-5.el8 baseos 543 k dnf-automatic noarch 4.7.0-5.el8 baseo ..... .. vim-enhanced x86_64 2:8.0.1763-16.el8_5.2 appstream 1.4 M vim-filesystem noarch 2:8.0.1763-16.el8_5.2 appstream 49 k vim-minimal x86_64 2:8.0.1763-16.el8_5.2 baseos 573 k yum noarch 4.7.0-5.el8 baseos 206 k Installing dependencies: glibc-gconv-extra x86_64 2.28-170.el8 baseos 1.4 M Installing weak dependencies: sqlite x86_64 3.26.0-15.el8 baseos 668 k Downgrading: unzip x86_64 6.0-45.el8 baseos 195 k Transaction Summary ======================================================================================== Install 2 Packages Upgrade 86 Packages Downgrade 1 Package Total download size: 95 M Downloading Packages: (1/89): unzip-6.0-45.el8.x86_64.rpm 571 kB/s | 195 kB 00:00 (2/89): sqlite-3.26.0-15.el8.x86_64.rpm 1.4 MB/s | 668 kB 00:00 ..... .. vim-filesystem-2:8.0.1763-16.el8_5.2.noarch vim-minimal-2:8.0.1763-16.el8_5.2.x86_64 yum-4.7.0-5.el8.noarch Downgraded: unzip-6.0-45.el8.x86_64 Installed: glibc-gconv-extra-2.28-170.el8.x86_64 sqlite-3.26.0-15.el8.x86_64 Complete!
مرحله 5.سیستم را راه اندازی مجدد کنید
اجرا کن:
sudo systemctl reboot
مرحله 6.تأیید
برای تأیید، نسخه جریان CentOS را ببینید:
cat /etc/centos-release
مطمئن شوید که هیچ خطایی وجود ندارد. اجازه دهید خطاهای ورود به سیستم لینوکس را ببینیم یا مشاهده کنیم:
sudo tail -f /var/log/messages sudo grep -i -E 'err|wan|cri' /var/log/messages sudo grep -i -E 'err|wan|cri' /var/log/nginx/error.log
پورت های باز در لینوکس را فهرست کنید و مطمئن شوید که سرویس هایی مانند httpd، mysqld و موارد دیگر با استفاده از دستور systemctl یا دستور netstat دستور/ss در حال اجرا هستند:
sudo ss -tulpn systemctl status httpd systemctl status mysqld
یادداشتی در مورد مخازن dnf شخص ثالث
برخی از مخازن dnf ممکن است تغییر نام داده یا غیرفعال شوند تا از مشکلات ارتقاء جلوگیری شود. بهتر است آنها را به صورت دستی تأیید کنید. مثلا:
# yum repolist # yum repolist enabled > /root/post.update.dnf.repo.txt
می توانید این دو فایل را با هم مقایسه کنید:
# cat /root/post.update.dnf.repo.txt # cat /root/pre.update.dnf.repo.txt # diff /root/pre.update.dnf.repo.txt /root/post.update.dnf.repo.txt
بخوانید: تبدیل CentOS8 به AlmaLinux