如何将CentOS7升级至CentOS8(详细步骤)

这篇文章以具体的示例来介绍一下从CentOS 7升级值CentOS 8的方法。

事前准备

最小化安装CentOS 7,具体版本如下所示:7.6.1810

[root@liumiao ~]# uname -a
Linux devops 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@liumiao ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@liumiao ~]#

步骤1: 安装epel-relase、yum-utils和rpmconf

执行命令:yum install yum-utils epel-release -y

执行日志如下所示:

...省略
========================================================================================================================================
 Package        Arch      Version        Repository     Size
========================================================================================================================================
Installing:
 epel-release      noarch      7-11         extras      15 k
 yum-utils       noarch      1.1.31-52.el7      base      121 k
Installing for dependencies:
 libxml2-python      x86_64      2.9.1-6.el7_2.3      base      247 k
 python-chardet      noarch      2.2.1-3.el7       base      227 k
 python-kitchen      noarch      1.1.1-5.el7       base      267 k

Transaction Summary
========================================================================================================================================
Install 2 Packages (+3 Dependent packages)
...省略

安装命令:yum install rpmconf -y

安装日志如下所示:

[root@liumiao ~]# yum install rpmconf -y
...省略
========================================================================================================================================
 Package       Arch       Version        Repository     Size
========================================================================================================================================
Installing:
 rpmconf       noarch       0.3.4-1.el7       epel       21 k

Transaction Summary
========================================================================================================================================
Install 1 Package
...省略
Complete![root@liumiao ~]# 

步骤2: 安装前检查

检查配置:rpmconf -a

执行日志如下所示,如有选择直接使用缺省设定。

[root@liumiao ~]# rpmconf -a
[root@liumiao ~]#

检查叶节点:列出和其他RPM没有依赖的软件包

[root@liumiao ~]# package-cleanup --leaves
Loaded plugins: fastestmirror
libsysfs-2.1.0-16.el7.x86_64
[root@liumiao ~]# 

检查不再提供的软件包:列出当前仓库中不提供升级的软件包信息

[root@liumiao ~]# package-cleanup --orphans
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.bit.edu.cn
 * epel: hkg.mirror.rackspace.com
 * extras: mirror.bit.edu.cn
 * updates: ap.stykers.moe
GeoIP-1.5.0-13.el7.x86_64
...省略
yum-plugin-fastestmirror-1.1.31-50.el7.noarch
[root@liumiao ~]#

步骤3: 安装dnf 并执行dnf update

CentOS 8使用dnf作为缺省的包管理工具,使用yum安装自己的替代工具dnf并删除自己。

安装命令:yum install dnf -y

执行日志如下所示:

[root@liumiao ~]# yum install dnf -y
...省略
========================================================================================================================================
 Package                Arch           Version                 Repository        Size
========================================================================================================================================
Installing:
 dnf                  noarch          4.0.9.2-1.el7_6             extras          357 k
Installing for dependencies:
 deltarpm                x86_64          3.6-3.el7                base           82 k
 dnf-data                noarch          4.0.9.2-1.el7_6             extras          51 k
 libcomps                x86_64          0.1.8-12.el7              extras          75 k
 libdnf                 x86_64          0.22.5-1.el7_6             extras          533 k
 libmodulemd              x86_64          1.6.3-1.el7               extras          141 k
 librepo                x86_64          1.8.1-7.el7               base           81 k
 libreport-filesystem          x86_64          2.1.11-43.el7.centos          base           40 k
 libsolv                x86_64          0.6.34-4.el7              base           329 k
 libyaml                x86_64          0.1.4-11.el7_0             base           55 k
 python-enum34             noarch          1.0.4-1.el7               base           52 k
 python2-dnf              noarch          4.0.9.2-1.el7_6             extras          414 k
 python2-hawkey             x86_64          0.22.5-1.el7_6             extras          68 k
 python2-libcomps            x86_64          0.1.8-12.el7              extras          47 k
 python2-libdnf             x86_64          0.22.5-1.el7_6             extras          608 k

Transaction Summary
========================================================================================================================================
Install 1 Package (+14 Dependent packages)
...省略
[root@liumiao ~]#

