一.RPM基本概述
1.什么是rpm?
RPM全称 Redhat Package Manager 由红帽开发用于软件包的安装升级卸载与查询
rpm XXXX.rpm
2.rpm包名组成部分?
RPM包命名以-将软件分成了若干部分bash-4.2.46-28.el7.x86_64.rpm
3.如何获取rpm包
①使用本地CentOS7的镜像(ISO),挂载 mount /dev/cdrom /mnt,此时你会在/mnt/Packages目录下看到很多rpm的包文件。(版本过低 数量少)
②通过联网的方式获取rpm包。
其他安装软件方式?
分类 安装 版本
rpm包 预先编译打包,安装简单 软件版本偏低
源码包 手动编译打包,安装繁琐 软件版本随意
二进制包(绿色包) 解压即可使用, 安装简单 不能修改源码
二.RPM使用示例
1.rpm包如何安装
选项描述
-i安装rpm
-v显示安装详细信息
-h显示安装rpm进度
--force强制重新安装
--nodeps忽略依赖关系
#安装软件包, 需要指定软件包绝对路径
[root@lh ~]# rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
[root@lh ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
#在软件包所在目录下可以不指定绝对路径
[root@lhi ~]# cd /mnt/Packages/
[root@lhi Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm
#如果软件包存在, 强制再次安装
[root@lh ~]# rpm -ivh --force /mnt/Packages/tree-1.5.3-3.el6.x86_64.rpm
#安装samba服务需要依赖其他组件, 使用--nodeps可重新强制安装
[root@lh ~]# rpm -ivh --nodeps /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
2.如何查询已安装好的rpm包
选项描述
rpm -q查看指定软件包是否安装
rpm -qa查看系统中已安装的所有RPM软件包列表
rpm -qi查看指定软件的详细信息
rpm -ql查询指定软件包所安装的目录、文件列表
rpm -qc查询指定软件包的配置文件
rpm -qf查询文件或目录属于哪个RPM软件
rpm -qip查询未安装的rpm包详细信息
rpm -qlp查询未安装的软件包会产生哪些文件
#查询vsftpd这个rpm包是否安装
[root@lh ~]# rpm -q vsftpd
#模糊查找系统已安装的rpm包
[root@lh ~]# rpm -qa |grep ftp
#查询vsftpd软件包的相关信息
[root@lh ~]# rpm -qi vsftpd
#查询rpm包所安装的文件
[root@lh ~]# rpm -ql vsftpd
#查询rpm包相关的配置文件
[root@lh ~]# rpm -qc vsftpd
#查询配置文件或命令来自于哪个rpm包
[root@lh ~]# rpm -qf /etc/vsftpd/vsftpd.conf
root@lh ~]# rpm -qf /usr/sbin/vsftpd
#查询未安装的软件包会产生哪些文件
[root@lh ~]# rpm -qlp /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm
#查询未安装的软件包会产生哪些文件
[root@lh ~]# rpm -qip /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm
3.RPM包升级
选项描述
rpm -U如果老版本不存在则全新安装,如果存在有新版即升级
wget https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm
wget https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.0-1.el7.x86_64.rpm
#1.先安装低版本
[root@lh~]# rpm -ivh zabbix-agent-3.0.9-1.el7.x86_64.rpm
#2.尝试安装高版本(会出现错误)
[root@lh ~]# rpm -ivh zabbix-agent-4.2.0-1.el7.x86_64.rpm#
3.使用升级的方式,完美解决替换
[root@lh ~]# rpm -Uvh zabbix-agent-4.2.0-1.el7.x86_64.rpm
4.RPM包卸载(无依赖的)
#先查询, 然后卸载
[root@lh ~]# rpm -qa |grep sh
[root@lh ~]# rpm -e zsh
5.RPM包校验(扩展了解)
软件相关的数据库存放于/var/lib/rpm目录
参数描述
S文件的容量大小是否被改变
M文件的类型或者文件的属性是否被修改
5MD5 这一种指纹加密的内容已经不同
L路径已经被改变
U文件的所属主已被修改
G文件的所属组已被修改
T文件的创建时间已被改变
三.yum基本介绍
1.什么是YUM
Yum是RedHat以及CentOS中的软件包管理器。能够通过互联网下载 .rpm 包并且安装,并可以自动处理依赖性关系,无须繁琐地一次次下载、安装。
2.YUM源是什么
1要成功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的repository(软件仓库),这个软件仓库我们习惯称为 yum 源。(可以是本地源、网络源)
3.YUM源配置实例
①配置仓库
1.vim 手动编写.repo文件
2.wget下载已编写好的.repo文件
3.安装 zabbix-release软件. 会释放一个.repo文件至/etc/yum.repos.d/目录
②如果在安装软件时,提示没有该软件
1.软件名写错了
2.当前系统仓库中搜索不到该软件
4.yum的基本使用、安装、卸载、升级、查询等操作?
安装
yum install sl -y
yum install vim wget unzip tree lrzsz -y
升级
yum check-updates 查看系统中哪些软件包可以更新
yum update openssl 升级已安装的软件包
yum update 适合刚装完系统使用
卸载(不要随便用)
yum remove XXXX -y
查询
yum list 列出所有的已安装和未安装的软件包
yum list installed #列出系统中已成功安装的软件包