末学者笔记--rpm和yum软件管理(Linux)
一.rpm简介
这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件。
rpm:RPM is Redhat Package Manager(递归缩写)
rpm可以完成的操作:
安装软件
卸载软件
查询软件信息
升级、降级
检验
打包程序
rpm仅仅能管理符合rpm格式的程序包,不能管理源码格式的程序
程序的格式:
1)源码格式的程序:都是以压缩方式呈现的(后缀都是.tar.gz|bz2)
2)rpm格式的程序:这都是编译以后的程序 (后缀都是.rpm)
二.软件安装方式总结
安装软件方式有如下几种
1.方式1:编译安装
将源码程序按照需求进行先编译,后安装
缺点:
安装过程复杂,而且很慢。
优点:
安装过程可控,真正的按需求进行安装(安装位置、安装的模块都可以选择)。
2.方式2:rpm安装(用rpm来安装rpm后缀的安装包)
优点:
安装和卸载过程非常方便
缺点:
安装过程不可控(安装位置,安装那些功能模块)
rpm包的依赖关系非常复杂
3.方式3:yum安装
yum安装,其实就是自动分析rpm包的依赖关系,然后按照需要的顺序依次安装
4.方式4:绿色安装
绿色安装指的是不用安装的软件,通常是一个压缩文件,解压之后直接可以运行。
三.rpm的操作
1、安装rpm包
格式:rpm -ivh 软件包名
选项:
-i:install,安装软件
-v:verbose,显示安装过程
-h:hash用#表示安装进度(# 2%)
-vh:显示过程及进度
-vv:显示更详细的安装过程信息
-vvv:显示更更详细的安装过程信息
2、卸载rpm包
格式:rpm -e 软件名
选项:
-e:erase,卸载软件
如:
# rpm -e zip
3、查询已经安装的rpm包
格式:rpm -q 软件名
选项:
-q:查看一个已经安装的软件
-a:查看所有已经安装的软件all
-l:显示软件安装完成以后生成文件列表(所有文件)list
-i:查看软件包的相关信息info
-d:显示该软件所生成的说明性质的文档列表docfiles
-c:查看软件所生成的配置文件列表configfiles
--scripts:查看软件相关的脚本
补充:
安装前脚本(preinstall)
安装后脚本(postinstall)
卸载前脚本(preuninstall)
卸载后脚本(postuninstall)
——rpm -q zip #查看zip是否安装
——rpm -qa #查看当前系统所有已经安装的软件
【总结】: rpm -q 程序名 --》查询该程序是否已经安装
rpm -ql 程序名 --》查询该程序生成的文件
rpm -qf `which command` --》查看文件所依赖的包
rpm -qa --》查询所有已经安装和未安装的包
4、升级软件
选项:
-U:upgrade,升级或安装软件
-F:freshen,仅仅是升级操作
使用格式;
——rpm -Fvh 软件包名
——rpm -Uvh 软件包名
四.软件管理yum
含义:也是一个rpm包的管理工具,可以实现自动解决rpm包的依赖关系(自动安装依赖顺序进行rpm包的安装)
为何rpm包会有依赖关系?
制作rpm的人,在制作rpm包的时候,就将这个rpm的所依赖的软件的信息保存在这个rpm包的内部。
1.yum的工作原理
(1).需要首先创建一个yum仓库(rpm包仓库、软件仓库)
1)仓库其实就是一个目录
2)仓库中存放的是rpm包
3)仓库中还保存了一个文件,文件中记录了该仓库中所有rpm包的元数据信息
4)元数据信息包括:
软件名
软件版本
软件是否已经安装
软件的依赖关系
(2).用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。
2.yum仓库
本地:将本地的一个目录做成yum仓库,只有当前系统可以。
网络:通过网络将服务器上的一个目录作为yum仓库,网络中的全部主机都可以用。
使用yum仓库的方式,就是修改yum的配置文件
yum的配置文件:
主:/etc/yum.conf
子:/etc/yum.repos.d/*.repo
/etc/yum.conf文件
cachedir=/var/cache/yum/$basearch/$releasever
指定缓存文件的保存位置,默认:/var/cache/yum/x86_64/7/
keepcache=0
指定是否保留缓存文件
用yum安装软件过程中会从yum仓库下载并缓存多个资源:
1)会将yum仓库的元数据文件缓存到配置文件所指定的路径中;
2)会将要安装的软件及其依赖的软件一并缓存到配置文件指定的目录中。
3.yum配置文件的构成
[localRpm] <<<指定yum仓库的id,可以随便写,但是中间不能有空格
name=xxx <<<指定yum仓库的名称,可以随便写
enabled=0|1 <<<指定是否使用该yum仓库,0表示不使用;1表示使用
gpgcheck=0|1 <<<指定是否对rpm包做完整性和来源合法性验证,0表示不做验证;1表示必须做验证
baseurl= <<< 指定yum仓库的url
gpgkey= <<< 指定公钥文件(如果gpgcheck=1,那么该项不能省略)
4.yum仓库的url的表示方式
注意:在指定yum仓库的时候,其实不是指向rpm包的目录,而是执行repodata所在目录
本地yum仓库格式:
file://
例子:比如我的yum仓库/myrpm,此时yum仓库的表示方式就是file:///myrpm
网络yum仓库:
http://
例如:http://mirrors.aliyun.com/epel/7Server/x86_64/
5.创建本地yum仓库
使用系统光盘中的rpm包作为yum仓库
(1)第一步:挂载光盘
——mount /dev/cdrom /media
(2)第二步:备份yum自带的配置文件
——cd /etc/yum.repos.d
——mkdir bak
——mv *.repo bak (或——mv C* bak)
(3)第三步:创建yum的配置文件,使用光盘作为yum仓库
——vim local.repo #名称随便取,但必须为xx.repo格式
[localrepo]:
name=local repo
enabled=1
gpgcheck=0
baseurl=file:///media
(4)第四步:执行yum命令检测结果
——yum clean all <<<清空yum缓存的全部数据
——yum repolist <<<检查yum仓库中有多少个可用的rpm包
6.yum使用
(1)安装软件
——yum -y install 软件1 软件2 软件3 .... #安装多个软件用空格隔开
(2)卸载软件
——yum -y remove 软件1 软件2 软件3 ....
(3)管理包组
grouplist:查看系统中的全部的包组
groupinfo包组名:查看指定包组的信息(包组的作用、包含的软件)
groupinstall包组名:安装指定的包组
groupremove包组名:卸载指定的包组
CentOS7: 命令行界面升级为图形化界面
yum groupinstall "X Window System" -y
yum groupinstall "GNOME Desktop" "Graphical Administration Tools" -y
这时,我们可以通过命令 startx 进入图形界面,第一次进入会比较慢,请耐心等待。(可能需要重启,命令为reboot)
(4)管理yum的缓存数据
clean [ packages | metadata | all ]
all:清除所有数据
packages:仅仅清除rpm包
metadata:仅仅清理缓存元数据
(5)查看所有已经安装和尚未安装rpm包
yum list all或者yum list可以列出所有的软件包
(6)yum list available:仅仅显示可以安装但是尚未安装的rpm包
(7) yum list installed:仅仅显示已经安装rpm包
@:表示已经安装rpm
(8)查看yum仓库的信息
——yum repolist
7.网络yum源的使用方式
国内主流的网络yum仓库地址:
mirrors.aliyun.com 阿里
mirrors.163.com 网易
mirrors.sohu.com 搜狐
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=http://mirrors.163.com
[epel]
name=epel repo
enabled=1
gpgcheck=0
baseurl=http://mirrors.aliyun.com/epel/7Server/x86_64/
末学者笔记--rpm和yum软件管理(Linux)的更多相关文章
- Linux rpm和yum软件管理
rpm是管理程序的一个小工具,rpm常来用作查询 什么源码包:大多数都是tar.gz,bz.bz2结尾的包 zip结尾的包 压缩格式为 zip –r 命名.zip ./* 解压格式为 unzip 命名 ...
- rpm和yum软件管理
rpm简介 数据库管理工具,通过读取数据库,判断软件是否安装,如已安装可读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Package Manager(递归 ...
- rpm和yum软件管理(week2_day5)--技术流ken
rpm简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Package ...
- rpm与yum软件管理
一.rpm 简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Pack ...
- 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 ...
随机推荐
- 快速去水印(win10换图3D工具)
之前抠图都用ps啥的,后来发现win10自带的工具画图3D可以直接扣简单的图案,达到去水印的效果 1.将图片放入软件中 2.使用神奇选择工具,调整大小,框出图标 3.点击下一步,将没选上的或选多的进行 ...
- 洛谷 P2325 [SCOI2005]王室联邦
简化版题意: 一个国家由\(n\)个城市组成一颗树,要将其划分为\(n\)个省 每个城市大小为\([B,3B]\),每个省有一个省会(不一定要在省内),使得每个省的所有城市到省会的路径上不能经过其他省 ...
- (BST 递归) leetcode98. Validate Binary Search Tree
Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...
- Linux安装Oracle JDK替换OpenJDK详解
转自http://www.lsychina.com/howto_install_oracle-jdk_replace_openjdk_on_linux.html 众所周知,由于Oracle公司的JDK ...
- js 时间格式化 兼容safari 苹果手机
export function formatTime (fmt, date) { date = new Date(date + '+08:00') // 兼容safari var o = { 'M+' ...
- iframe内document事件监听
//监听iframe子页面,关闭menu $("iframe").on("load", function(event){//判断 iframe是否加载完成 $( ...
- Turtle库的学习积累
1.什么是turtle库 Python的Turtle库是一个直观有趣的图形绘制函数库,Turtle英文翻译过来是乌龟的意思,在绘图时可以想象成一只乌龟在移动. 2.绘图坐标体系 海龟的移动方向 3.绘 ...
- win10中使用 Windows照片查看器
新建一个txt,将文件后缀名改为 .reg 用记事本或者其他txt编辑器编辑,复制下面文字: Windows Registry Editor Version 5.00 ; Change Extensi ...
- JS数组(JSON)整合篇-方法整理
遍历:arr_Param.forEach(function (item, i) {}); 反序排序:arr_Param.reverse(); 合并数组:arr_Param.push.apply(arr ...
- YOLO学习
YOLO1:https://blog.csdn.net/m0_37192554/article/details/81092514 https://blog.csdn.net/shuiyixin/art ...