清除yum:dnf -y remove yum yum-metadata-parser && rm -rf /etc/yum

执行日志如下所示:

[root@liumiao ~]# dnf -y remove yum yum-metadata-parser
Dependencies resolved.
========================================================================================================================================
 Package                  Arch          Version                Repository        Size
========================================================================================================================================
Removing:
 yum                    noarch         3.4.3-161.el7.centos         @System         5.6 M
 yum-metadata-parser            x86_64         1.1.4-10.el7             @System          57 k
Removing dependent packages:
 yum-plugin-fastestmirror         noarch         1.1.31-50.el7             @System          53 k
 yum-utils                 noarch         1.1.31-52.el7             @System         337 k

Transaction Summary
========================================================================================================================================
Remove 4 Packages

Freed space: 6.0 M
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Preparing    :                                                        1/1
 Erasing     : yum-utils-1.1.31-52.el7.noarch                                         1/4
 Erasing     : yum-plugin-fastestmirror-1.1.31-50.el7.noarch                                 2/4
 Erasing     : yum-3.4.3-161.el7.centos.noarch                                        3/4
 Erasing     : yum-metadata-parser-1.1.4-10.el7.x86_64                                    4/4
 Verifying    : yum-3.4.3-161.el7.centos.noarch                                        1/4
 Verifying    : yum-metadata-parser-1.1.4-10.el7.x86_64                                    2/4
 Verifying    : yum-plugin-fastestmirror-1.1.31-50.el7.noarch                                 3/4
 Verifying    : yum-utils-1.1.31-52.el7.noarch                                         4/4

Removed:
 yum-3.4.3-161.el7.centos.noarch   yum-metadata-parser-1.1.4-10.el7.x86_64   yum-plugin-fastestmirror-1.1.31-50.el7.noarch
 yum-utils-1.1.31-52.el7.noarch   

Complete!
[root@liumiao ~]# ls /etc/yum
pluginconf.d protected.d vars
[root@liumiao ~]# rm -rf /etc/yum
[root@liumiao ~]#

就像使用yum update那样使用dnf update进行更新。

[root@liumiao ~]# dnf upgrade
Extra Packages for Enterprise Linux 7 - x86_64                             5.6 MB/s | 16 MB   00:02
CentOS-7 - Base                                             3.5 MB/s | 10 MB   00:02
CentOS-7 - Updates                                           2.9 MB/s | 5.4 MB   00:01
CentOS-7 - Extras                                            40 kB/s | 251 kB   00:06
 ...省略
========================================================================================================================================
 Package                  Arch        Version                   Repository      Size
========================================================================================================================================
Upgrading:
 epel-release                noarch       7-12                     epel         15 k
 ...省略
 tzdata                   noarch       2019c-1.el7                 updates       493 k
Installing dependencies:
 bind-export-libs              x86_64       32:9.11.4-9.P2.el7              base         1.1 M
 geoipupdate                x86_64       2.5.0-1.el7                 base         35 k
 kernel                   x86_64       3.10.0-1062.4.3.el7             updates        50 M

Transaction Summary
========================================================================================================================================
Install  3 Packages
Upgrade 164 Packages

Total download size: 259 M
Is this ok [y/N]: y
Downloading Packages:
 ...省略
 Installed:
 bind-export-libs-32:9.11.4-9.P2.el7.x86_64     geoipupdate-2.5.0-1.el7.x86_64     kernel-3.10.0-1062.4.3.el7.x86_64    

Complete!
[root@liumiao ~]#

使用dnf更新CentOS 8的包

执行日志如下所示:

[root@liumiao ~]# dnf -y upgrade http://mirror.bytemark.co.uk/centos/8/BaseOS/x86_64/os/Packages/centos-release-8.0-0.1905.0.9.el8.x86_64.rpm

Extra Packages for Enterprise Linux 7 - x86_64                             4.3 MB/s | 16 MB   00:03
Last metadata expiration check: 0:00:01 ago on Wed 20 Nov 2019 07:58:07 AM EST.
centos-release-8.0-0.1905.0.9.el8.x86_64.rpm                               13 kB/s | 26 kB   00:01
Dependencies resolved.
========================================================================================================================================
 Package             Arch           Version                 Repository           Size
