CentOS
2014-10-29 10:31:05 阿炯

CentOS(Community Enterprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定发布的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。CentOS 对上游代码的主要修改是为了移除不能自由使用的商标及美工图。2014年,CentOS宣布与Red Hat合作,但CentOS将会在新的委员会下继续运作,并不受RHEL的影响。CentOS是一个开源软件贡献者和用户的社区。典型的CentOS用户包括这样一些组织和个人,他们并不需要专门的商业支持就能开展成功的业务。CentOS是Red Hat Enterprise Linux的100%兼容的重新组建,并完全符合Red Hat的再发行要求。CentOS面向那些需要企业级操作系统稳定性的人们,而且并不涉及认证和支持方面的开销。每个大版本的 CentOS 都会获得10年的支持(通过安全更新方式)。


The CentOS Linux distribution is a stable, predictable, manageable and reproduceable platform derived from the sources of Red Hat Enterprise Linux (RHEL). We are now looking to expand on that by creating the resources needed by other communities to come together and be able to build on the CentOS Linux platform. And today we start the process by delivering a clear governance model, increased transparency and access. In the coming weeks we aim to publish our own roadmap that includes variants of the core CentOS Linux.

CentOS版本号有两个部份,一个主要版本和一个次要版本,主要和次要版本号分别对应于RHEL的主要版本与更新包,CentOS采取从RHEL的源代码包来构建。例如CentOS 4.4构建在RHEL 4.0的更新第4版。


Since March 2004, CentOS Linux has been a community-supported distribution derived from sources freely provided to the public by Red Hat. As such, CentOS Linux aims to be functionally compatible with RHEL. We mainly change packages to remove upstream vendor branding and artwork. CentOS Linux is no-cost and free to redistribute.

CentOS Linux is developed by a small but growing team of core developers. In turn the core developers are supported by an active user community including system administrators, network administrators, managers, core Linux contributors, and Linux enthusiasts from around the world.

CentOS6、7的主要区别

1、文件系统的区别。CentOS6默认使用的是ext4的文件系统,而CentOS7使用的是xfs。
2、硬盘默认调度算法不一样。CentOS6默认使用的是cfq,而CentOS7使用的是deadline。
3、内核版本不一样。CentOS6使用的是2.6,CentOS7使用的是3.10
4、在CentOS7中,支持动态补丁机制kpatch和btrfs文件系统(技术预览)
5、在CentOS7中,支持内核模块黑名单机制:modproble.blacklist=module
6、在CentOS7中,支持嵌套虚拟化技术,对虚拟机CPU更流畅
7、在CentOS7中,内核支持资源调优和分配(cgroup)
8、CentOS6支持USB2.0,CentOS7支持USB3.0
9、lvm快照。在CentOS7中支持qcow2格式文件型快照
10、加强了对VMware的技术支持。自带open-vmtools替换vm-tools
11、启动工具。在CentOS7中用的全新服务启动管理器systemctl,在CentOS6做服务的启停用service
12、在CentOS7中内核出现错误,导出core文件最大支持3TB,CentOS6中最大支持2TB

CentOS7网卡命名规则

CentOS6及以前的版本,网卡命名方式会根据情况有所改变不是唯一的不是固定的。网络接口使用连续号码命名:eth0、eth1等。当增加或删除网卡时,名称才可能会发送变化。CentOS7采用dmidecode采集命名方案,一次来得到主板信息;它可以实现网卡命名唯一化(dmidecode命令可以采集有关硬件方面的信息),对网络设备的命名方式:
1)如果Firmware(固件)或BIOS为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命令,例如ifcfg-ens33
2)如果Firmware(固件)或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测则根据此索引进行命名,例如ifcfg-enp33
3)如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0
4)上述均不可用时,则使用传统命名机制

扩展:
在CentOS7中,en表示ethernet以太网
enX(X常见有下面3中类型):
o:主板半载网卡,集成设备的设备索引号
p:独立网卡,PCI网卡
s:热插拔网卡,USB之类
nnn(数字)表示:MAC地址+主板信息计算得出的唯一序列

CentOS7的防火墙使用的是firewalld.service,而不是iptables.service。

CentOS7的运行级别


先看Linux的七个运行级别
0 系统停机,系统默认运行级别不能设置为0,否则不能正常启动
1 单用户模式,root权限,用于系统维护,禁止远程登录,就像Windows下的安全模式登录
2 多用户模式,没有NFS和网络支持
3 完整的多用户文本模式,有NFS和网络,登录后进入控制台命令行模式
4 系统未使用,保留一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置
5 图形化模式,登录后进入图形GUI模式,X Windows系
6 重启模式,默认运行级别不能设置为6,否则不能正常启动。运行init 6机器就会重启。

