Linux- RPM与yum软件包安装
Linux安装及管理程序
一.Linux应用程序基础
1)应用程序与系统命令的关系
2)典型应用程序的目录结构
3)常见的软件包封装类型
二.RPM包管理工具
① RPM软件包管理器Red-Hat Package Manager
② RPM软件包
三.RPM命令的格式
① rpm命令能够实现几乎所有对RPM软件包的管理功能
② 执行“man rpm”命令可以获得关于rpm命令的详细帮助信息
③ rpm命令功能
四.查询RPM软件包信息
① 查询已安装的rpm软件信息
举例:
② 查询未安装的RPM软件包文件中信息
举例:
五.安装、升级、卸载RPM软件包
① 安装或升级RPM软件
举例:
② 卸载指定的RPM软件
举例:
六.维护RPM数据库
① 重建RPM数据库
② 导入验证公钥
==解决软件包依赖关系方法:==
① 安装有依赖关系的多个软件时
② 卸载有依赖关系的多个软件时
③ 忽略依赖关系
==编译安装的基本过程:==
七.配置本地yum源仓库
yum常用的操作命令:
举例:
一.Linux应用程序基础
1)应用程序与系统命令的关系

2)典型应用程序的目录结构

3)常见的软件包封装类型

二.RPM包管理工具
① RPM软件包管理器Red-Hat Package Manager
• 由Red Hat公司提出,被众多Linux发行版采用
• 建立统一的文件数据库
• 详细记录软件包安装、卸载、升级等变化信息
• 自动分析软件包依赖关系
② RPM软件包
• 软件素材参考:http://www.rpm.org
• 一般命名格式:
三.RPM命令的格式
① rpm命令能够实现几乎所有对RPM软件包的管理功能
② 执行“man rpm”命令可以获得关于rpm命令的详细帮助信息
③ rpm命令功能
• 查询、验证RPM软件包的相关信息
• 安装、升级、卸载RPM软件包
• 维护重建RPM数据库信息等综合管理操作
四.查询RPM软件包信息
① 查询已安装的rpm软件信息
rpm + -q【子选项】+ 【软件名】
常用选项:
• rpm -q 软件名
查询指定软件是否已安装
• rpm -qi 软件名
显示已安装的指定软件的详细信息
• rpm -ql 软件名
显示已安装的指定软件的文件列表
• rpm -qc 软件名
列出已安装的指定软件的配置文件
• rpm -qd 软件名
列出已安装的指定软件的软件包文档所在位置
• rpm -qR 软件名
列出已安装的指定软件的依赖的软件包及文件
• rpm -qF 文件或目录
查询已安装的指定软件属于哪个安装包
• rpm -qa
显示当前系统中以rpm方 式安装的所有软件列表
• rpm -qa | grep -i postfix
查询软件postfix是否已安装
举例:

② 查询未安装的RPM软件包文件中信息
rpm + -qp【子选项】+ RPM包文件
常用选项:
• rpm -qpi RPM包文件名
查询指定软件包的详细信息
• rpm -qpl RPM包文件名
查询指定软件包的文件列表
• rpm -qpc RPM包文件名
查询指定软件包的配置文件
• rpm -qpd RPM包文件名
查询指定软件包的软件包文档的位置
举例:
rpm -qpl RPM包文件名:
五.安装、升级、卸载RPM软件包
① 安装或升级RPM软件
rpm + 【选项】+ RPM包文件
rpm + -ivh RPM软件包
常用选项:
-i : 安装一一个新的RPM 软件包
-U: 升级某个软件包,若未安装过,则进行安装
-F: 升级某个软件包,若未安装过,则放弃安装
举例:
-ivh:



注意:用RPM安装如果不在相关目录里面,则需要绝对路径进行安装;而yum却不需要,随心所欲
② 卸载指定的RPM软件
rpm + -e + 软件名
常用选项:
-h: 在安装或升级软件包的过程中,以“#”号显示安装进度
-v: 显示软件安装过程中的详细信息
-e: 卸载指定名称的软件包
–force: 强制安装某个软件包,比如要安装版本更旧的软件包
–nodeps: 在安装或升级、卸载–个软件包时,不检查与其他软件包的依赖关系
举例:
-evh:

- - nodeps:

六.维护RPM数据库
① 重建RPM数据库
当RPM数据库发生损坏,可通过重建RPM数据库修复
rpm - -rebuilddb 或 rpm - -initdb
② 导入验证公钥
在没有导入用于数字签名验证的公钥文件之前,安装光盘中的一部分RPM软件包时会报错。需要RPM数据库中导入位于光盘根目录下的公钥文件
mount /dev/sr0/mnt/
rpm - -import/mnt/RPM-GPG-KEY-Centos-7
解决软件包依赖关系方法:
① 安装有依赖关系的多个软件时
• 被依赖的软件包需要先安装
• 可同时指定多个.rpm包文件进行安装
② 卸载有依赖关系的多个软件时
• 依赖其他程序的软件包需要先卸载
• 可同时指定多个软件名进行卸载
③ 忽略依赖关系
结合 ‘‘- -nodeps" 选项,但可能导致软件异常
编译安装的基本过程:
① tar 解包
tar zxvf/jxvf xxx. tar.gz/xxx. tar.bz2 -C目标路径
② 配置软件模块(安装路径、开启或关闭模块功能、管理服务进程的用户设定)
./configure --prefix= 目标路径(此软件安装到哪里去)
③ 编译(将源代码转换为可执行的程序)
make
④ 安装
make install
• 安装源代码软件包需要编译安装,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make
• 如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐。这里可以使用 yum方式进行一键安装
七.配置本地yum源仓库

