前言
之前一直使用的是 CentOS 7 系统,后面公司使用了 CentOS 8 对于用习惯了 CentOS 7 的我突然在实际生产中接触到 8 的版本,确实是有点挑战性的,但对于学习新知识我是特别感兴趣的。当然,我也从网上借鉴了一些比较好的总结,自己也对 CentOS8 做了一些思考,接下来和大家探讨一下 CentOS8 与 CentOS7 的区别。
一、CentOS 介绍
在探讨两者的区别时,我们先来看看什么是 CentOS,以及 CentOS 和 RHEL 的联系。 CentOS(Community Enterprise Operating System)是Linux发行版之一,它是来自于 Red Hat Enterprise Linux(RHEL)依照开放源代码规定发布的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。
二、RHEL7 和 RHEL8 区别
CentOS 7于2014-07-07发布,完整更新于2020-08-06结束。CentOS 7基于RHEL 7版本,最初发行时使用 Linux kernel 3.10, systemd 208 (在RHEL 7.2中升级到219)和GNOME 3.8。
CentOS 8于2019-09-24发布,完整更新于2024-05-01结束。CentOS 8基于RHEL 8版本,最初发行时使用Linux kernel 4.18, GCC 8.2, glibc 2.28, systemd 239和GNOME 3.28。
具体区别如下表所示:
功能 | CentOS 8 | CentOS 7 |
---|---|---|
内核版本 | 4.18.0-x | 3.10.0-x |
文件系统 | XFS | XFS |
时间同步 | 只支持Chronyd | 支持NTP和Chronyd |
文件大小 | 8EB | 500TB |
文件系统大小 | 1PB | 500TB |
包管理工具 | DNF(YUM v4) | YUM(YUM v3) |
最大内存 | 24TB | 12TB |
防火墙 | nftables取代iptables | firewalld底层使用iptables |
支持架构 | 支持64-bit ARM | 不支持64-bit ARM |
网络管理 | 默认安装Cockpit | 无默认安装 |
CPU日志 | CPU日志记录在journald进程中 | CPU相关日志位于/var/log/cups目录 |
发布时间 | 2019-09-24 | 2014-07-07 |
完整更新 | 2024-05-01 | 2020-08-06 |
支持IPv6 | 支持 | Ready Logo Phase 2 |
Git | 2.18 | 1.7 |
GCC | 8.2.1 | 4.8.5 |
Python | 3.6.6 | 2.7.5 |
Glibc | 2.28 | 2.17 |
Boost | 1.66 | 1.53 |
LLVM/Clang | 6.0 | 5.0 |
总结
以上的总结均来自互联网,我来说一下我在使用 CentOS 8 中所遇到的一些问题,首先,CentOS 8 默认的数据库是 mysql 8.0,因此我工作中使用的也是 mysql 8.0 版本的,相较于 mysql 5.7 来说,还是有很大区别的,这里就不再赘述。由于公司用到 Docker,于是我在安装 Docker 过程中报错提示 containerd.io 版本过低,一般像这种情况,都会提示你下载的版本,下载完后再重新安装 Docker 即可。我想说明什么呢?实际上就是说当我们使用 CentOS 8 的时候,应和不同版本的系统做一些区别,可能7需要一些依赖才能安装某个软件,而8却不需要。后面可能还会采很多的坑,不过我都会总结每次的坑和各位同行交流探讨。