这七个启动级别最简单的使用方法:
init [0~6]

作用是切换系统运行级别
init 0    //关机
init 3    //进入字符界面
init 5    //进入图形界面

CentOS7不再使用/etc/inittab文件进行默认的启动级别配置,而使用比sysvinit的运行级别更为自由的target替代。

第3运行级用multi-user.target替代
第5运行级用graphical.target替代

设置默认第3运行级别
systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

查看当前默认的启动级别
systemctl get-default
graphical.target

CentOS7 默认采用XFS文件系统

XFS是一种非常优秀的日志文件系统,它是SGI公司设计的。XFS具有各种改进,使其能够在文件系统群体中脱颖而出,例如用于元数据操作的日志记录,可扩展/并行I/I/O,挂起/恢复I/O,在线碎片整理,延迟性分配等等。大概在2002年,XFS被合入Linux内核,2009年RHELv5.4使用了XFS文件系统。由于其高性能,架构可扩展性和鲁棒性,XFS一直是很多企业系统的*选,特别是拥有大量数据的企业系统。现在,RHEL/CentOS7和Rracle Linux使用XFS作为其默认文件系统。其缺点有:XFS文件系统不能缩小,当删除大量文件时会性能下降。为什么CentOS7选择XFS作为默认的文件系统?

是由商业版红帽决定用XFS为默认。主要特性包括以下几点:
1、数据完全性
采用XFS文件系统,当意想不到的宕机发生后,首先,由于文件系统开启了日志功能,所以你磁盘上的文件不再会意外宕机而遭到破坏了。不论目前文件系统上存储的文件与数据有多少,文件系统都可以根据所记录的日志在很短的时间内迅速恢复磁盘文件内容。

2、传输特性
XFS文件系统采用优化算法,日志记录对整体文件操作影响非常小。XFS查询与分配存储空间非常快。XFS文件系统能连续提供快速的反应时间。笔者曾经对XFS、JFS、EXT3、ReiserFS文件系统进行过测试,XFS文件系统的性能表现相当出众。

3、可扩展性
XFS是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间。对特大文件及小尺寸文件的支持都表现出众,支持特大数量的目录。最大可支持的文件大小为263=9*1018=9exabytes,最大文件系统尺寸为18 exabytes。XFS使用高的表结构,保证了文件系统可以快速搜索与快速空间分配。XFS能够持续提供高速操作,文件系统的性能不受目录中目录及文件数量的限制。

4、传输带宽
XFS能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒。

CentOS7的主机名1

在CentOS 6中对主机名的修改方式很简单,临时修改主机名使用hostname命令,永久修改主机名直接写进文件/etc/sysconfig/network中即可。但在CentOS 7中这个操作就变的复杂了。在7版本中,主机名分3类:static(静态主机名)、pretty(好看、易读的主机名)和transient(短暂临时的)。CentOS 7中和主机名有关的文件为/etc/hostname,它是在系统初始化的时候被读取的,并且内核根据它的内容设置transient主机名。其中:
1.static类的主机名就是我们常说的主机名,由/etc/hostname文件决定。
2.transient类的主机名也就是我们常说的临时主机名,它是由内核动态维护的主机名。默认在系统启动的时候会根据/etc/hostname文件中的静态主机名进行初始化。
3.pretty类的主机名是给人看的,它可以提供非标准的主机名,以前版本(例如CentOS 6)没有这功能。它可以包含特殊符号,例如空格。例如将pretty名称命为"MaYun's Host",这种名称在以前的主机名(即static类主机名)里是不允许存在的。

/etc/hostname文件中的static主机名是瞬时生效的,也是永久生效的。修改后使用hostname命令或者uname -n直接就可以读取,重启后也按照此文件的主机名进行初始化。

/etc/hostname文件没有主机名的时候,在系统启动的时候,内核会将transient初始化为localhost.localdomain。

/etc/sysconfig/network文件已经失效。

主机名修改、查看
1.使用hostname命令修改主机名,它修改是transient主机名,即临时生效的主机名;
2.直接修改/etc/hostname文件,它瞬时生效,重启后也生效(因为内核会根据它初始化transient主机名);
3.使用nmtui命令在图形化界面修改主机名。它会直接修改/etc/hostname文件,因此也是瞬时生效+永久生效的;
4.使用hostnamectl命令。它可以修改并查看static、transient或pretty三种主机名。当它修改了static主机名时,会直接写入/etc/hostname文件中,因此它也是瞬时生效+永久生效的。

