Linux:RPM软件包管理以及Yum软件包仓库

挂载光驱设备


RPM软件包管理

RPM软件包简介


区分软件名和软件包名

软件名:firefox

软件包名:firefox-52.7.0-1.el7.centos.x86_64.rpm

查询软件信息

bash 复制代码
	查询软件(参数为软件名)
]# rpm  -qa    #当前系统中所有已安装的软件包
]# rpm  -qa  |  grep  firefox      
]# rpm  -q   firefox    #查看firefox是否安装
firefox-52.7.0-1.el7.centos.x86_64
]# rpm  -q   httpd       #httpd提供web服务的软件
未安装软件包 httpd
]# rpm  -q   bash
bash-4.2.46-30.el7.x86_64


]# rpm  -qi   firefox       #查询软件信息(查询已安装)
]# rpm  -ql   firefox       #查询软件安装了哪些内容(安装清单)
]# rpm  -ql    firefox   |   less







查询某个目录或文件是哪个RPM包带来的

bash 复制代码
•	查询某个目录或文件是哪个RPM包带来的
--	格式:rpm  -qf  [文件路径]...
--	即使目标文件被删除,也可以查询
[root@localhost ~]# which  vim   #查询命令对应的程序文件
/usr/bin/vim
[root@localhost ~]# rpm -qf  /usr/bin/vim
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -q   vim-enhanced
vim-enhanced-7.4.160-4.el7.x86_64
[root@localhost ~]# rpm -qf    /etc/passwd
[root@localhost ~]# rpm -qf   /usr/bin/firefox


which查询命令对应的程序文件位置

查询软件包(参数为软件包名)

bash 复制代码
	查询软件包(参数为软件包名)
]# rpm  -q   vsftpd     #查询vsftpd软件是否安装
未安装软件包 vsftpd 
]# ls /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

查询软件包的安装清单:  
]# rpm -qpl  /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
查询软件包信息
]# rpm -qpi /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm


注:使用ql查询已安装的软件,参数是软件名;qpl的参数是软件包名,用于查询软件包的信息。

导入红帽签名信息



Yum软件包管理

解决依赖关系

bash 复制代码
	解决依赖关系
--	先安装/卸载要求的包
--	如果RPM包齐全但比较多,可以用通配符 *
•	忽略依赖关系(不推荐)
--	可能会导致软件运行异常
--	辅助选项 --nodeps
常见依赖关系的报错:
[root@localhost ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-61.el7.x86_64.rpm 
错误:依赖检测失败:
	bind = 32:9.9.4-61.el7 被 bind-chroot-32:9.9.4-61.el7.x86_64 需要

构建Yum软件包仓库

作用:自动解决依赖关系安装软件

服务:自动解决依赖关系安装软件

yum机制概述



bash 复制代码
服务端(本机):  1.众多的软件   2.仓库数据文件(repodata) 3.FTP协议 或 http协议        
本地Yum仓库:服务端需要有光盘内容即可

客户端(本机):指定服务端位置
--	仓库配置:/etc/yum.repos.d/*.repo
--	错误的文件会影响正确的文件

有一个.repo文件写错,会影响其他正确的.repo文件

配置本地yum仓库

bash 复制代码
客户端文件配置内容:
--	[源名称] :自定义名称,具有唯一性
--	name:仓库的描述信息
--	baseurl:指定YUM服务端的位置 
--	enabled:是否启用
--	gpgcheck:是否验证红帽签名
--	gpgkey:用于RPM软件包验证的密钥文件

完整示例:
]# vim   /etc/yum.repos.d/mydvd.repo 
[test01]
name=test00000001
baseurl=file:///mnt
enabled=1
gpgcheck=1        
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7
相关推荐
名字还没想好☜2 小时前
用 systemd 托管后台服务:Restart 策略、日志接管、资源限制与开机自启全踩一遍
运维·docker·kubernetes
乌恩大侠2 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
tangwangbi3 小时前
Linux 系统配置文件:/etc/profile、~/.bashrc 和 ~/.bash_profile 三者之间的区别与作用
linux·运维·bash
蜀道山老天师3 小时前
Shell Bash变量与运算符(含条件测试与流程控制)
linux·运维·bash
Mr.朱鹏3 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
草邦设计开发团队_媒体资源平台3 小时前
GEO 信源整合一键发布软文:从内容生产到流量获客的自动化实践
运维·人工智能·自动化
zhou lily3 小时前
非标自动化管理系统ERP如何选?2026年10大ERP软件对比分析
运维·自动化
mengge.cloud3 小时前
存储技术基础小白教程
linux·运维·服务器·wpf·存储
云贝贝贝4 小时前
腾讯云 TDSQL(MySQL 版)运维高频 6 坑:代理路由、读写分离、分片键、监控、PITR
运维·mysql·腾讯云
小五传输4 小时前
FTP替代怎么做?医院文件安全传输选型与迁移指南
大数据·运维·安全