========================================================================================================================================
Upgrading:
 centos-release          x86_64          8.0-0.1905.0.9.el8           @commandline          26 k

Transaction Summary
========================================================================================================================================
Upgrade 1 Package

Total size: 26 k
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Preparing    :                                                        1/1
 Upgrading    : centos-release-8.0-0.1905.0.9.el8.x86_64                                    1/2
 Cleanup     : centos-release-7-7.1908.0.el7.centos.x86_64                                  2/2
 Verifying    : centos-release-8.0-0.1905.0.9.el8.x86_64                                    1/2
 Verifying    : centos-release-7-7.1908.0.el7.centos.x86_64                                  2/2

Upgraded:
 centos-release-8.0-0.1905.0.9.el8.x86_64                                               

Complete!
[root@liumiao ~]#

更新epel仓库

执行日志如下所示:

[root@liumiao ~]# dnf -y upgrade https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Extra Packages for Enterprise Linux 7 - x86_64                             578 kB/s | 16 MB   00:28
CentOS-8 - Base                                             635 kB/s | 7.9 MB   00:12
CentOS-8 - Extras                                            1.7 kB/s | 2.1 kB   00:01
CentOS-8 - AppStream                                          1.3 MB/s | 6.3 MB   00:04
epel-release-latest-8.noarch.rpm                                    7.7 kB/s | 21 kB   00:02
Dependencies resolved.
========================================================================================================================================
 Package              Arch             Version            Repository             Size
========================================================================================================================================
Upgrading:
 epel-release            noarch            8-7.el8            @commandline            21 k

Transaction Summary
========================================================================================================================================
Upgrade 1 Package

Total size: 21 k
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Preparing    :                                                        1/1
 Upgrading    : epel-release-8-7.el8.noarch                                          1/2
 Cleanup     : epel-release-7-12.noarch                                            2/2
 Verifying    : epel-release-8-7.el8.noarch                                          1/2
 Verifying    : epel-release-7-12.noarch                                            2/2

Upgraded:
 epel-release-8-7.el8.noarch                                                     

Complete!
[root@liumiao ~]# 

此时确认版本信息,已经发生了变化