hostnamectl命令

1.查看主机名
hostnamectl
hostnamectl status
hostnamectl [--pretty|--static|--transient] status

例如,当前主机名为"t2.freeoa.net"。

# uname -n
t2.freeoa.net
# hostname name1
# hostnamectl
   Static hostname: t2
         Icon name: computer-vm
           Chassis: vm
        Machine ID: e63f3318f389447d839fcc729e722185
           Boot ID: 6548d703c5ec418293c35705130754f6
    Virtualization: kvm
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-1062.9.1.el7.x86_64
      Architecture: x86-64

可以看到使用hostname命令修改主机名后,transient已经改变了。

2.同时修改3种主机名

当同时修改了pretty和(static | transient)中的一种时,将取pretty名的简化部分作为static主机名。

hostnamectl set-hostname NAME

# hostnamectl set-hostname name2
# hostname
name2
# cat /etc/hostname
name2
# hostnamectl status
Static hostname: name2
    Icon name: computer-vm
...
# hostnamectl  --pretty

#

可以从结果中看到,只改变了static和transient(内核动态维护的,一定会改变),而pretty却没设置成功。这是因为这里给出的主机名"name2"是一个符合主机名标准的名称。如果指定一个非标准的主机名,例如包含特殊符号,那么也会设置pretty。
# hostnamectl set-hostname "name22 name22"
# hostnamectl
   Static hostname: name22name22
   Pretty hostname: name22 name22
         Icon name: computer-vm
...
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-327.el7.x86_64
      Architecture: x86-64

pretty hostname已经改变,且static hostname是它的"简化版"。

3.修改某种类型的主机名

hostnamectl set-name NAME --static
hostnamectl set-name NAME --transient
hostnamectl set-name NAME --pretty

用法如上,还可以同时修改其中两种名称:
hostnamectl set-name NAME --static --transient
hostnamectl set-name NAME --static --pretty
hostnamectl set-name NAME --transient --pretty

但注意,当修改了pretty主机名和其它一种时,将取pretty的"简化版"。

4.修改或查看远程主机的主机名,使用"-H"或"--host"选项,连接基于SSH。
hostnamectl -H [USER@]HOST set-hostname NAME
hostnamectl -H [USER@]HOST status

例如,使用root用户连接到192.168.10.59主机上并修改它的主机名:
hostnamectl -H root@192.168.10.59 set-hostname hello59
hostnamectl -H root@192.168.10.59 status

注意:无法远程修改CentOS 5或6主机名,因为它使用的是systemd类的命令进行修改的。

CentOS7的主机名2

在CentOS7中有三种定义的主机名:

静态的(Static hostname)
“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。

瞬态的(Tansient hostname)
“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。

灵活的(Pretty hostname)
“灵活”主机名也有人叫做“别名”主机名。
“灵活”主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户。
“静态”主机名和“瞬态”主机名都遵从作为互联网域名同样的字符限制规则。

在CentOS 7中引入了一个叫hostnamectl的命令行工具,它允许查看或修改与主机名相关的配置。

查看主机名:
//查看一下当前主机名的情况,查看全部三种主机名:
hostnamectl

//或者查看全部三种主机名:
hostnamectl status

//只查看静态、瞬态或灵活主机名,分别使用--static,--transient或--pretty选项
# hostnamectl --static
# hostnamectl --transient
# hostnamectl --pretty

//或者查看瞬态的(Tansient hostname)
hostname

//或者查看主机名配置文件,查看到的是静态的(Static hostname)
more /etc/hostname

查看当前Linux操作系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等):
uname -a //查看到的是瞬态的(Tansient hostname)
cat /etc/redhat-release //查看操作系统环境

修改主机名:
方法1:临时有效
hostname 主机名 //只能临时修改的主机名,当重启机器后,主机名称又变回来了。
hostname freeoa1

方法2:永久生效
//永久性的修改主机名称,重启后能保持修改后的。
hostnamectl set-hostname freeoa1

//删除hostname
hostnamectl set-hostname ""
hostnamectl set-hostname "" --static
hostnamectl set-hostname "" --pretty

修改所有三个主机名:静态、瞬态和灵活主机名:
# hostnamectl set-hostname freeoa1
# hostnamectl --pretty
# hostnamectl --static
freeoa1

