CentOS7 系统软件安装实战|yum 本地源、rpm 离线、源码编译三种方式完整教程
摘要:本文为CentOS7软件安装完整实战教程,覆盖运维最常用3种安装方式:yum在线仓库安装、RPM包离线安装、源码编译安装,附带依赖缺失报错解决、yum本地离线源制作、rpm强制卸载、编译前置依赖等生产场景操作命令,区分服务器在线/离线环境,适合企业运维标准化部署软件使用。
目录(页面锚点跳转)
一、前言
CentOS系统安装软件分为三大主流方案,分别适配不同业务场景:
1.yum在线安装:最简单自动处理依赖,服务器能联网优先使用;
2.RPM离线包安装:内网断网服务器使用,需手动下载rpm包;
3.源码编译安装:自定义软件参数、指定安装路径,适合特殊版本需求。
很多新手操作会遇到依赖缺失、rpm冲突、编译缺少gcc内核包等问题,本文提供标准化可复制命令,覆盖在线与离线机房场景。
提示:生产服务器优先yum方式,源码编译仅特殊需求使用,编译软件无yum统一管理,后期升级卸载麻烦。
二、安装前基础认知与环境准备
三种安装方式适用场景
外网可联网服务器:yum在线安装(推荐)
内网隔离、无外网机房:rpm离线包 / yum本地离线源
需要自定义编译参数、指定安装目录、特殊软件版本:源码编译
编译安装通用依赖(源码编译必装)
yum install -y gcc gcc-c++ make automake autoconf perl kernel-devel
三、三种软件安装完整实操步骤
方案1:YUM在线仓库安装(最常用)
1.基础安装命令
# 单个软件安装 yum install -y vim 批量安装多个软件 yum install -y unzip zip lrzsz tree net-tools 安装软件组(开发工具包) yum groupinstall -y "Development Tools"

2.搜索仓库软件、查看软件信息
# 搜索仓库是否存在该软件 yum search nginx 查看软件详细信息 yum info nginx

3.只下载rpm包不安装(用于离线服务器)
# 安装下载工具 yum install -y yum-utils # 将nginx所有依赖包下载到/root/rpm目录 mkdir -p /root/rpm yumdownloader --resolve --destdir=/root/rpm nginx
方案2:RPM离线包安装(断网服务器)
1.普通rpm安装
rpm -ivh nginx-1.20.1-9.el7.x86_64.rpm
2.存在依赖缺失时,统一目录批量安装所有rpm包
rpm -ivh *.rpm --nodeps
参数说明:--nodeps忽略依赖强制安装,生产环境谨慎使用,容易导致软件运行异常。
方案3:源码编译安装(自定义部署)
以nginx源码为例通用流程:
# 1.下载解压源码包 wget https://nginx.org/download/nginx-1.24.0.tar.gz tar -zxvf nginx-1.24.0.tar.gz cd nginx-1.24.0 2. 配置编译参数,指定安装路径 ./configure --prefix=/usr/local/nginx 3. 编译 make 4. 安装 make install
提示:./configure阶段报错90%是缺少对应依赖库,根据报错信息用yum补齐库文件即可。
四、软件查询、卸载、校验常用命令
1.查询已安装软件
# 查询yum/rpm安装的软件 rpm -qa | grep nginx 查询软件安装文件路径 rpm -ql nginx
2.卸载软件
# yum卸载 yum remove -y nginx rpm 卸载 rpm -e nginx rpm 强制卸载忽略依赖 rpm -e nginx --nodeps
3.校验软件文件完整性
rpm -V nginx
五、生产环境常见报错与注意事项
1. yum报错无法连接镜像源
检查服务器外网连通性;内网环境切换本地yum离线源
替换国内阿里云163yum源,提升下载速度
2.rpm安装提示依赖缺失
外网服务器改用yum自动处理依赖;内网提前下载全部依赖rpm包批量安装
禁止频繁使用--nodeps强制安装,会造成系统组件损坏
3.源码configure报错缺少库
提前安装Development Tools开发工具组,补齐gcc、perl、各类开发库
编译软件无法用yum统一管理,升级、卸载需要手动删除安装目录
重要提醒:线上业务服务器尽量统一使用yum方式管理软件,方便批量升级、漏洞修复,源码编译仅用于特殊定制场景。
CentOS软件安装是运维基础高频操作,根据服务器网络环境选择yum在线、rpm离线、源码编译三种方式,熟练掌握依赖处理、查询卸载命令,可以解决绝大多数软件部署问题,企业机房可统一使用yum离线源标准化批量部署程序。


