Linux——RPM、Yum 安装及yum本地安装
RPM包管理器通过建立统一的文件数据库,对在Linux系统中安装、卸载、升级的各种.rpm软件包进行详细的记录,并能够自动分析软件包之间的依赖关系,保持各应用程序在一个协调、有序的整体环境中运行。
使用RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用“软件名-软件版本-发布次数.操作系统类型.硬件架构类型 .rpm”的文件名形式,如“bash-4.1.2-15.e16_4.x86_64.rpm”。其中硬件平台通常为“i386”“i686”等,表示适用于Intel公司的处理器,“x86_64”表示适用于64位的系统,如果是“noarch”表示不区分硬件架构(支持不同硬件体系的处理器)。
RPM命令具有相当复杂 的命令格式,结合不同的选项及子选项主要可以实现以下三类功能
- 查询、验证RPM软件包的相关信息
- 安装、升级、卸载RPM软件包
- 维护RPM数据库信息等综合管理
维护RPM数据库
重建数据库
init 初始化的意思
rebuild 重新建立 db(datebase)数据库
rebuilddb重新建立数据库
[root@localhost ~]#rpm --rebuilddb
或
[root@localhost ~]#rpm --initdb
导入验证公钥
import 导入的意思
[root@localhost ~]#rmp --import
/media/cdrom/RPM-GPG-KEY-redhat-release
查询RPM软件包信息
查询已安装的RPM软件包信息
rpm [选项] 软件包
查询功能主要通过 “ -q ” 来实现,主要针对当前系统中已经安装的软件包
- -qa 查看已安装所有软件包
- -qi 查看软件包更详细信息
- -ql 查看软件包安装的所有文件包括路径
- -qf 根据指定文件,查看属于哪个软件包
- -qc 查看此软件包所有配置文件以.conf .cnf .ini文件属于配置文件,包括路径
- -qd 查看软件包的文档(包括路径)
查询未安装的RPM软件包信息
rpm [选项] 软件包
通过 “ -qp ” 可以针对尚未安装的RPM包文件进行查询
- -qpi 查看未安装软件包详细信息
- -qpl 查看该软件包准备要安装的所有目标目录、文件列表
安装和升级RPM软件包
rpm -i 指安装指定的软件包
rpm -U 升级指定的软件包
rpm -v显示详细信息
rpm -h友好的显示文件大小
卸载指定的RPM软件包
rpm -e + 软件包名
rpm -v显示详细信息
rpm -h友好的显示文件大小
通常安装指定软包包时使用:rpm -ivh + 软件包名,卸载指定软件包时使用:rpm -evh +软件包名
如何查看yum源:
首先找一个目录作为挂载点,这里我们就使用/mnt,将/dev/sr0挂载到/mnt/目录下
mount /dev/sr0 /mnt
/mnt/packages (packages 包 里面有各种安装包)
yum list
挂载语法:
mout 设备名称 挂载点*(本地目录)*
rpm安装:
rpm安装过程中遇到依赖性问题,无法解决
yum安装:
可以使用yum仓库来解决:(如果使用官方,则使用的都是最新包)
[root@localhost ~]# yum install httpd -y
已加载插件:fastestmirror, langpacks
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
updates/7/x86_64/primary_db | 2.8 MB 00:00:00
Loading mirror speeds from cached hostfile* base: centos.ustc.edu.cn* extras: centos.ustc.edu.cn* updates: centos.ustc.edu.cn
正在解决依赖关系
…………省略部分内容…………
已安装:httpd.x86_64 0:2.4.6-90.el7.centos 作为依赖被安装:apr.x86_64 0:1.4.8-5.el7 apr-util.x86_64 0:1.5.2-6.el7 httpd-tools.x86_64 0:2.4.6-90.el7.centos mailcap.noarch 0:2.1.41-2.el7
rpm卸载:
[root@localhost ~]# rpm -evh bind
准备中... ################################# [100%]
正在清理/删除...1:bind-32:9.9.4-50.el7 ################################# [100%]
yum卸载:
[root@localhost ~]# yum -y remove httpd
已加载插件:fastestmirror, langpacks
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-90.el7.centos 将被 删除
--> 解决依赖关系完成……………省略部分内容………………删除:httpd.x86_64 0:2.4.6-90.el7.centos 完毕!
yum私网仓库
yum公网仓库
1)自建仓库
2)官方仓库
yum list 加载yum列表
yum安装语法:yum -y install 软件包
yum 包卸载语法:yum -y remove 软件包
清空缓存:yum -clean all (出现卡顿,延迟可使用)
安装过成功需要手动确认, 安装时或卸载时 -y 可以免交互
在无网络情况下建立本地yum仓库
yum文件,都以.repo为结尾的配置文件
进入yum本地配置文件
[root@localhost ~]# ping www.baidu.com //确定目前无网络状态
ping: www.baidu.com: 未知的名称或服务
[root@localhost ~]# cd /etc/yum.repos.d/ //进入yum配置文件目录
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
repo结尾的全是配置文件(需要使用网络,因为我们是在无网络情况下,所以暂时用不到,可以创建一个目录移动进去)
[root@localhost yum.repos.d]# mkdir yum
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo yum
[root@localhost yum.repos.d]# mv CentOS* yum
[root@localhost yum.repos.d]# ls
yum
现在,我们在yum.repos.d里面建立手工配置,建立一个文件,名字随意,如:abc
格式 vim abc.repo
进入后进行配置(如下图):
[文件名字]
描述信息,yum仓库的名称
指定软件所放的路径 ,file:// 是固定格式 /mnt是路径
1为开启yum仓库
0为关闭校验,不需要检查了
:wq 保存退出
这时使用yum list 就可以加载出来软件包了
[root@localhost yum.repos.d]# vim abc.repo
[root@localhost yum.repos.d]# yum list
已加载插件:fastestmirror, langpacks
abc | 3.6 kB 00:00
(1/2): abc/group_gz | 156 kB 00:00
(2/2): abc/primary_db | 3.1 MB 00:00
Loading mirror speeds from cached hostfile
已安装的软件包
GConf2.x86_64 3.2.6-8.el7 @anaconda
GeoIP.x86_64 1.5.0-11.el7 @anaconda
ModemManager.x86_64 1.6.0-2.el7 @anaconda
ModemManager-glib.x86_64 1.6.0-2.el7 @anaconda
NetworkManager.x86_64 1:1.8.0-9.el7 @anaconda
NetworkManager-adsl.x86_64 1:1.8.0-9.el7 @anaconda
………………省略部分内容…………
然后就可以进行安装了
[root@localhost yum.repos.d]# yum -y install httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-67.el7.centos 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-67.el7.centos,它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 httpd-tools.x86_64.0.2.4.6-67.el7.centos 将被 安装
--> 解决依赖关系完成…………省略部分内容…………已安装:httpd.x86_64 0:2.4.6-67.el7.centos 作为依赖被安装:httpd-tools.x86_64 0:2.4.6-67.el7.centos 完毕!
安装成功。通过实验可以看本地yum源会存在列表中没有此源文件而造成无法安装RPM包的问题,但是本地
yum源是可以在无网络情况下正常安装RPM包。
并且yum可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
Linux——RPM、Yum 安装及yum本地安装相关推荐
- Linux RPM包管理及yum安装用法
rpm命令 RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的"添加/删除程序" 常用命令组合: -ivh ...
- linux rpm找不到命令_Linux安装软件
在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续"下一步"即可,然而linux系统下安装一个软件似乎并不那么轻松了,因为不是在图形界面下,需要学会如何在l ...
- cygwin用命令安装软件_Cygwin本地安装版
cygwin本地安装版离线即可安装,使用十分方便,适合linux.安卓平台软件开发与测试时使用,倍受行业人员和学者们的青睐. http://www.itmop.com/downinfo/13002.h ...
- hadoop安装Snappy HBase本地安装Snappy
1.环境 Centos7 hadoop-2.7.7 zookeeper-3.4.14 hbase-1.4.10 JDK1.8 2.hadoop安装snappy(集群,在主库安装) 2.1.安装snap ...
- arch linux rpm格式,如何在ArchLinux上安装RPM包
有时候你可能会发现,想安装一个包,但是这个包只提供 RPM 安装文件,而 ArchLinux 并不支持安装 RPM 文件,这该怎么办呢? 下面这个方法也许可以帮到你. 1. 安装 rpmextract ...
- php本地的调试安装,教你本地安装、运行、调试PHP程序
安装工具 对学习PHP的新手来说,WINDOWS下环境配置是一件很困难的事:至少对于我来说本地调试PHP程序比登天还要困难,繁荣拖沓的各种程序.以前我博客程序用的是PJBLOG,本地的IIS就完全可以 ...
- deb 安装_本地安装DEB包的3种命令行工具(适合Ubuntu和Deepin )
请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 在本教程中,我们将学习如何使用三种不同的命令行工具(d ...
- nodejs全局安装和本地安装的区别
作者:白树 转载自http://www.cnblogs.com/PeunZh... 上一篇文章<npm 常用命令详解>主要是整理了最常使用的npm命令及相关介绍,其中有提到全局安装(npm ...
- node.js全局安装和本地安装的区别
上一篇文章<npm 常用命令详解>主要是整理了最常使用的npm命令及相关介绍,其中有提到全局安装(npm install gulp -g)和本地安装(npm install gulp),下 ...
- python安装wheel失败_Python安装Pyinstaller失败,Preparing wheel metadata ... error
python打包 Python安装Pyinstaller失败,Preparing wheel metadata ... error 解决办法 执行pyinstaller时报错:TypeError: a ...
最新文章
- Java项目:前台+后台精品水果商城系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)
- ECharts 之 环形图
- 易优cms问一下大家 二级目录 真的完全不能装吗
- 3种骚操作,教你查看 Java 字节码!
- 联想g510升级方案_联想集团副总裁阿木:智能化转型是VUCA 时代的成功路径 -联想 ——快科技(驱动之家旗下媒体)-...
- kafka 思维导图
- Hadoop基础知识
- WebService工具类调用远程接口服务时java.io.IOException: Server returned HTTP response code: 500 for URL XXX
- mysql merge事务_mysql菜鸟手迹11--mysql存储引擎之Merge
- idea配置Tomcat乱码处理
- 静态代理和动态代理的区别是什么
- 【STM32H7的DSP教程】第14章 DSP统计函数-最大值,最小值,平均值和功率
- matlab 1stopt,1stOpt或者MATLAB自定义公式曲线拟合 - 计算模拟 - 小木虫 - 学术 科研 互动社区...
- vue中点击打开新的页面window.open()
- R-S编码译码-缩短码(10,6)
- OC中类目(Catagory)和扩展(Extension)的使用
- Ansible常用配置及命令
- 分别用抽象类和接口实现四个动物类(鱼类、鸟类、爬行类、昆虫类)的类别和天赋
- 后端技术交流群,邀你加入
- tbb学习笔记(一): tbb容器及Mutex
热门文章
- VS2015编译boost1.58 Linux平台编译
- 2022亲测狮子鱼16.7.0小程序源码+独立版交易组件
- 解码Snapchat CEO埃文:大学没毕业 完全不懂代码
- 【题解】P1553 数字反转(升级版)
- Beyond compare3.3 绿色版+右键菜单修复方法.rar
- c语言逆波兰式算法,c语言 逆波兰式输入 计算器程序
- 越南兴建30MW太阳能电站,2030环境目标更进一步
- Glide图片加载流程浅析
- 公司该怎样留住人才?
- html div虚线背景,关于CSS(DIV属性,背景,连接,边框,虚线,实线,布局与命名)...