# hostnamectl --transient
freeoa1

就像上面展示的那样,在修改静态/瞬态主机名时,任何特殊字符或空白字符会被移除,而提供的参数中的任何大写字母会自动转化为小写。一旦修改了静态主机名,/etc/hostname 将被自动更新。然而/etc/hosts 不会更新以保存所做的修改,所以每次在修改主机名后一定要手动更新/etc/hosts,之后再重启CentOS 7主机。否则系统在启动时会很慢。

手动更新/etc/hosts
vim /etc/hosts

#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
127.0.0.1 freeoa.net
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
::1 freeoa.net

重启CentOS 7
reboot -f

重启之后在查看主机名
# hostname
# hostnamectl

如果只想修改特定的主机名(静态,瞬态或灵活),可以使用--static,--transient或--pretty选项。例如要永久修改主机名,可以修改静态主机名来实现。其实不必重启机器以激活永久主机名修改。上面的命令会立即修改内核主机名,注销并重新登入后在命令行提示来观察新的静态主机名。

方法3:永久生效
修改配置文件/etc/hostname来实现主机名的修改。把该文件内容hostname name中的name替换成自己想要的主机名重启即可。
vim /etc/hostname
hostname  freeoa.net

也不知道将修改主机名称的过程设计的如此复杂是何考量?


2020年12月,CentOS 正式落幕。其继任者肯定是自家的Fedora了。


最新版本:6.8
CentOS 6.8 正式发布了,主要改进记录:
 libreswan 已取代 openswan 作为 VPN 端点的方案(已获 NetworkManager 支持)
 sssd 拥有新的功能及支持智能卡,并停止支持 SSLv2
 XFS 支持的最大文件系统大少已提升至 300TB
 应用程序已支持 TLSv1.2,包括 OpenLDAP、yum、stunnel、vsftpd、git、postfix 等。另外不同组件已缺省支持 TLSv1.2
 应用程序已支持 elliptic-curve parameters,包括 Perl Net:SSLeay 和 Perl IO::Socket::SSL
 dmidecode 现时支持 SMBIOS 3.0.0
 kickstart 档可以从 https 源下载
 已加入 chrony 作为 NTPd 的替换程序
 已新增 squid 3.4 作为 squid 3.1 的替换程序
 已强化采用 Hyper-V 的客端,包括:向监督器汇报内核中止运作,及以第二代客端运作
 新组件 rear 可用来持续创建修复映像
 缺省已停用 SSLv3 及较旧的不安全通讯协议,不同组件亦新增设置项目供选择通讯协议之用
 libreoffice 已改用 4.3.7 版
 不同组件已改用较新的版本,包括 elfutils、SystemTap、ipmitool、memtest86+、icedtea-web、各类驱动程序、shadow 工具程序、virt-who 等
完整发布说明,可以在这里查看。

最新版本:6.10
CentOS 6.10 现已正式发布,适用于 i386 和 x86_64 架构的设备。部分内容如下:
以下软件包已经升级到较新的上游版本:pacemaker,clufter,gcc-libraries
GCC 现在支持 retpolines,它有助于缓解 Spectre Variant 2 攻击
iptables-services 现在可以从 /etc/sysctl.d 读取配置文件
BIND 包含新的根 KSK,为即将到来的 DNSSEC 根区密钥签名密钥翻转(DNSSEC Root Zone Key-Signing-Key rollover)做准备

更多信息可参见发布公告。CentOS 开发者邮件列表显示,CentOS 6 已于2020年11月30日正式EOL;邮件还提到,CentOS 6.10 的目录将在12月第一周被迁移至 vault.centos.org,软件包仍在以下地址提供。

迁移工作完成后,vault.centos.org 中的目录不会再接收到任何更新,即意味着 CentOS 6 的安全问题不会再被处理。另外,mirrorlist.centos.org 中 CentOS 6 的节点将删除关于它的内容,如果你还是通过此前的镜像获取内容会收到"Invalid release/repo/arch combination"的提醒。CentOS 6 正式发布的时间是2011年7月。

最新版本:7.6
CentOS-7 的第七个发行版本 CentOS 7.6(1810)已发布。CentOS Linux 发行版本是一个稳定、高预测性、高管理性、高重复性的平台,它源于 Red Hat 企业级 Linux(RHEL)的源代码。CentOS 完全遵守 Red Hat 的再发行政策,并且致力与上游产品在功能上完全兼容。CentOS 对组件的修改主要是去除 Red Hat 的商标及美工图。

