{"id":2714,"date":"2024-02-19T19:25:12","date_gmt":"2024-02-19T13:55:12","guid":{"rendered":"https:\/\/www.veeble.org\/kb\/?p=2714"},"modified":"2025-04-10T11:24:38","modified_gmt":"2025-04-10T05:54:38","slug":"migrate-centos-7-to-centos-8-stream","status":"publish","type":"post","link":"https:\/\/www.veeble.com\/kb\/migrate-centos-7-to-centos-8-stream\/","title":{"rendered":"CentOS 7 to CentOS 8 Stream Migration: Upgrade Guide"},"content":{"rendered":"\n<p>This guide covers upgrading from CentOS 7 to CentOS 8 Stream, focusing on a smooth, data-safe transition. With CentOS 7 ending in June 2024 and the shift to CentOS Stream 8, the guide is vital for those planning the upgrade.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.veeble.org\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2.png\" target=\"_blank\" rel=\"noopener\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1039\" height=\"84\" data-id=\"2719\" src=\"https:\/\/www.veeble.org\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2.png\" alt=\"CentOS 7 to CentOS 8 Stream\" class=\"wp-image-2719\" srcset=\"https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2.png 1039w, https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2-300x24.png 300w, https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2-1024x83.png 1024w, https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-16-185412-2-768x62.png 768w\" sizes=\"(max-width: 1039px) 100vw, 1039px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>While transitioning from CentOS 7 to CentOS Stream 8 can provide opportunities to align with the evolving direction of the CentOS project and benefit from closer integration with Red Hat Enterprise Linux (RHEL) development, it&#8217;s essential to approach such changes cautiously. Preserving crucial data and configurations should be a top priority throughout the transition process. The goal of this guide is to offer you a thorough roadmap for migrating your CentOS 7 system to CentOS Stream 8 while maintaining the integrity of your data. By meticulously converting CentOS 7 to CentOS 8 and then to CentOS 8 Stream by following these steps, you can navigate the transition with confidence, ensuring a smooth and seamless migration process. <\/p>\n\n\n\n<pre class=\"wp-block-verse\">Ensuring data integrity cannot be overstated. Before beginning the conversion process, back up all critical data, including system files, user data, and configuration files. Tools like <a href=\"https:\/\/www.veeble.org\/kb\/setup-linux-vps-backup-server-using-rsync\/\" target=\"_blank\" rel=\"noopener\">rsync<\/a>, tar, and external backup services can be utilized.<\/pre>\n\n\n\n<p><strong>Also Read:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-veeble-hosting wp-block-embed-veeble-hosting\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.veeble.org\/kb\/setup-linux-vps-backup-server-using-rsync\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Before upgrading to CentOS Stream 8, make sure your existing CentOS 7 system is properly updated. This step lowers the possibility of conflict of packages throughout the conversion process. To update it, execute the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum update -y<\/code><\/pre>\n\n\n\n<p>Since CentOS 8 has a different package set compared to CentOS 7, some packages that were available in CentOS 7 might not be available in CentOS 8&#8217;s default repositories.  Ensuring that you have access to a wider range of software packages during and after the transition by installing the EPEL repository beforehand will be the best solution for it. To do this execute the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install epel-release -y<\/code><\/pre>\n\n\n\n<p>To manage RPM package configuration files to avoid conflicts that arise during package updates, install <code>rpmconf<\/code> utility and check the configuration files of all  installed packages:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install rpmconf -y<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo rpmconf -a<\/code><\/pre>\n\n\n\n<p>Simplify package management and repository handling for transitioning from CentOS 7 to CentOS 8 by install yum-utils which is needed for removing packages:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install yum-utils -y<\/code><\/pre>\n\n\n\n<p>After installing yum-utils, go ahead with removing all yum packages that are not required by using the commands:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo package-cleanup --leaves<br>sudo package-cleanup --orphans<\/code><\/pre>\n\n\n\n<p>After successful removal reboot the system!<\/p>\n\n\n\n<p>CentOS 8 and distributions based on RHEL 8 have moved from using <code><a href=\"https:\/\/en.wikipedia.org\/wiki\/Yum_(software)\" target=\"_blank\" rel=\"noopener\">yum<\/a><\/code> package manager as their primary package management tool to <code><a href=\"https:\/\/en.wikipedia.org\/wiki\/DNF_(software)\" target=\"_blank\" rel=\"noopener\">dnf<\/a><\/code> package manager. Therefore yum is no longer needed for us and we now need <code>dnf<\/code>. When the server becomes online again after the reboot, access the server and remove <code>yum<\/code> followed by installing <code>dnf<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install dnf -y\nsudo dnf remove yum yum-metadata-parser -y\n\nsudo rm -Rf \/etc\/yum<\/code><\/pre>\n\n\n\n<p>Now, upgrade your CentOS 7 server to CentOS 8 with <code>dnf<\/code> package manager:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf update -y<\/code><\/pre>\n\n\n\n<p>After updating, install CentOS 8 release package and upgrade with the installed package:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf install http:\/\/vault.centos.org\/8.5.2111\/BaseOS\/x86_64\/os\/Packages\/{centos-linux-repos-8-3.el8.noarch.rpm,centos-linux-release-8.5-1.2111.el8.noarch.rpm,centos-gpg-keys-8-3.el8.noarch.rpm} -y<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf upgrade https:\/\/dl.fedoraproject.org\/pub\/epel\/epel-release-latest-8.noarch.rpm -y<\/code><\/pre>\n\n\n\n<p>Remove all cached packages and metadata and go ahead with removing CentOS 7 kernel:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf clean all<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo rpm -e `rpm -q kernel`<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-verse\">To ensure a smoother transition and to provide a safety net for compatibility with legacy software and scripts, install <code><a href=\"https:\/\/centos.pkgs.org\/7\/centos-x86_64\/sysvinit-tools-2.88-14.dsf.el7.x86_64.rpm.html\" target=\"_blank\" rel=\"noopener\">sysvinit-tools<\/a><\/code>. This minimizes the potential for system management issues. <\/pre>\n\n\n\n<p class=\"has-text-align-left\">The system will now fully function as a CentOS 8 OS. The remaining step is to transition it to CentOS 8 Stream OS. <\/p>\n\n\n\n<p>Inorder to do it, update the system and then install stream CentOS 8 release stream repository:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf update -y<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf install centos-release-stream -y<\/code><\/pre>\n\n\n\n<p>Adjust your system&#8217;s repositories to point to CentOS Stream instead of the standard CentOS repositories:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf swap centos-linux-repos centos-stream-repos -y<\/code><\/pre>\n\n\n\n<p>Now, synchronize your installed packages with the versions in CentOS Stream. This step upgrades your system to the Stream version.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dnf distro-sync -y<\/code><\/pre>\n\n\n\n<p>After the synchronization process completes, verify that your system has been successfully converted to CentOS Stream with the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cat \/etc\/centos-release<\/code><\/pre>\n\n\n\n<p>Your output should look like this:<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.veeble.org\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-19-191758.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"470\" height=\"66\" data-id=\"2725\" src=\"https:\/\/www.veeble.org\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-19-191758.png\" alt=\"cat \/etc\/centos-release\nCentOS Stream release 8\" class=\"wp-image-2725\" srcset=\"https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-19-191758.png 470w, https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-19-191758-300x42.png 300w\" sizes=\"(max-width: 470px) 100vw, 470px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Following these steps will complete your CentOS 7 to CentOS 8 Stream Migration smoothly and efficiently, you&#8217;ve successfully transitioned your system to CentOS Stream, paving the way for a more dynamic and updated operating environment. \ud83d\ude0e\ud83c\udf89<\/p>\n\n\n\n<div style=\"height:45px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-uagb-call-to-action uagb-block-dae25907 wp-block-button\"><div class=\"uagb-cta__wrap\"><h3 class=\"uagb-cta__title\">Build Your Digital Foundation<\/h3><p class=\"uagb-cta__desc\">Invest in a robust and reliable platform for long-term growth. Secure your digital future.<\/p><\/div><div class=\"uagb-cta__buttons\"><a href=\"https:\/\/www.veeble.com\/in\/vps-hosting\/\" class=\"uagb-cta__button-link-wrapper wp-block-button__link\" target=\"_blank\" rel=\"noopener noreferrer\">Explore VPS Plans<svg xmlns=\"https:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\"><path d=\"M504.3 273.6l-112.1 104c-6.992 6.484-17.18 8.218-25.94 4.406c-8.758-3.812-14.42-12.45-14.42-21.1L351.9 288H32C14.33 288 .0002 273.7 .0002 255.1S14.33 224 32 224h319.9l0-72c0-9.547 5.66-18.19 14.42-22c8.754-3.809 18.95-2.075 25.94 4.41l112.1 104C514.6 247.9 514.6 264.1 504.3 273.6z\"><\/path><\/svg><\/a><\/div><\/div>\n\n\n\n<div style=\"height:45px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Related Tutorials:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-veeble-hosting wp-block-embed-veeble-hosting\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.veeble.org\/kb\/how-to-migrate-centos-8-to-almalinux\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-veeble-hosting wp-block-embed-veeble-hosting\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.veeble.org\/kb\/upgrade-centos-8-stream-to-centos-9-stream\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>This guide covers upgrading from CentOS 7 to CentOS 8 Stream, focusing on a smooth, data-safe transition. With CentOS 7 ending in June 2024 [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":8554,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[5],"tags":[],"class_list":["post-2714","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux"],"uagb_featured_image_src":{"full":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide.jpg",1536,1024,false],"thumbnail":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide-150x150.jpg",150,150,true],"medium":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide-300x200.jpg",300,200,true],"medium_large":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide-768x512.jpg",768,512,true],"large":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide-1024x683.jpg",1024,683,true],"1536x1536":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide.jpg",1536,1024,false],"2048x2048":["https:\/\/www.veeble.com\/kb\/wp-content\/uploads\/2024\/02\/CentOS-7-to-CentOS-8-Stream-Migration-Upgrade-Guide.jpg",1536,1024,false]},"uagb_author_info":{"display_name":"Adrian Antony","author_link":"https:\/\/www.veeble.com\/kb\/author\/adrian\/"},"uagb_comment_info":0,"uagb_excerpt":"This guide covers upgrading from CentOS 7 to CentOS 8 Stream, focusing on a smooth, data-safe transition. With CentOS 7 ending in June 2024 [&hellip;]","_links":{"self":[{"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/posts\/2714","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/comments?post=2714"}],"version-history":[{"count":16,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/posts\/2714\/revisions"}],"predecessor-version":[{"id":7236,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/posts\/2714\/revisions\/7236"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/media\/8554"}],"wp:attachment":[{"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/media?parent=2714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/categories?post=2714"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.veeble.com\/kb\/wp-json\/wp\/v2\/tags?post=2714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}