yum常用的操作命令:

举例:
① 先把光盘挂载在mnt下:
mount /dev/cdrom /mnt/ 或 mount /dev/sr0 /mnt/

② 进入cd /etc/yum.repos.d/,创建一个空目录,把yum.repos.d里的文件移到,新建的目录里:

③ 用vim编辑器,到vim local.repo:

④ 退出vim编辑器后,进行删除缓存并更新 yum clean all && yum makecache:

⑤ 进行安装yum -y install 软件名:



Linux- RPM与yum软件包安装的更多相关文章
- linux系统rpm和yum软件包管理
软件安装方式总结 安装软件方式有如下几种: 方式1:编译安装 将源码程序按照需求进行先编译,后安装 缺点:装过程复杂,而且很慢 优点:安装过程可控,真正的按需求进行安装(安装位置.安装的模块都可以选择 ...
- Linux如何查看YUM的安装目录
Linux下如何查看使用YUM安装过的包的安装路径呢? 在搞清楚这个问题前,我们先来了解一下YUM. YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和R ...
- Linux RPM和YUM
rpm包的管理:sealed 介绍: 一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中.它生成具有.RPM扩展名的文件. RPM是RedHat Package Manager(Re ...
- linux RPM、YUM
Linux 界的两大主流: RPM 与 DPKG distribution 代表 软件管理机制 使用指令 在线升级机制(指令) Red Hat/Fedora RPM rpm, rpmbuild YUM ...
- Linux 下使用yum 命令安装MySQL
Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.yum安装mysql 1. 查看有没有安装包: yum list mysql* #移除已经安装的mysq ...
- Linux系统——本地yum仓库安装
一.yum仓库概述 yum是基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无需繁琐地一次次下载.安装. 二.yum仓库安装的方式 ...
- Linux CentOS 使用Yum源安装MySQL 5.7
在CentOS(Fedora.RedHat)系统中,可以使用yum install mysql命令来安装MySQL,但所安装的MySql版本一般都较旧,所以更推荐通过源码编译安装或下载最新rpm安装包 ...
- Linux rpm和yum软件管理
rpm是管理程序的一个小工具,rpm常来用作查询 什么源码包:大多数都是tar.gz,bz.bz2结尾的包 zip结尾的包 压缩格式为 zip –r 命名.zip ./* 解压格式为 unzip 命名 ...
- 红帽学习笔记[RHCSA] 第八课[Nice值、时间同步、RPM与Yum软件安装]
第八课 nice值 什么是nice值 给进程设置的优先级就是nice.nice的范围是-20~20.nice值越小占用的系统资源就越多,就是这个进程不nice. 如何查看nice值 # 使用top命令 ...
随机推荐
- 机器学习算法之K近邻算法
0x00 概述 K近邻算法是机器学习中非常重要的分类算法.可利用K近邻基于不同的特征提取方式来检测异常操作,比如使用K近邻检测Rootkit,使用K近邻检测webshell等. 0x01 原理 ...
- redis全解
Redis全解 1.什么是Redis? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到 ...
- NVIDIA Turing Architecture架构设计(上)
NVIDIA Turing Architecture架构设计(上) 在游戏市场持续增长和对更好的 3D 图形的永不满足的需求的推动下, NVIDIA 已经将 GPU 发展成为许多计算密集型应用的世界领 ...
- switch分支语句
语句句式 Calendar c = Calendar.getInstance(); //获得一周的某天 int i = c.get(Calendar.DAY_OF_WEEK); switch (i) ...
- 简单理解数据库连接池(JDBC)
为什么要使用连接池? 在我们写代码的时候,写了很多类,假如这些类都和数据库打交道.这样的话每个类都要去获取数据库连接,操作完了之后就把连接释放了. 要知道,获取数据库连接的操作其实是向操作系统底层去获 ...
- Anno微服务Viper(控制面板) 支持在线部署
1.Anno简介? Anno是一个微服务框架引擎.入门简单.安全.稳定.高可用.全平台可监控.依赖第三方框架少.可在线升级部署. 2.Viper简介 Viper 是一个基于Anno微服务引擎开发的Da ...
- NX二次开发-获取WCS标识
函数:UF_CSYS_ask_wcs() 函数说明:获取工作坐标系对象的标识. 用法: 1 #include <uf.h> 2 #include <uf_csys.h> 3 e ...
- 【NX二次开发】导入x_t,UF_PS_import_data
导入x_t,导入XT后要UF_DISP_regenerate_display(); 更新显示 否则不会显示 string strPaths ="D:\\1.x_t"; char s ...
- 【VBA】字符串处理
InStr 函数:查找字符串 1 Sub InStr函数() 2 Dim strTemp As String 3 strTemp = "=AAA=BBB=C" 4 Debug.Pr ...
- 【linux】驱动-12-并发与竞态
目录 前言 12. 并发&竞态 12.1 并发&竞态概念 12.2 竞态解决方法 12.3 原子 12.3.1 原子介绍 12.3.2 原子操作步骤 12.3.3 原子 API 12. ...