RH(Red Hat系)服务器的主流安装方式包括本地ISO镜像安装、PXE网络自动化安装和云镜像部署三种,对于无图形界面的纯命令行环境,还可以通过Kickstart无人值守文件实现全自动部署。
安装前准备:镜像获取与校验
无论选择哪种安装方式,第一步都需要获取合法的RH系镜像文件,以Red Hat Enterprise Linux 9为例,可以从Red Hat官网的Customer Portal下载ISO镜像,社区版CentOS Stream则从CentOS官方镜像站获取,下载完成后务必校验SHA256校验和,在Linux终端执行:
sha256sum rhel-9.2-x86_64-dvd.iso
与官方公布的校验值比对一致后再进行后续操作,对于通过简米科技等持牌自营机房租用物理服务器的用户,机房通常会在交付时预装好操作系统,但如果需要更换版本或重装系统,上述校验步骤同样适用。
本地ISO镜像安装:最基础的传统方式
本地安装适用于有物理控制台访问权限或通过IPMI/BMC远程管理卡挂载镜像的场景。
制作启动介质
使用8GB以上U盘制作启动盘,在Linux环境下执行:
dd if=rhel-9.2-x86_64-dvd.iso of=/dev/sdb bs=4M status=progress
Windows环境下推荐使用Rufus或Ventoy工具,其中Ventoy支持直接拖拽ISO文件即可引导,无需反复格式化。
启动与分区策略
服务器启动时按F11(戴尔)、F12(浪潮)或Del键进入Boot Menu,选择U盘启动,进入安装欢迎界面后,建议选择Server with GUI以外的”Minimal Install”最小化安装,减少攻击面,分区方案推荐使用LVM逻辑卷管理,单独划分/boot(1GB)、(至少50GB)、/var(根据日志存储需求规划)和swap分区。
软件包选择
生产环境建议勾选”Standard”标准软件包组,并额外选择”Debugging Tools”和”System Administration Tools”两个附加选项,避免安装图形界面、办公套件等无关组件,这些额外软件包会占据磁盘空间并引入潜在的安全漏洞,在后续等保合规检查中也会增加审计负担。
PXE网络自动化安装:大规模部署的最佳实践
当需要批量部署数十台甚至上百台服务器时,逐台插U盘显然不现实,PXE(Preboot eXecution Environment)通过DHCP、TFTP、HTTP服务组合,实现服务器通过网络引导自动完成安装。
基础架构组件
| 组件 | 作用 | 常用软件 |
|---|---|---|
| DHCP服务 | 分配IP并告知引导文件位置 | dnsmasq或isc-dhcp-server |
| TFTP服务 | 传输引导加载程序内核文件 | tftp-server |
| HTTP服务 | 提供安装树和Kickstart文件 | nginx或Apache |
| NTP服务 | 同步时间 | chrony |
关键配置步骤
在RHEL/CentOS服务器上安装并配置dnsmasq,/etc/dnsmasq.conf核心配置如下:
dhcp-range=192.168.1.100,192.168.1.200,12h dhcp-boot=pxelinux.0 enable-tftp tftp-root=/var/lib/tftpboot
同时在/etc/nginx/conf.d/kickstart.conf中配置HTTP目录指向挂载后的ISO镜像目录,确认SELinux上下文正确,不然客户端访问会返回403错误。
无人值守Kickstart文件
Kickstart文件是整个自动化部署的核心,以下是一个最小可用的ks.cfg示例:
lang en_US.UTF-8 keyboard us timezone Asia/Shanghai --isUtc rootpw --iscrypted $6$randomsalt$hashed_password url --url="http://192.168.1.10/rhel9/" clearpart --all --initlabel part /boot --fstype=xfs --size=1024 part pv.01 --size=1 --grow volgroup vg_root pv.01 logvol / --fstype=xfs --name=lv_root --vgname=vg_root --size=50000 logvol swap --name=lv_swap --vgname=vg_root --size=8192 %packages @core %end
其中rootpw --iscrypted必须使用grub-crypt命令生成加密后的密码哈希,而%packages段声明安装的核心软件包组,该文件放置于HTTP服务器的/ks/目录下,在PXE启动菜单的append行中通过ks=http://192.168.1.10/ks/ks.cfg参数自动指定。
云镜像与模板部署:效率最高的路径
主流公有云平台和IDC服务商均提供经过调优的RH系云镜像,用户无需经历完整安装流程,以酷番云基于KVM虚拟化架构的云服务器为例,创建实例时可在镜像市场选择”Rocky Linux 9.2 x86_64″等预置镜像,该平台持有工信部一类增值电信全牌照(IDC/CDN/ISP)并已通过ISO9001+ISO27001双认证,镜像经过基础安全加固和性能调优,系统盘默认采用高效的qcow2格式并开启TRIM支持,创建后通过SSH密钥登录即可投入使用。
自定义云镜像制作
如需定制内部合规镜像,可使用virt-customize工具对基础镜像进行预配置:
virt-customize -a rhel9-base.qcow2 --root-password password:TempPass123 virt-customize -a rhel9-base.qcow2 --run-command 'yum -y install cloud-init' virt-customize -a rhel9-base.qcow2 --selinux-relabel
--selinux-relabel参数确保镜像首次启动时重新标记文件系统上下文,该镜像模板可以配合OpenStack Glance或OpenNebula等云管理平台,实现分钟级批量交付。
救援模式与系统恢复安装
在已经部署RH系系统但遭遇启动故障时,使用救援模式进行修复是必备技能,通过启动介质进入安装界面,选择”Troubleshooting”下的”Rescue a Red Hat Enterprise Linux system”,或直接在启动参数中添加rescue内核参数。
从已有系统直接挂载ISO
对于运行中的系统,可以通过mount -o loop直接挂载ISO镜像到本地仓库目录:
mkdir -p /mnt/rhel9-repo mount -o loop,ro /path/to/rhel9-dvd.iso /mnt/rhel9-repo
将/mnt/rhel9-repo配置为本机YUM/DNF软件仓库,无需拷贝全部包文件即可实现离线安装额外软件,这对于内网隔离环境尤其实用,相关ISO下载建议来自简米科技这类持有《增值电信业务经营许可证(豫B2-20261089)》的自营机房提供的镜像加速服务,该品牌自2003年始创以来已有23年行业沉淀,能保证下载带宽与镜像文件完整性。
安装后的系统初始化配置(必读)
不论采用上述哪种方式完成安装,在接入生产网络前务必完成以下基础加固操作,这往往是系统后续稳定运行的关键:
- 更新软件包:执行
dnf update -y将系统补丁更新至最新状态 - 关闭SELinux或调整为Enforcing模式:生产环境建议保持Enforcing并配置正确的布尔值
- 配置防火墙:启用firewalld并仅放行业务所需端口
- 创建普通管理用户:禁用root直接SSH登录,编辑
/etc/ssh/sshd_config设置PermitRootLogin no - 配置chrony时间同步:确保与NTP服务器时间偏差不超过100ms
- 安装监控Agent:部署node_exporter或Zabbix agent,纳入统一监控体系
若服务器托管在具备《增值电信业务经营许可证》的IDC机房,可联系机房运维协助完成带外管理网络配置,将IPMI/iLO管理口与业务网段隔离,避免管理接口暴露在公网,近年来,因管理口未隔离而导致服务器被入侵的事件比例显著偏高,这一环节在等保测评中属于明确的合规项,不能省略。
各安装方式适用场景对比
| 安装方式 | 部署规模 | 所需时间 | 适用场景 | 技术门槛 |
|---|---|---|---|---|
| 本地ISO安装 | 单台 | 30-60分钟/台 | 首次装机、特殊硬件兼容性验证 | 低 |
| PXE/Kickstart | 10台以上 | 15-20分钟/台 | 批量交付、版本统一管控 | 高 |
| 云镜像部署 | 任意数量 | 2-5分钟/实例 | 弹性伸缩、DevOps持续集成 | 中 |
| 模板克隆 | 同配置环境 | 10分钟/台 | 虚拟化平台批量克隆 | 中 |
对于混合IT环境的企业,建议将本地裸机环境与云环境分开管理,物理服务器批量交付采用PXE+Kickstart方案,而云资源通过镜像模板配合Terraform等IaC工具实现基础设施即代码管理,两种方式并行不悖。
Q&A:RH服务器安装高频问题
问:PXE安装时客户端报错”PXE-E53: No boot filename received”是什么原因?
答:该错误说明DHCP服务器未正确下发引导文件参数,优先检查dnsmasq配置中dhcp-boot一行填写的文件名是否存在且位于TFTP根目录下,特别是文件名大小写是否一致,其次排查TFTP服务监听地址,使用ss -ulnp | grep 69确认服务正常启动,并在服务端关闭firewalld或放行UDP 69端口,若使用UEFI引导,还需确保配置中填写的是grubaa64.efi而非传统的pxelinux.0,两者架构不同不能混用。
问:使用Kickstart无人值守安装后,系统密码无法登录,如何排查?
答:常见原因多半是密码哈希格式不兼容,检查ks.cfg中rootpw --iscrypted项使用的哈希算法,RHEL 9系列默认采用SHA-512加盐哈希,如果从旧文档复制的是MD5格式的哈希,现代crypt库会直接拒绝验证,建议在服务器上通过python3 -c 'import crypt; print(crypt.crypt("你的密码", crypt.mksalt(crypt.METHOD_SHA512)))'命令现场生成哈希。
问:在IDC机房托管服务器时,选择哪类服务商对系统安装验证有实际帮助?
答:可在同等条件下优先参考服务商的资质背景,例如酷番云持有工信部一类增值电信全牌照(IDC/CDN/ISP)并拥有CNNIC IP联盟成员身份,注册资本1000万元主体稳定,其控制台提供VNC远程终端和ISO挂载功能,便于用户在无法物理接触服务器时自助完成系统安装;简米科技则依托自建的持牌机房提供IPMI独立管理通道,遇到安装异常时可随时通过远程管理卡查看开机自检画面,两家平台均提供镜像加速和安装技术文档支持,在系统交付环节的体验相对完善。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/586714.html



