=Start=
缘由:
很久没有做Linux系统安装、操作的事情了,因为当前的工作内容中涉及不到这部分,翻看记录,最近的还是6、7年前自己在 CentOS 7 系统上做一些测试才涉及那部分的内容(以为 CentOS 系统还在正常维护)。最近因为一些原因需要用到当前比较新的 Rocky Linux 系统,才知道现在 CentOS 系统的发展变化,以及当前的一些替代系统的选择。在此简单记录一下对 Rocky Linux 系统的操作学习,方便后面有需要的时候参考。
正文:
参考解答:
如何检查当前 Rocky Linux 系统的版本信息?
$ cat /etc/os-release
$ hostnamectl
# 原来 RHEL 系统上的 lsb_release 命令默认是不存在的
Rocky Linux 对于我来说的主要变化
对我来说 Rocky Linux 8/9 相对于 CentOS 7 来说,最大的变化应该是下面几点:
- 软件安装/软件包管理( dnf 成为了默认的软件包管理器,同时 yum 仍然是可用的——yum会链接到dnf)
- 网络配置(用 nmcli/ip ,之前的 ifconfig 命令没了)
- 引入了 nftables 作为 iptables 的替代品(防火墙管理)
- 内核升级至 4.18 及以上( ebpf 的一些能力应该就可以用上了)
一般来说,我只需要把一些常用的软件安装上之后,日常使用是没有什么区别的。
Rocky Linux 安装后的一些设置
# 参考之前记录的CentOS最小化安装后的一些设置,主要是安装一些常用工具
1. 修改镜像源(修改镜像源的目的是为了加快yum等命令的执行效率)
2. 安装gcc等核心开发工具
3. 安装git等常用工具
4. 安装/更新 Java/Python/PHP/Golang/... 版本
5. 安装 ipython、pip、virtualenv 等工具
6. 为 Python/Golang 安装一些第三方库,比如 MySQLdb
7. 安装配置 Tomcat、Apache、PHP、MySQL 等软件(根据实际情况按需安装和配置)
# gcc 等选择开发工具
$ sudo dnf groupinstall 'Development Tools'
$ sudo yum groupinstall 'Development Tools'
# 一些基本工具最小化安装可能没有(经测 vim 和 wget 等没有安装)
yum -y install vim wget zip unzip tar
# 以下网络工具已经不存在
# yum -y install setuptool system-config-network-tui system-config-firewall-tui
# 默认安装没有 ifconfig 命令,安装 net-tools
# ifconfig、netstat、route 等命令集
yum -y install net-tools
# host、dig 和 nslookup
yum -y install bind-utils
# 更好的 top 工具
yum -y install htop
# 文件传输:sz 和 rz
yum -y install lrzsz
# 查看日志神器 Log file Navigator
yum -y install lnav
# NTP 已经废弃,改用 chrony,默认自带
# yum -y install ntp
# nc
yum -y install nc
# lsof
yum -y install lsof
# tree
yum -y install tree
# pstree
yum -y install psmisc
# ncdu:NCurses Disk Usage
yum -y install ncdu #新增工具,模板尚未加入,下个版本更新
# dstat 监控 CPU、磁盘和网络使用率,下个版本加入
yum -y install dstat
# 更新软件包
dnf clean all
dnf mackecache #缓存软件包信息
dnf upgrade #更新软件包
Rocky Linux 的一些网络配置查看命令
ip addr #查看 IP 地址
nmcli
nmcli connection
nmcli device show
nmcli connection show
nmcli c reload #重新加载网络配置
ping www.baidu.com #测试网络是否正常
# 重启网络
systemctl restart NetworkManager.service
nmcli networking off && nmcli networking on
nmcli n #查看 nmcli 状态
nmcli n on #启动 nmcli
nmcli c up eth0 #启动网卡 eth0
nmcli c down eth0 #关闭网卡 eth0
nmcli d c eth0 #激活网卡
nmcli d show eth0 #查看网卡 eth0 信息
nmcli r all off #关闭无线
RHEL 系操作系统发行版哪家强?
太长不看
长话短说,在现在这个时间点(2023年底)如果用 EL 系列操作系统发行版,特别是如果要跑 PostgreSQL 相关的服务,我强烈推荐 RockyLinux,有“国产化”要求的也可以选龙蜥 OpenAnolis。AlmaLinux 和 OracleLinux 兼容性有点问题,不建议使用。Euler 属于独一档的 IT 领域预制菜进校园,有 EL 兼容要求的可以直接略过。
兼容水平:RHEL = Rocky ≈ Anolis > Alma > Oracle >> Euler 。
在EL大版本上,EL7目前的状态最稳定,但马上 EOL 了,而且很多软件版本都太老,所以新上的项目不建议用了(比如 PG16 就不提供官方EL7包了);EL 9 最新,但偶尔会在仓库源更新后出现软件包依赖错误的问题。有些软件也还没跟进 EL9 的包,比如 Citus / RedisStack / Greenplum 等。
目前综合来看,EL8 是主流的选择:软件版本足够新,也足够稳定。具体的版本上建议使用 RockyLinux 8.8(Green Obsidian) 或 OpenAnolis 8.8 (rhck内核)。激进的用户可以试试 9.1/9.2 ,保守的用户可以接着用 CentOS 7.9 。
CentOS 8 系统的一些新特性
Rocky Linux 其实就是centos8的更稳定版本:centos8 测试版 –> rhel8 –> Rocky8
CentOS 8 新特性
- DNF 成为了默认的软件包管理器,同时 yum 仍然是可用的(yum 是 dnf 的链接)
- 使用网络管理器(nmcli 和 nmtui)进行网络配置,移除了网络脚本
- 使用 Podman 进行容器管理
- 引入了两个新的包仓库:BaseOS 和 AppStream
- 使用 Cockpit 作为默认的系统管理工具
- 默认使用 Wayland 作为显示服务器
- iptables 将被 nftables 取代
- 使用 Linux 内核 4.18
- 动态编程语言、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
CentOS 8在2019年发布,带来了比CentOS 7更多的新特性和改进。以下是一些主要的变化和优化:
软件包更新:CentOS 8提供了更新的软件包和程序,包括但不限于Python 3、MySQL 8、PHP 7.2、Ruby 2.5、PostgreSQL 10等。
应用流:引入了“应用流”(Application Streams)的概念,允许用户选择不同版本的应用软件来安装,而不会影响系统的稳定性,这是通过模块化资源库实现的。
DNF包管理器:CentOS 8使用DNF作为其默认的包管理器,取代了YUM。DNF提供了更好的性能,更准确的依赖解析,以及更好的用户体验。
Web控制台:CentOS 8集成了Cockpit,这是一个基于Web的系统管理工具,允许管理员通过浏览器执行日常管理任务。
内核:CentOS 8升级到了4.18版本的Linux内核,提供了更好的硬件支持和性能。
安全:增强了安全特性,包括支持OpenSSL 1.1.1和TLS 1.3。SELinux的策略也得到了更新和改进。
网络:引入了nftables作为iptables的替代品,提供了更现代和更灵活的网络过滤框架。
虚拟化:改进了对KVM虚拟化的支持,并且引入了新的虚拟化管理工具,比如Virt-Manager的新版本。
容器化和编排:提供了对Podman和Buildah的支持,这些工具可以替代Docker来创建和管理容器。同时,CentOS 8支持Kubernetes作为容器编排平台。
文件系统:对Stratis和VDO(卷重复数据删除和压缩)的支持,提供了更好的存储优化选项。
编程语言和工具链:更新了GCC(GNU Compiler Collection)和其他编程语言的工具链,为开发者提供了更现代的环境。
系统性能管理:改进了性能监控工具,如Performance Co-Pilot (PCP)和Tuned。
图形界面:更新了GNOME桌面环境到更现代的版本,提供了更好的用户体验。
BaseOS和AppStream:CentOS 8将软件包分为两个主要的资源库,BaseOS提供了操作系统的基础部分,而AppStream包含了各种应用软件。
CentOS 8的这些改进和新特性旨在为用户提供更强大、更灵活且更安全的操作系统。然而,由于CentOS项目的方向在2021年末发生了变化,CentOS Linux 8的生命周期比预期的要短,支持在2021年底结束,而CentOS Stream成为了项目的未来。
一、背景介绍
龙蜥社区(OpenAnolis)是由阿里巴巴、腾讯、华为等众多头部企业联合发起的开源根社区及创新平台,旨在构建一个中立、开放、包容的开源根社区,推动操作系统创新。龙蜥操作系统(Anolis)是基于开源Linux内核开发的操作系统,适用于云计算、服务器等场景。
Rocky Linux是一个由Rocky Enterprise Software Foundation开发的开源操作系统,旨在成为一个稳定、可靠且易于维护的服务器操作系统。它专注于为企业提供高质量的、长期稳定的企业级支持,以及强大的性能和安全性。
四、适用场景:
龙蜥操作系统(Anolis):适用于云计算、服务器等场景,特别是需要灵活性和丰富功能的场景。它适用于各种规模的企业,包括大型企业和需要部署大规模云计算系统的机构。对于那些希望替代CentOS的企业来说,龙蜥操作系统(Anolis)提供了一个稳定、可靠的解决方案。
Rocky Linux:适用于需要长期稳定支持、可靠性和卓越性能的企业级应用场景。它适合那些希望使用一个简洁、易于维护和管理的操作系统的企业。对于那些对性能要求较高或希望使用经过长时间验证的系统的企业来说,Rocky Linux可能是一个不错的选择。
综上所述,龙蜥操作系统(Anolis)和Rocky Linux都有各自的优点和适用场景。对于国内企业而言,选择哪个系统应该基于自身的实际需求进行决策。如果企业需要一个功能丰富、针对云计算场景进行优化的操作系统,同时希望获得广泛的技术支持和解决方案,那么龙蜥操作系统(Anolis)可能是一个不错的选择。而如果企业更看重长期稳定的企业级支持、简洁易用的系统环境以及可预测的性能表现,那么Rocky Linux可能更适合。
参考链接:
EL系操作系统发行版哪家强?
https://mp.weixin.qq.com/s/MANvCIUS1uMzwY6PqVpK7g
图解 Rocky Linux 9 安装步骤 | Linux 中国
https://mp.weixin.qq.com/s/8a9di8RD-djFCe0d81J1iw
https://www.linuxtechi.com/how-to-install-rocky-linux-9-step-by-step/
Installing Rocky Linux 9
https://docs.rockylinux.org/guides/installation/
Installing Rocky Linux 8
https://docs.rockylinux.org/guides/8_6_installation/
标签: Rocky Linux
https://rockylinux.cn/tag/rocky-linux
Rocky Linux 9 从入门到精通003 — 网络配置
https://mp.weixin.qq.com/s/NMPL_ubw1sjMLI-fLBNamg
DNF package manager
https://docs.rockylinux.org/guides/package_management/dnf_package_manager/
14-Rocky Linux 软件管理
https://mp.weixin.qq.com/s/ripzUOviXUVSbaiEAfSSyg
2-Rocky Linux 高级安装选项
https://mp.weixin.qq.com/s/v4UqV-5Q_ywxJaqplR964w
Rocky Linux简单操作 #nice
https://mp.weixin.qq.com/s/jsJnle4TgD0CJOVE9KIkbA
CentOS 8的新特性
https://blog.csdn.net/lpw_cn/article/details/135150330
Check Rocky Linux release in shell script
https://forums.rockylinux.org/t/check-rocky-linux-release-in-shell-script/3912
https://medium.com/@liwp.stephen/check-linux-os-version-from-command-line-cb7294432c45
精简版CentOS安装后设置
https://ixyzero.com/blog/archives/1763.html
如何在最小安装的 CentOS、RHEL、Rocky Linux 中设置互联网 | Linux 中国
https://mp.weixin.qq.com/s/GuhF40CTGQRYUUhXE06heQ
龙蜥(Anolis)系统与Rocky Linux:谁更适用于国内企业
https://blog.csdn.net/weixin_53391173/article/details/134107342
=END=