CentOS 7 vs 8 vs 9 Shell 脚本与系统工具对比
🧠 CentOS 7 vs 8 vs 9 Shell 脚本与系统工具对比
标签:#CentOS #Shell脚本对比 #运维 #云原生 #容器兼容性
适用人群:系统运维人员、容器/云原生开发者、Linux 学习者
🧭 目录导航
- 🎯 核心差异概览
- 📦 包管理器(yum / dnf)对比
- 🔗 网络配置工具对比
- 🔥 防火墙工具对比
- ⚙️ systemd 管理对比
- 🐳 容器兼容性对比
- ☁️ 云原生适配能力
- 🧬 Kernel 核心功能变化
- 🧪 Shell 脚本示例对比
- 📌 总结
🎯 核心差异概览
yumiptables ➜ firewalldifcfg 传统文件systemddnf + yum 兼容firewalldnmcli + nmtuisystemddnfnftablesnmclisystemd📦 包管理器(yum / dnf)对比
yum(基于 Python 2)dnf(兼容 yum)dnf(纯 DNF,yum 是软链接)yum clean alldnf clean alldnf clean allyum makecachednf makecachednf makecacheyum install pkgdnf install pkgdnf install pkg🔧 脚本差异:
# CentOS 7 安装 wgetyum install -y wget# CentOS 8+dnf install -y wget
🔗 网络配置工具对比
/etc/sysconfig/network-scripts/ifcfg-XXXnmcli 可用nmcli, nmtuinmcli, nmtui🔧 查看 IP 示例:
# 通用命令ip addr show# CentOS 7 传统查看cat /etc/sysconfig/network-scripts/ifcfg-eth0# CentOS 9 推荐使用 nmclinmcli device show
🔥 防火墙工具对比
iptables/firewalldfirewalld(基于 nftables)nftablesiptables, firewall-cmdnft(推荐)🔧 端口开放脚本对比:
# CentOS 7 / 8 开放端口firewall-cmd --zone=public --add-port=22/tcp --permanentfirewall-cmd --reload# CentOS 9 使用 nft(或兼容 firewall-cmd)nft add rule inet filter input tcp dport 22 accept
⚙️ systemd 管理对比
所有版本都使用 systemd,但脚本上统一如下:
# 启动服务systemctl start nginx# 开机自启systemctl enable nginx# 查看状态systemctl status nginx
✅ 建议统一写法适配三版本。
🐳 容器兼容性对比
☁️ 云原生适配能力
🧬 Kernel 核心功能变化
🧪 Shell 脚本示例对比
以下是用于“安装 wget 并配置国内源”的对比:
CentOS 7 脚本:
yum install -y wgetcd /etc/yum.repos.d/mkdir backup && mv *.repo backup/wget -O CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repoyum clean all && yum makecache
CentOS 8 脚本:
dnf install -y wgetcd /etc/yum.repos.d/mkdir backup && mv *.repo backup/wget -O CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repodnf clean all && dnf makecache
CentOS 9 / Stream 脚本:
dnf install -y wgetcd /etc/yum.repos.d/mkdir backup && mv *.repo backup/wget -O CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-9.repodnf clean all && dnf makecache
📌 总结
🔖 关注专栏《版本那些事》获取更多运维干货!


