rpm与yum软件管理
一、rpm
简介
这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件。
rpm:RPM is Redhat Package Manager(递归缩写)
rpm可以完成的操作
安装软件
卸载软件
查询软件信息
升级、降级
检验
打包程序
rpm仅仅能管理符合rpm格式的程序包,不能管理源码格式的程序
一、安装rpm包
格式:rpm -ivh 软件包名
选项
-i:安装软件
-v:显示安装过程
-h:用#表示安装进度(# 2%)
-vv:显示更详细的安装过程信息
-vvv:显示更更详细的安装过程信息
二、卸载rpm包
格式:rpm -e 软件名
选项:
-e:卸载软件
例子:卸载软件包ken
# rpm -e ken
三、查询rpm包
格式:rpm -q 软件名
选项:
-q:查看一个已经安装的软件
-a:查看所有已经安装的软件all
-l:显示软件安装完成以后生成文件列表(所有文件)list
-i:查看软件包的相关信息 info
-d:显示该软件所生成的说明性质的文档列表docfiles
-c:查看软件所生成的配置文件列表configfiles
--scripts:查看软件相关的脚本
四、查询文件是由哪个软件生成的
-f:以/bin/ls文件为例
[root@localhost ~]# rpm -qf /bin/ls
coreutils-8.22-.el7.x86_64
五、升级软件
选项
-U:升级或安装软件
-F:仅仅是升级操作
使用格式;
rpm -Fvh 软件包名
rpm -Uvh 软件包名
二、yum
简介
yum是一个rpm包的管理工具,可以实现自动解决rpm包的依赖关系(自动安装依赖顺序进行rpm包的安装)
为何rpm包会有依赖关系?
制作rpm的人,在制作rpm包的时候,就将这个rpm的所依赖的软件的信息保存在这个rpm包的内部
yum的工作原理
通过yum源(本地或者网络源)来解决rpm包的依赖问题。其实yum源本质上就是rpm包的集合
是如何来解决依赖关系的呢
用 yum 进行安装的过程(比如要安装软件A,A依赖B 和C, B依赖C D)
1)yum首先会扫描保存元数据信息的文件,检查A是否已经安装,如果已经安装,那提示已经安装
2)如果A尚未安装,那么扫描A的依赖关系信息,会发现A 依赖B 和C
3)yum会再次扫描元数据文件,检测B C 是否安装,如果都已经安装,那么会开始开始安装A
4)如果B C尚未安装,那么会检测 B C的依赖关系,会发现B依赖C D
5)yum会再次扫描元数据文件,检测C D是否安装,如果都已经安装,那么会开始开始安装B,然后安装C,,然后安装A
yum源的配置方法
yum的配置文件
主配置文件:/etc/yum.conf
子配置文件:/etc/yum.repos.d/*.repo (意思是在yum.repos.d这个目录下,只要一 .repo为结尾的文件都会被识别为配置文件)
yum源的内容构成
[localRpm] <<< 指定yum仓库的id,可以随便写,但是中间不能有空格
name=xxx <<< 指定yum仓库的名称,可以随便写
enabled=0|1 <<< 指定是否使用该yum仓库,0表示不使用;1表示使用
gpgcheck=0|1 <<< 指定是否对rpm包做完整性和来源合法性验证,0表示不做验证;1表示必须做验证
gpgkey= <<< 指定公钥文件(如果gpgcheck=1,那么该项不能省略)
baseurl= <<< 指定yum仓库的url(1.本地yum源 file:// 例如 baseurl=file:///mnt
2.网络源 http:// 例如 baseurl=https://mirrors.aliyun.com/epel/7/x86_64/)
1.本地源的配置
使用光盘中的rpm包作为yum仓库
第一步:挂载光盘
# mount /dev/cdrom /media
第二步:备份yum自带的配置文件
# cd /etc/yum.repos.d
# mkdir bak
# mv *.repo bak
第三步:创建yum的配置文件,使用光盘作为yum仓库
# vim 1.repo
[myrepo]
name=my repo
enabled=1
gpgcheck=0
baseurl=file:///media
第四步:执行yum命令检测结果
# yum clean all <<< 清空yum缓存的全部数据
# yum repolist <<< 检查yum仓库中有多少个可用的rpm包
2.网络源的配置
国内主流的网络yum仓库地址
mirrors.aliyun.com
mirrors.163.com
mirrors.sohu.com
进入网址的子级页面直到出现repodata的页面,将这个页面的网址复制放到baseurl后面
rpm的yum源
centos提供的
epel提供的:
例子:使用aliyun提供的epel 和centos的yum源
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim new.repo
[centos]
name=centos repo
enabled=1
gpgcheck=0
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
[epel]
name=epel repo
enabled=1
enabled=1
baseurl=http://xxxx
rpm与yum软件管理的更多相关文章
- 末学者笔记--rpm和yum软件管理(Linux)
一.rpm简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Packa ...
- rpm和yum软件管理
rpm简介 数据库管理工具,通过读取数据库,判断软件是否安装,如已安装可读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Package Manager(递归 ...
- rpm和yum软件管理(week2_day5)--技术流ken
rpm简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Package ...
- Linux rpm和yum软件管理
rpm是管理程序的一个小工具,rpm常来用作查询 什么源码包:大多数都是tar.gz,bz.bz2结尾的包 zip结尾的包 压缩格式为 zip –r 命名.zip ./* 解压格式为 unzip 命名 ...
- rpm 和 yum 软件管理
软件安装总结: 安装软件方式有如下几种: 方式1:编译安装 将源码程序按照需求进行先编译,后安装 缺点: 安装过程复杂,而且很慢 优点: 安装过程可控,真正的按需求进行安装(安装位置.安装的模块都可以 ...
- yum 软件管理器
yum软件管理器 yum是一个强大的软件包管理器,能够自动解决安装时rpm包之间的依赖关系. 一.使用yum管理软件包 1.使用命令 yum help 查看使用方法 [root@majinhai ~] ...
- Linux之yum软件管理
YUM yum = Yellow dog Updater, Modified主要功能是更方便的添加/删除/更新RPM包.它能自动解决包的倚赖性问题. 它能便于管理大量系统的更新问题 yum特点 *可以 ...
- linux系统rpm和yum软件包管理
软件安装方式总结 安装软件方式有如下几种: 方式1:编译安装 将源码程序按照需求进行先编译,后安装 缺点:装过程复杂,而且很慢 优点:安装过程可控,真正的按需求进行安装(安装位置.安装的模块都可以选择 ...
- linux yum软件管理
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
随机推荐
- Kafka生产者性能优化之吞吐量VS延迟
When we are talking about performance of Kafka Producer, we are really talking about two different t ...
- git pull的时候提示git pull <remote> <branch>
yuanqiao@yuanqiao-PC MINGW64 /h/WorkSpace/git/dadeTest (dev)$ git pullremote: Enumerating objects: 7 ...
- soapUI使用-调用post方法
前言 soapUI的安装请查看此链接:https://www.cnblogs.com/linxiu-0925/p/10138771.html 使用步骤 1打开soapUI 2新建一个项目:New SO ...
- Android中的数据结构
数据结构在Android中也有着大量的运用,这里采用数据结构与源代码分析相结合,来认识Android的数据结构 线性表 线性表可分为顺序存储结构和链式存储结构 顺序存储结构-ArrayList 通过对 ...
- WordPress概览
"绝望是一种罪过"-------------------------<老人与海> WordPress 是世界上使用最广泛的博客系统,是一款开源的PHP软件,在GNU通用 ...
- Spring MVC传输对象属性
今天搬砖时遇到一个问题,前端使用JSP+form传输数据,后台使用Spring MVC接收,但是接收到的对象属性一直是null,找了好久才发现原因,代码如下 前端代码 后端代码 需要注意一点 ...
- Spring Cloud--实现Eureka的高可用(Eureka集群搭建)实例
将10086注册到10087上: 再在10086服务的基础上复制一个Eureka的服务,端口为10087,将其注册到10086上: application-name的名称保持一致,只是一个服务的两个实 ...
- Js学习04--对象
1.如何辨别js中的对象 除了五种基本的数据类型,其他的都是对象.万物皆对象. 2.Js中对象的分类 1)内建对象 由ES标准定义的对象,在任何的ES实现中都可以使用. eg:String.Numbe ...
- SpringBoot--对SpirngMVC的自动配置
SpringBoot对SpringMVC提供了许多自动配置 Inclusion of ContentNegotiatingViewResolver and BeanNameViewResolver b ...
- Excel默认去除开头的0
用户反映打开的.xls文档打开时,excel会默认把某些以0开头零件号去零,导致数据丢失. 解决办法: 先用记事本打开,然后把EXCEL的单元格格式设为文本格式,再把数据复制过去就可以了. 或者先打开 ...