[root@liumiao ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
[root@liumiao ~]#

步骤4: 删除无用文件和CentOS 7的内核并安装CentOS 8的内核

删除无用的临时文件:dnf clean all

执行日志如下所示:

[root@liumiao ~]# dnf clean all
62 files removed
[root@liumiao ~]#

删除CentOS 7的旧核: rpm -e `rpm -q kernel`

执行日志如下所示:

[root@liumiao ~]# rpm -e `rpm -q kernel`
[root@liumiao ~]#

确认删除冲突的包

[root@liumiao ~]# rpm -e --nodeps sysvinit-tools
[root@liumiao ~]# 

更新CentOS 8系统

[root@liumiao ~]# dnf -y --releasever=8 --allowerasing --setopt=deltarpm=false distro-sync
Extra Packages for Enterprise Linux 8 - x86_64                             2.0 MB/s | 3.5 MB   00:01
CentOS-8 - Base                                             160 kB/s | 7.9 MB   00:50
CentOS-8 - AppStream                                          1.6 MB/s | 6.3 MB   00:03
CentOS-8 - Extras                                            950 B/s | 2.1 kB   00:02
Last metadata expiration check: 0:00:02 ago on Wed 20 Nov 2019 08:09:51 AM EST.
Dependencies resolved.
========================================================================================================================================
 Package                Arch      Version                        Repository     Size
========================================================================================================================================
Upgrading:
 rpmconf                noarch     1.0.20-1.el8                      epel        26 k
...省略
Removed:
 deltarpm-3.6-3.el7.x86_64           libselinux-python-2.5-14.1.el7.x86_64    libxml2-python-2.9.1-6.el7_2.3.x86_64
 newt-python-0.52.15-4.el7.x86_64       python-2.7.5-86.el7.x86_64         python-chardet-2.2.1-3.el7.noarch
 python-firewall-0.6.3-2.el7_7.2.noarch    python-kitchen-1.1.1-5.el7.noarch      python-libs-2.7.5-86.el7.x86_64
 python-linux-procfs-0.4.11-4.el7.noarch    python-schedutils-0.4-6.el7.x86_64     python-slip-0.4.0-4.el7.noarch
 python-slip-dbus-0.4.0-4.el7.noarch      python-urlgrabber-3.10-9.el7.noarch     python2-dnf-4.0.9.2-1.el7_6.noarch
 python2-hawkey-0.22.5-1.el7_6.x86_64     python2-libcomps-0.1.8-12.el7.x86_64    python2-libdnf-0.22.5-1.el7_6.x86_64
 pyxattr-0.5.1-5.el7.x86_64          rpm-python-4.11.3-40.el7.x86_64       systemd-sysv-219-67.el7_7.2.x86_64    

Complete!
[root@liumiao ~]# 

此时通过uname -a确认内核状态,仍是3.10.

[root@liumiao ~]# uname -a
Linux devops 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@liumiao ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
[root@liumiao ~]#

由于前文已经更新,此时如执行dnf -y install kernel-core会提示already updated,接下来更新一下CentOS 8的最小化安装的相关package,执行如下命令即可:

[root@liumiao ~]# dnf -y groupupdate "Core" "Minimal Install"
Last metadata expiration check: 0:13:34 ago on Wed 20 Nov 2019 08:09:51 AM EST.
Dependencies resolved.
========================================================================================================================================
 Package                 Arch       Version                      Repository      Size
========================================================================================================================================
Installing group/module packages:
 dnf-plugin-spacewalk          noarch      2.8.5-11.module_el8.0.0+180+337688dc       AppStream       24 k
 dnf-plugins-core            noarch      4.0.2.2-3.el8                   BaseOS        59 k
...省略
[root@liumiao ~]#

步骤5: 重启系统

重启之后即可确认内核和版本文件信息均已升至最新

[root@liumiao ~]# uname -a
Linux devops 4.18.0-80.11.2.el8_0.x86_64 #1 SMP Tue Sep 24 11:32:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
[root@liumiao ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
[root@liumiao ~]# 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 从Centos7升级到Centos8的教程(图文详解)

    如果在正式环境升级,请做好数据备份以及重要配置备份!因为升级会造成一部分应用被卸载. 1.安装epel源 yum -y install epel-release 2.安装rpmconf和yum-utils yum -y install rpmconf yum-utils 3.执行rpmconf ,如果出现一些提示,请输入Y和回车继续,如果没提示继续第四步操作 rpmconf -a 4.安装dnf yum -y install dnf 5.移除yum和yum-metadata-parser dnf

  • 如何将CentOS7升级至CentOS8(详细步骤)

    这篇文章以具体的示例来介绍一下从CentOS 7升级值CentOS 8的方法. 事前准备 最小化安装CentOS 7,具体版本如下所示:7.6.1810 [root@liumiao ~]# uname -a Linux devops 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux [root@liumiao ~]# cat /etc/redhat-release Cen

  • CentOS7下安装Scrapy步骤详细介绍

    CentOS7下安装Scrapy步骤详细介绍 更新yum [root@localhost ~]# yum -y update 安装gcc及扩展包 [root@localhost ~]# yum install gcc libffi-devel python-devel openssl-devel 安装开发工具包 [root@localhost ~]# yum groupinstall -y development 安装libxslt-devel支持lxml [root@localhost ~]#

  • Centos7 Python3下安装scrapy的详细步骤

    苦逼的前夜 昨晚很辛苦,搞到晚上快两点,最后还是没有把python3下的scrapy框架安装起来,后面还把yum这玩意给弄坏了,一直找不到命令.今天早上又自己弄了快一上午,又求助@函兮,弄了快一个中午,最后无奈还是没有弄好yum跟python这玩意,最后还是放弃治疗了.真的是什么招,什么损招都用完了,最后也没折了,直接报告老大去,然后把阿里云的centos7实例重新磁盘回滚了一下. 正确的安装姿势 这个不多废话,如果你是直接接手过来一个centos7的实例镜像,当然包括腾讯云或者阿里云上面的,只

  • Centos7.9搭建自主邮件服务器详细步骤

    目录 前言 一 配置内网dns A记录和MX记录 二 mail服务器初始化配置 1. 修改主机名 2. 关闭防火墙与selinux 3. 开启时间同步 4. 安装软件 三 修改配置文件 1 配置postfix 2 配置dovecot 2.1 配置监听协议: 2.2 配置登录方式: 2.3 配置邮件存储位置: 2.4 配置ssl(关闭): 3 配置sasl2 3.1 配置系统认证: 3.2 配置登录方式: 4 启动服务: 5 创建用户并设置pass 6 配置mailx: 四 发送邮件测试 1 命令

  • Centos8搭建配置nis域服务详细步骤

    目录 NIS 简介 网络环境: 1.环境准备(两个节点都要) 2.nis主服务器配置 3.nis客户端设置  NIS 简介 NIS,英文的全称是network information service,也叫yellow pages.在Linux中,NIS是一个基于RPC的client/server系统,需要使用 RPC 服务. RPC即Remote Procedure Call Protocol(远程过程调用协议),RPCBIND用于取代旧版本中的portmap组件.简单说,RPCBIND就是为了

  • linux手工配置ip地址详细步骤

    目录 1.先进入网卡配置目录 2.编辑ifcfg-ens33网卡的配置文件 3.刷新网络服务 4.测试ping百度能否上网 1.先进入网卡配置目录 2.编辑ifcfg-ens33网卡的配置文件       vim ifcfg-ens33如下: 修改之后如下: 退出保存,使用ip add查看自己的ip地址,ip route查看网关,然后再继续编辑ifcfg-ens33网卡的配置文件   退出并且保存(wq) 解析如下:  BOOTPROTO=none   #设置网卡静态配置ip地址  none 静

  • CentOS 7下YUM 本地仓库的搭建详细步骤

    CentOS 7下YUM 本地仓库的搭建详细步骤 使用CentOS7.iso 搭建本地仓库 (1) 将CentOS7.iso文件拷贝到用户主目录中 即:~ cp CentOS7.iso ~ (2) 创建iso文件将要挂在的目录 mkdir -p /mnt/cdrom (3) 挂在iso文件到刚刚创建的目录中 mount -o loop CentOS7.iso /mnt/cdrom (4) 创建repo文件 Local.repo,然后在其中加入下面内容 vim /etc/yum.repos.d/L

  • 完全卸载nginx以及安装的超详细步骤

    目录 前言 一.卸载NGINX 1.停止Nginx软件 2.查找根下所有名字包含nginx的文件 3.执行命令 rm -rf *删除nignx安装的相关文件 4.其他设置 二.开始安装NGINX a.安装所需插件 1.安装gcc 2.pcre.pcre-devel安装 3.zlib安装 4.安装openssl b.安装nginx 1.下载nginx安装包 2.把压缩包解压到usr/local/java 3.切换到cd /usr/local/java/nginx-1.9.9/下面 4.切换到/us

  • vmware12中安装 RedHat RHEL7.2系统的详细步骤(图文)

    本文介绍了vmware12中安装 RedHat RHEL7.2系统的详细步骤(图文),分享给大家,具体如下: 一.开始安装 1)新建虚拟机 RHEL7.2 2)成功引导系统--开机出现此画面 Install Red Hat EnterpriseLinux 7.2 安装RHLE7.2 操作系统 Test this edia & install RedHat Enterprise Linux 7.2 测试安装文件并安装RHLE7.2 操作系统 Troubleshooting 修复故障 3)选择第一项

  • MongoDB 3.4 安装以 Windows 服务方式运行的详细步骤

    1.首先从https://www.mongodb.com/download-center#community 下载社区版,企业版也是类似. 2.双击运行安装,可自定义安装路径,这里采用默认路径(C:\Program Files\MongoDB\Server\3.4) 一路下一步直至安装完毕. 3.创建数据存放目录(这里我放在D:\MongoDB\data). D:\MongoDB\data创建db目录和log目录,分别用来存放数据库文件和日志文件. 4.创建配置文件mongod.cfg存放在D:

随机推荐