Day15软件包管理
1.什么是rpm?、rpm软件包的组成部分有哪些
redhat packages manager 红帽推出软件包管理工具
件包管理工具... rpm工具 xxxxx.rpm
2.如何获取rpm软件包? 本地获取? 联网获取?
本地光盘ISO、数量有限、版本过低、适合刚开始接触
联网获取 很多地方都可以获取到软件包 版本较新
3.除了rpm安装软件以外是否还有其他方式安装软件?
分类 | 安装 | 版本 |
---|---|---|
rpm包 | 预先编译打包,安装简单 | 软件版本偏低 |
源码包 | c手动编译打包,安装繁琐 | 软件版本随意 |
二进制包(绿色包) | 解压即可用,安装简单 | 不能修改源码 |
4.rpm
安装
-i #安装软件包
-V #显示过程
-h #显示进度条
[root@oldboy ~]# mount /dev/cdrom /mnt #挂载镜像
#安装要补全软件包名称版本号
[root@oldboy ~]# rpm -ivh /mnt/Packages/tree-1.6.010.el7.x86_64.rpm
依赖
有的依赖关系很复杂,安装一个软件包要手动下载很多其他的软件包
升级
#直接安装联网的软件包
[root@oldboy ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm
#升级
[root@oldboy ~]# rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.5-1.el7.x86_64.rpm
卸载
[root@oldboy ~]# rpm -e zabbix-agent
#直接卸载无依赖关系的
查询
rpm -q #查询系统中是否已经安装过该软件
rpm -qa #列出所有已安装的软件包 (可以使用grep进行模 糊匹配)
rpm -ql #列出软件所有的文件所在路径
rpm -qc #查看软件包的配置文件
rpm -qf #查询系统已安装的命令属于哪个软件包 (文件)
5.yum
yum是软件包管理器,能自动处理依赖关系
yum源是软件仓库
配置仓库:
vim手动编写 .repo文件
wget下载已编写好的 . repo文件
安装 zabbix-release软件. 会释放一个.repo文件 至/etc/yum.repos.d/目录
如果在安装软件时,提示没有该软件 :
软件名写错了
当前系统仓库中搜索不到该软
图
6.yum的使用
安装
[root@oldboy ~]# yum install sl -y
#可以同时安装多个
[root@oldboy ~]# yum install vim wget unzip tree lrzsz -y
#本地安装 localinstall 当安装本地软件包时,本地软件包如果 有依赖,则自动通过本地仓库搜索软件包依赖进行安装. 如果搜索不到则报错
yum localinstall xxxx.rpm
升级
#查看系统需要更新的软件
[root@oldboy ~]# yum check-updates
#升级已安装的软件包
[root@oldboy ~]# yum update openssl
#刚装完系统可用
[root@oldboy ~]# yum update
卸载(慎用)
[root@oldboy ~]# yum remove sl -y
查询
#列出所有的已安装和未安装的软件包
[root@oldboy ~]# yum list
#列出系统中已成功安 装的软件包
[root@oldboy ~]# yum list installed