1. Rocky Linux 9.2网络配置实战
Rocky Linux作为RHEL的替代品,在企业级应用中越来越受欢迎。最近我在部署一套内部测试环境时,发现很多新手对Rocky Linux 9.2的网络配置存在困惑。下面我就把实际踩坑后验证过的最可靠配置方法分享给大家。
1.1 网卡配置的两种方式
Rocky Linux 9.2提供了两种主流的网络配置方式,我建议新手优先使用第一种配置文件方式:
方法一:直接修改配置文件
# 首先查看网卡名称 nmcli device这个命令会列出所有网络接口,通常以太网卡名称类似ens160或eth0。记下你要配置的网卡名称后,用vim编辑对应的配置文件:
vi /etc/NetworkManager/system-connections/ens160.nmconnection这里有个容易踩坑的地方:Rocky Linux 9.2的配置文件路径和格式与旧版本有所不同。关键的配置段应该是这样的:
[ipv4] address1=192.168.1.100/24,192.168.1.1 dns=8.8.8.8; method=manual配置完成后必须重启网络服务:
systemctl restart NetworkManager方法二:使用nmcli命令行工具虽然官方推荐nmcli,但我实测发现对新手不太友好。比如要设置静态IP需要这样:
nmcli con mod ens160 ipv4.addresses 192.168.1.100/24 nmcli con mod ens160 ipv4.gateway 192.168.1.1 nmcli con mod ens160 ipv4.dns "8.8.8.8" nmcli con mod ens160 ipv4.method manual nmcli con up ens160提示:如果配置后网络不通,建议先用ip addr检查IP是否生效,再用ping测试网关连通性
1.2 多网卡绑定实战
在生产环境中,我们经常需要配置网卡绑定提高可靠性。我在某次部署中就遇到过单网卡故障导致服务中断的问题。配置步骤其实很简单:
- 先创建绑定接口
nmcli con add type bond con-name bond0 ifname bond0 mode active-backup- 添加从属网卡
nmcli con add type bond-slave ifname ens160 master bond0 nmcli con add type bond-slave ifname ens192 master bond0- 配置IP地址
nmcli con mod bond0 ipv4.addresses 192.168.1.200/24 nmcli con mod bond0 ipv4.gateway 192.168.1.1 nmcli con up bond0这种配置模式下,当主网卡故障时会自动切换到备用网卡,对业务完全透明。我实测切换时间在3秒以内,对大多数应用来说已经足够。
2. 本地yum源深度配置
2.1 镜像源准备与挂载
搭建本地yum源首先要准备好安装镜像。我推荐从官网下载DVD镜像,包含的软件包最全:
wget https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9.2-x86_64-dvd.iso挂载镜像时有个细节要注意:如果直接mount /dev/sr0可能会遇到只读问题。我的经验是先用lsblk确认设备名,然后这样挂载更可靠:
mkdir -p /media/cdrom mount -o loop Rocky-9.2-x86_64-dvd.iso /media/cdrom2.2 yum源配置文件详解
很多教程给的repo配置过于简单,我推荐使用这种增强版配置:
cat > /etc/yum.repos.d/local.repo <<EOF [BaseOS] name=Rocky Linux $releasever - BaseOS baseurl=file:///media/cdrom/BaseOS enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial [AppStream] name=Rocky Linux $releasever - AppStream baseurl=file:///media/cdrom/AppStream enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial [HighAvailability] name=Rocky Linux $releasever - HighAvailability baseurl=file:///media/cdrom/HighAvailability enabled=0 gpgcheck=1 [ResilientStorage] name=Rocky Linux $releasever - ResilientStorage baseurl=file:///media/cdrom/ResilientStorage enabled=0 gpgcheck=1 EOF这个配置有几个优点:
- 包含了所有常用仓库
- 启用了GPG校验更安全
- 按需启用特定仓库
- 使用变量让配置更通用
2.3 常见问题排查
在最近的一次培训中,学员遇到最多的问题是yum makecache失败。这里分享几个排查技巧:
问题一:挂载点不正确症状:报错"Couldn't open file /media/cdrom/BaseOS/repodata/repomd.xml" 解决:用ls命令检查/media/cdrom下是否有BaseOS目录
问题二:SELinux限制症状:权限被拒绝 解决:临时禁用SELinux测试
setenforce 0问题三:镜像不完整症状:GPG校验失败 解决:重新下载镜像并验证SHA256校验和
3. 高级网络配置技巧
3.1 VLAN配置实战
在企业网络中,VLAN隔离是基本需求。Rocky Linux 9.2配置VLAN其实很简单:
# 创建VLAN接口 nmcli con add type vlan con-name vlan100 dev ens160 id 100 nmcli con mod vlan100 ipv4.addresses 192.168.100.2/24 nmcli con up vlan100配置完成后可以用以下命令验证:
ip -d link show vlan1003.2 网络性能调优
对于高负载服务器,我通常会调整以下参数:
# 增加TCP缓冲区大小 echo 'net.core.rmem_max=16777216' >> /etc/sysctl.conf echo 'net.core.wmem_max=16777216' >> /etc/sysctl.conf # 启用TCP快速打开 echo 'net.ipv4.tcp_fastopen=3' >> /etc/sysctl.conf # 应用配置 sysctl -p这些调整在我的Web服务器上实测提升了约15%的网络吞吐量。
4. yum源维护与扩展
4.1 创建自定义仓库
除了官方仓库,我们还可以添加自己的软件仓库。比如要添加EPEL仓库:
dnf install epel-release对于内部软件包,可以这样创建本地仓库:
# 安装createrepo工具 dnf install createrepo_c # 创建仓库目录 mkdir -p /opt/myrepo/packages # 添加RPM包 cp *.rpm /opt/myrepo/packages/ # 生成仓库元数据 createrepo /opt/myrepo # 添加repo配置 cat > /etc/yum.repos.d/myrepo.repo <<EOF [myrepo] name=My Custom Repo baseurl=file:///opt/myrepo enabled=1 gpgcheck=0 EOF4.2 仓库同步与更新
保持本地仓库更新很重要,可以设置定时任务:
# 每天凌晨同步更新 0 3 * * * /usr/bin/rsync -avz --delete rsync://mirror.rockylinux.org/rocky/9/BaseOS/x86_64/os/ /media/cdrom/BaseOS/对于内部仓库,每次添加新软件包后需要重建元数据:
createrepo --update /opt/myrepo我在实际运维中发现,合理配置的本地yum源可以将软件安装速度提升10倍以上,特别是在批量部署时效果更明显。