主要改动
自 1503 发行版本(abrt>= 2.1.11-19.el7.centos.0.1)开始,CentOS-7 可以直接向 bugs.centos.org 汇报错误,你可以在此处找到更多关于此功能的数据
下列是其中一些已改版至较新上游版本的软件:samba、pki-core、gcc-libraries、elf-utils、GNOME shell、X11-server、ipset、firewalld、gnutls 及 libreswan
Net::SMTP 已新增 SSL 的支持
Open-JDK-11 现已可用
pNFS SCSI 已不再是预览科技
Thunderbolt-3 界面已获支持
一如既往 —— 不同驱动程序获更新
已下组件已宣布获降级:Python 2、lvm2app、Python 内的 3DES、signtool、sendmail、dmraid、Btrfs 文件系统,某些 rsyslog 选项,某些驱动程序等。更多数据已收录在 RHEL 7.6 发行注记
ipset 用户请留意,上述的改版包括把 ipset 数据从 /etc/sysconfig/ipset 迁往 /etc/sysconfig/ipset.d/ 并以独立文件存储每个 ipset。利用设置管理程序设置 /etc/sysconfig/ipset 的用户必须更改他们的设置。
更新的CentOS Linux 7镜像包含了64位和32位的版本,以及Generic Cloud、Atomic Host、Vagrant、Docker容器和Vendor Hosted Cloud等镜像。

更多详情可查阅发行说明

最新版本:7.9
2020年11月16日,CentOS 7.9 已发布,其开发团队也通过邮件列表宣布适用于 x86_64 架构的 CentOS Linux 7 (2009) 已正式 GA。CentOS 由 Red Hat Enterprise Linux 源代码重新编译而成,CentOS 7.9 的上游版本为 RHEL 7.9。主要改动如下
现已备有 Python 3。安装 python3 组件将会为你提供 Python 3.6 解释器
SSSD 已改版为 1.16.5
pacemaker 已改版为 1.1.23
MariaDB 已改版为 5.5.68
自 1503 发行版本(abrt>= 2.1.11-19.el7.centos.0.1)开始,CentOS-7 可以直接向Bug系统汇报错误。
另外要注意的是,旧的内容以及被相同应用的新版本所取代的内容,会从Extras和Plus等仓库中被删除,本次更新还对托管在 mirror.centos.org 的 SIG 内容进行同样的处理,旧的 EOL 内容也会被删除。团队表示他们发布的所有内容,都会一直在 vault 服务上提供给仍在寻找并有实际需求的人。


最新版本:8.0
CentOS 8 官方正式发布了,CentOS 完全遵守 Red Hat 的再发行政策,并且致力与上游产品在功能上完全兼容。CentOS 对组件的修改主要是去除 Red Hat 的商标及美工图。该版本还包含全新的 CentOS Streams ,Centos Stream 是一个滚动发布的 Linux 发行版,它介于 Fedora Linux的上游开发和 RHEL 的下游开发之间而存在。你可以把 CentOS Streams 当成是用来体验最新红帽系 Linux 特性的一个版本,无需久等。CentOS 8 主要改动和 RedHat Enterprise Linux 8 是一致的,基于 Fedora 28 和内核版本 4.18,为用户提供一个稳定的、安全的、一致的基础,跨越混合云部署,支持传统和新兴的工作负载所需的工具。此次发布的亮点包括:

发行版
通过 BaseOS 和应用流 (AppStream) 仓库发布.
AppStream 是对传统 rpm 格式的全新扩展,为一个组件同时提供多个主要版本
更详细介绍请看 Chapter 3, Distribution of content in RHEL 8

软件管理
YUM 包管理器基于 DNF 技术,提供模块化内容支持,增强了性能,并且提供了设计良好的 API 用于与其他工具集成
详细介绍请看 Section 5.1.4, "Software management"

Shell 和命令行工具
RHEL 8 提供了版本控制工具: Git 2.18, Mercurial 4.8, 和 Subversion 1.10.
详情请看 Section 5.1.6, "Shells and command-line tools"

动态编程语言、Web 和数据库服务器
Python 3.6 是默认的 Python 环境,有限支持 Python 2.7
Node.js 是在 RHEL 最新包含的,其他动态语言更新包括: PHP 7.2, Ruby 2.5, Perl 5.26, SWIG 3.0
RHEL 8 提供的数据库服务包括:MariaDB 10.3, MySQL 8.0, PostgreSQL 10, PostgreSQL 9.6, 和 Redis 5.
RHEL 8 提供Apache HTTP Server 2.4 以及首次引入的, nginx 1.14.
Squid 版本升级到 4.4 ,同时也首次提供Varnish Cache 6.0.
详细介绍请看 Section 5.1.7, "Dynamic programming languages, web and database servers"

