linux软件包管理与进程

📅 2026/7/6 5:21:07
linux软件包管理与进程
1.源码下载安装安装麻烦安装过程1.下载解压缩源码安装包2.分析安装环境3.编译软件4.安装软件安装apache源码包1.准备工作安装编译软件-y直接安装无需二次确认2.下载apache源码包解压改名分析安装环境解压该压缩包后改名为httpd_tudy进入该目录执行configure脚本进行本地安装环境检查2.分析安装环境软件安装包目录中configure可执行文件用于对安装环境的分析检测所需库文件、工具文件是否存在检测依赖关系以及编译器汇编器的检查执行方式 ./configure作用检查系统环境是否存在所需依赖库比如 zlib、openssl不存在就需要安装编译器和工具链是否可用如 gcc、g、ld操作系统特性Linux、BSD、macOS 可能不同生成 Makefile根据检查结果动态生成配置文件常见是 config.h 和 Makefile不同环境下可能选择不同的宏定义、优化选项和依赖链接。缺少apr则下载---- yum install apr*下载完成后继续执行脚本缺啥安装啥环境报告执行make命令make是 GNU Make一款 Linux 下自动化编译工具专门用来解析Makefile脚本批量执行编译、链接、安装操作。作用按照 configure 程序生成 Makefile 文件中记录的信息进行二进制编译生成二进制安装文件格式make底层原理make 会读取 Makefile 文件解析各个目标target的依赖关系如果某个.c 文件被修改只会重新编译相关的.o而不是整个项目执行过程一般为源文件.c/.cpp→ 编译器 → 目标文件.o/.obj→ 链接器 → 可执行文件并行编译make -jN 可以开启 N 个线程并行编译大幅缩短构建时间出现报错修复方案1、安装缺失的 rpm 编译配置工具yum install redhat-rpm-config -y2、验证文件是否生成ls /usr/lib/rpm/redhat/redhat-hardened-ld能输出文件路径即代表修复成功。3、清理旧编译缓存重新编译 httpdmake clean make3.安装软件make installRPM下载RPM 全称RedHat Package Manager红帽软件包管理器是 RHEL、Rocky、CentOS Stream 等 Linux 发行版默认的底层软件包管理工具.rpm是其专属软件包格式。离线下载rpm 包结构二进制包编译好的程序直接安装使用如apr-1.7.5.el10.x86_64.rpm源码包src.rpm存放软件源码可本地重新编译打包包命名规则软件名-版本-发布号.系统大版本.架构.rpm例gcc-11.5.0-14.el9.x86_64.rpmgcc 软件名、11.5.0 版本、14 发布号、el9RHEL9、x86_6464 位架构。常用基础命令1. 安装rpm -ivh 包名.rpm # --nodeps 忽略依赖强制安装不推荐 rpm -ivh xxx.rpm --nodeps2. 卸载rpm -e 软件名3. 查询rpm -qa # 列出所有已安装软件 rpm -ql 软件名 # 查看软件安装所有文件路径 rpm -qi 软件名 # 查看软件版本、说明、发布信息 rpm -qf /usr/bin/apr-1-config # 根据文件反向查询所属软件包4. 升级rpm -Uvh 新版包.rpm5. 校验文件完整性rpm -V 软件名rpm 与 yum 的区别rpm底层工具仅本地处理 rpm 包不会自动下载、解决依赖依赖缺失直接报错yum/dnf上层工具基于 rpm 封装自动连接网络仓库下载软件自动分析、安装所有依赖日常运维优先使用。优点标准化打包统一文件存放路径系统管理整洁自带依赖记录可快速查询软件关联文件支持数字签名校验检测软件是否被篡改支持离线本地安装 rpm 包。缺点跨系统大版本el9/el10rpm 包不兼容混用会出现库冲突纯 rpm 命令无法自动补全依赖缺少配套仓库时安装繁琐不同发行版 rpm 包不能通用如 Debian 系 deb 包无法使用 rpm 安装。安装nginx下载rpm包安装启动 nginx 服务systemctl start nginx systemctl enable nginx放行防火墙 80 端口网页访问firewall-cmd --permanent --add-servicehttp firewall-cmd --reloadyumyum仓库配置文件存储路径/etc/yum.repos.d/yum makecache 制作缓存yum clean all 清除缓存工作原理服务端仓库构建将编译打包好的 RPM 软件包存放在 YUM 服务器同时提取每个软件的版本、依赖、冲突等信息生成元数据表格组成仓库数据库。客户端安装流程用户执行 yum 安装命令时客户端联网下载仓库元数据表和本地本机 RPM 数据库比对算出完整依赖树自动批量下载所有需要的主包 依赖包一次性完成安装自动处理依赖关系无需手动解决依赖报错。YUM 软件仓库定义存放 RPM 包、记录软件依赖 / 版本 / 冲突元数据的数据库服务端目录分为网络仓库、本地离线仓库两种。repo 配置文件读取逻辑系统读取/etc/yum.repos.d/目录下所有后缀为.repo的配置文件文件内定义仓库地址、类型、启用状态等信息yum 依靠这些配置找到对应 RPM 软件仓库实现软件安装、更新。创建本地yum源仓库1.光盘挂载mount /dev/sr0 /media/ ----------挂载到/media下软件包就放在AppStream和Base0S中yum源信息在repodate中2.在yum配置文件所在路径中建立一个配置文件3.针对本地仓库拉缓存yum makecache