linux基础之程序包管理(rpm,yum)
一、rpm
安装:rpm { -i | --install } [ install-options ] PACKAGE_FILE...
-v: 显示安装时的详细信息
-vv: 显示许多难以阅读的调试信息
-h: 以#显示程序包管理执行进度,每个#表示2%的进度
[ install-options ]:
--test: 不安装包,知识简单的检查并报告可能的冲突
--nodeps: 安装前或升级包前不做依赖检查
--replacepkgs: 即使包的部分内容已安装在系统中,也安装此包
--nosignature: 不检查来源合法性
--nodigest: 不检查包完整性
--noscripts: 不执行安装前或安装后脚本
升级:
rpm { -U | --upgrade } [ install-options ] PACKAGE_FILE...
rpm { -F | --freshen } [ install-options ] PACKAGE_FILE...
upgrade: 安装有旧版程序包,则升级,如果不存在,则安装
freshen: 安装有旧版程序包,则升级, 如果不存在, 则不执行安装
--oldpackage: 降级,允许旧版本程序包取代新的版本
--force: 强行升级 注意:1. 不要对内核做升级操作,linux支持多内核版本并存,因此,可以直接安装新版本内核。
2. 如果原程序包的配置文件安装后被修改,升级后,新版本的同一个配置文件不会覆盖老版本的配置文件,而是把新版本的配置文件重命名后保留,比如:FILENAME.rpmnew
查询:rpm { -q | --query} [ select-option] [ query-option ]
[ select-option ]:
-a: 所有包
-f: 查询指定的文件由哪个程序包安装生成
-p /PATH/TO/PACKAGE_FILE: 针对尚未安装的程序包文件做查询操作
--whatprovides CAPABILITY: 查询指定的CAPABILITY由哪个包所提供
--whatrequires CAPABILITY: 查询指定的CAPABILITY被哪个包所依赖
[ query-option ]:
--changelog: 查询该包的变更信息
-c: 查询程序的配置文件
-d: 查询程序的文档
-i: 展示包信息,包括名字、版本、描述等信息
-l: 查看指定的程序包安装后生成的所有文件
--scripts: 程序包自带的脚本片段
-R:列出包所依赖的别的包
--provides: 列出该包所提供的功能
卸载:rpm -e [ OPTIONS ] PACKAGE_NAME...
--allmatches: 将卸载与PACKAGE_NAME相匹配的所有版本的包
--nodeps: 卸载前不检查依赖性
--noscripts: 不执行安装前或安装后脚本
--notriggers: 不执行由移除该包所触发的脚本
--test: 不真正卸载任何内容,只是遍历
校验:rpm { -V | --verify } [ select-options ] [ verify-option ]
S: 文件大小
M: 模式(包括许可和文件类型)
T:修改时间
5:MD5校验和
L: 符号链接
D:设备
U: 用户
G:组
导入GPG密钥: rpm --import /PATH/FROM/PACKAGE
数据库重建:rpm { --initdb | --rebuilddb }
--initdb: 如果事先不存在数据库,则新建,否则,不执行任何操作
--rebuilddb: 无论当前存在与否,直接重新创建数据库
二、yum
yum的配置文件:
/etc/yum.conf: 为所有仓库提供公共配置
/etc/yum.repo.d/*.repo: 为仓库的指向提供配置
仓库指向的定义:
[repositoryID] //仓库ID
name= Some name for this repository //仓库的名字
baseurl=url://path/to/repository //repo源
enabled={ 1 | 0 } //是否启用此仓库
gpgcheck={ 1 | 0 } //是否需要校验
gpgkey=URL //校验文件存放位置
enablegroups{ 1 | 0 }
failovermethod={ roundrobin | priority } //默认为:roundrobin,意为url选择的时是轮询还是根据优先级
cost=# // 默认为1000
用法:yum [options] [command] [package]...
显示仓库列表:yum repolist [ all | enabled | disabled ]
显示程序包:
yum list [ all | glob_exp1 ] [ glob_exp2 ] [...]
yum list { available | installed | updates } [ glob_exp1 ] [...]
安装程序包:
yum install package1 [package2] [...]
yum reinstall package1 (重新安装)
升级程序包:
yum update package1 [package2]
yum downgrade package1 (降级)
检查可用升级:yum check-update
卸载程序包:yum remove | erase package1 [package2][...]
查看程序包信息:yum info [...]
查看指定的特性(可以是某文件)是由哪个程序包所提供:provides | whatprovides featurel [feature2] [...]
清理本地缓存:clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
构建缓存:makecacke
搜索:search string1 [string2] [...] : 以指定的关键字搜索程序包名及summary信息
查看指定包所依赖的capabilities:deplist [package1]
查看yum事务历史: history [summary | info | packages-list | | packagesinfo | addon-info | redo | undo |rollback | new | sync | stats]
安装升级本地程序包
localinstall rpmfile
localupdate rpmfile
包组管理相关的命令
{ groupinstall | groupupdate | grouplist | groupremove | groupinfo } group1
创建yum仓库:createrepo
yum的repo配置文件中可用的变量
$releaserver: 当前OS的发行版的主版本号
$arch: 平台
$basearch: 基础平台
$YUM0-$YUM9
yum的命令行选项:
--nogpgcheck:禁止进行gpg check
-y: 自动回答为yes
-q: 静默模式
--disablerepo=repoidglob: 临时禁用此处指定的repo
--enablerepo=repoidglob:临时启用此处指定的repo
--noplugins:禁用所有插件
三、实例
使用光盘作为本地yum仓库
1. 挂载光盘至某目录,创建/media/cdrom
mount -r /dev/cdrom /media/cdrom
2.创建配置文件: 在/etc/yum.repos.d目录下面vim centos7_Local.repo
[CentOS7]
name=CentOS7.1
baseurl=file:///media/cdrom
gpgcheck=0
linux基础之程序包管理(rpm,yum)的更多相关文章
- Linux程序包管理rpm与yum
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- Linux程序包管理之yum及源代码安装
第十六章.Linux程序包管理之yum及源代码安装 目录 yum介绍 yum配置文件 yum的repo配置文件中可用的变量 yum命令的使用 使用光盘作为本地yum仓库 如何创建yum仓库 编译安装的 ...
- 程序包管理rpm、yum与简单编译安装程序
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- 程序包管理rpm和yum
Linux程序包管理: API:Application Programming Interface源码包 POSIX:Portable OS 程序源代码 --> 预处理 --> 编译 -- ...
- Linux 程序包管理-RPM
程序简介: POSIX(Portable Openratin System)跨平台系统:不同操作系统平台的标准C库(glibc)都是遵循POSIX规范的,这样基于标准库开发程序的源代码可以夸平台编译 ...
- 十七、程序包管理之yum和编译安装
YUM Redhat二次发行版 Yellow Dog Linux,上使用的yum(Yellowdog Update Modifier),由yellow dog 研发 yum命令的工作原理 1.接收用户 ...
- Linux:Day10 程序包管理
YUM:yellow dog,Yellowdog Update Modifier yum repository:yum repo 存储了众多rpm包,以及包的相关的无数据文件(放置于特定目录下:rep ...
- Linux程序包管理初步-yum的使用
何为yum? yum:由yellow dog研发,全称Yellowdog Update Modifier 是rhel系列系统上rpm包管理器的前端工具,可用来自动解决依赖关系,从而更好的实现程序包的安 ...
- 【程序包管理】Linux程序包管理之yum源安装
yum源安装是我们工作中常用的一种方式,它是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RP ...
随机推荐
- CG标准函数库
(1)数学函数 函数 功能描述 abs(x) 返回输入参数的绝对值 acos(x) 反余切函数,输入参数范围为[-1,1], 返回[0,π]区间的角度值 all(x) 如果输入参数均不为0,则返回tu ...
- github常见错误提示之一
如果输入$ Git remote add origin git@github.com:Jomsou(github帐号名)/gitdemo(项目名).git 提示出错信息:fatal: remote o ...
- 【Hadoop学习之四】HDFS HA搭建(QJM)
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 由于NameNode对于整个HDF ...
- Hive复制分区表和数据
1. 非分区表: 复制表结构: create table new_table as select * from exists_table where 1=0; 复制表结构和数据: create tab ...
- JAVA基础3---JVM内存模型
Java虚拟机执行Java程序的时候需要使用一定的内存,根据不同的使用场景划分不同的内存区域.有公用的区域随着Java程序的启动而创建:有线程私有的区域依赖线程的启动而创建 JVM内存模型大致可以分为 ...
- 随笔 js-----------------------------------------------------------------------------------------------------
http://www.cnblogs.com/liuling/p/2014-4-19-04.html redis Base64.encode($( "#byerName").v ...
- 51nod 1130 N的阶乘的长度 V2(斯特林近似)
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T + ...
- JustOj 2040: 王胖子买零食 (贪心)
题目描述 大豪哥有个好朋友叫王胖子,众所周知王胖子特别爱吃零食,比如各种不一样的糖果,辣条呀,可是王胖子每个月用在买零食上的钱不是固定的,但是因为王胖子特别爱吃零食,他希望把自己能花在买吃的钱全部用掉 ...
- python 爬虫基础知识一
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...
- springmvc请求路径和请求参数的获取注解- @PathVariable和@RequestParam
@PathVariable和@RequestParam @PathVariable是从路径里面去获取变量,也就是把路径当做变量. @RequestParam是从请求里面获取参数. 如:url:http ...