桌面环境
GNOME Shell 升级到 3.28.
GNOME 会话和显示管理使用 Wayland 作为默认的显示服务器,而 RHEL 7 默认的 X.Org server 依然提供
详细信息请看 Section 5.1.8, "Desktop"

安装程序以及镜像的创建
Anaconda 安装程序可使用 LUKS2 磁盘加密,支持 NVDIMM 设备.
Image Builder 工具可以创建不同格式的自定义系统镜像,包括满足云平台的各种格式
支持使用硬件管理控制台 HMC 从 DVD 安装,同时也提供 IBM Z 主机的 Support Element (SE)
详细介绍请看 Section 5.1.2, "Installer and image creation" .

内核
扩展 Berkeley Packet Filtering (eBPF) 特性使得用户空间的各个点上附加自定义程序,包括 (sockets, trace points, packet reception) ,用于接收和处理数据。目前该特性还处于特性预览阶段
BPF Compiler Collection (BCC), 这是一个用来创建高效内核跟踪和操作的工具,目前处于技术预览阶段
详情请看 Section 5.3.1, "Kernel"

文件系统和存储
LUKS version 2 (LUKS2) 格式替代旧的 LUKS (LUKS1) 格式,dm-crypt 子系统和 cryptsetup 工具现在使用 LUKS2 作为默认的加密卷格式
详细介绍请看 Section 5.1.12, "File systems and storage" .

安全
默认的系统级的 加密策略, 用于配置核心加密子系统,覆盖 TLS, IPsec, SSH, DNSSEC, 和 Kerberos 协议。增加全新命令update-crypto-policies, 管理员可以轻松切换不同模式: default, legacy, future, 和 fips.
支持智能卡和硬件安全模块 (HSM) 的 PKCS #11
详细介绍请看 Section 5.1.15, "Security"

网络
nftables 框架替代 iptables 作为默认的网络包过滤工具
firewalld 守护进程使用 nftables 作为默认后端
支持 IPVLAN 虚拟网络驱动程序,用于连接多个容器
eXpress Data Path (XDP), XDP for Traffic Control (tc), 以及 Address Family eXpress Data Path (AF_XDP), 可作为部分 Berkeley Packet Filtering (eBPF) 扩展特性,目前还是技术预览阶段,详情请看 Section 5.3.7, "Networking".
详细的网络方面的特性请看 Section 5.1.14, "Networking" .

虚拟化
在RHEL8中创建的虚拟机中,现在支持并自动配置更现代的基于PCI Express的计算机类型(Q35)。这在虚拟设备的功能和兼容性方面提供了多种改进。
现在可以使用RHEL8Web控制台(也称为"驾驶舱")创建和管理虚拟机。
qemu仿真器引入了沙箱功能,它为系统调用qemu可以执行的操作提供了可配置的限制,从而使虚拟机更加安全。
详细介绍请看 Section 5.1.16, "Virtualization"

编译器和开发工具
GCC 编译器更新到 8.2 版本,支持更多 C++标准,更好的优化以及代码增强技术、提升警告和硬件特性支持
不同的代码生成、操作和调试工具现在可以处理 DWARF5 调试信息格式(体验阶段)
核心支持 eBPF 调试的工具包括BCC, PCP, 和 SystemTap.
glibc 库升级到 2.28 支持 Unicode 11, 更新的 Linux 系统调用,关键提升主要在 DNS stub resolver 、额外的安全加强和性能提升
RHEL 8 提供 OpenJDK 11, OpenJDK 8, IcedTea-Web, 以及不同 Java 工具,如 Ant, Maven, 或 Scala.
详细介绍请看 Section 5.1.11, "Compilers and development tools".

高可用和集群
Pacemaker 集群资源管理器更新到最新版本 2.0.0, 修复了一系列 bug 以及功能做了提升
pcs 配置系统完全支持 Corosync 3, knet, 和节点名称
详情请看 Section 5.1.13, "High availability and clusters" .

CentOS 8 官方发行说明

完整的 RedHat 8 发行说明


官方主页:http://www.centos.org/
该文章最后由 阿炯 于 2023-12-04 13:18:04 更新,目前是第 2 版。