linux 学习之 rpm
目前最常见的两种软件安装方式:
1.dpkg
2.rpm
1.dpkg
最早是由Debian Linux社群开发出来的,通过dpkg,Debian提供的软件就可以简单的安装,同时还能提供安装后的软件信息,
实在非常不错,只要是衍生与Debian的其他的Linux发行版也大多使用dpkg这个机制来管理软件。包括B2D,Ubuntu等等。
2.RPM
最早由Red Hat 开发出来的,后来很多distributions都使用这个机制来安装软件,包括Fedora,Centos,SUSe等。
后来在dpkg机制的基础上开发出了APT在线安装升级,RPM根据开发商的不同,由Red Hat 的yum,SuSE 的 YOU,Mandriva 的 urpmi等

RPM 与 SPRM
RPM 是以一种数据库记录的方式将你所需要的软件安装到你的Linux系统的一套管理机制
他的特点就是将你要安装的软件先编译过,并打包为RPM机制的文件,通过包装好的软件里头默认的数据库记录,记录这个软件
要安装的时候必须具备的相依属性软件,当安装在你的Linux主机时,RPM会先按照软件里头的数据查询Linux主机相依属性软件
是否满足,若满足则安装,若不满足则不安装。安装的时候就讲该软件的信息写入RPM的数据库中。
优点:
1.由于已经编译完成并且打包完毕,所以软件传输与安装上很方便(不需要再编译)
2.由于软件的信息都记录在Linux的RPM数据库中,方便查询,升级,与安装
缺点:
1.兼容性差,不能移植,安装的软件和系统是配套的。
SRPM:
以***.src.rpm这方方式命名。提供源码
但是和Tarball这种源码不一样,还包含有该软件所需要的相依性软件说明,以及所有RPM文件所提供的数据。
与RPM不同的是,SRPM也提供了参数配置文件(configure,makefile)。
SRPM安装软件方式:
1.先编译为rpm
2.再以rpm的方式安装

RPM软件格式:
re-pppoe :软件名称
3.1 :版本,3为主版本,1为次版本
5:编译次数
I386:操作系统

RPM数据库:
为了解决软件之间的依赖性问题,RPM在提供打包软件时,同时加入一些讯息登录功能,这些信息包括软件的
版本,打包软件作者,相依属性的其他软件,本软件的功能说明,本软件的所有档案记录等
然后在Linux系统上面也建立一个RPM软件数据库,如此一来,当你安装某个以RPM形态提供的软件时
在安装过程中,RPM会检验一下数据库里面是否已经存在相关的软件了,如果数据库显示不存在,那么这个RPM软件
就不能安装。
缺点:当依赖的软件没有安装时,本软件安装不了。
RPM 安装命令
rpm -i 软件名.rpm
如 rpm -i rp-pppoe-3.5.32.1.i386.rpm
rpm -ivh package_name 安装时会显示进度
此外:如果我们在安装的过程中发现问题,或者已经知道会发生的问题,而还是要安装这个软件时,可以使用
一下的参数强制安装:

RPM升级与更新:

RPM查询:

RPM 卸载:
Rpm -e 软件名
当软件有相关的依赖包时,不能卸载。只能先卸载相关的包
重建RPM数据库
rpm
-- rebuilddb
linux 学习之 rpm的更多相关文章
- Linux学习之RPM包管理-yum管理(十七)
Linux学习之RPM包管理-yum管理 目录 IP地址配置 网络yum源 yum命令 光盘yum源搭建 IP地址配置 IP+子网掩码就可以在局域网(内网)使用. IP+子网掩码+网关+DNS就可以访 ...
- Linux学习之RPM包管理-rpm命令管理(十六)
Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...
- linux 学习笔记 rpm命令
软件包管理 用rpm命令来管理rpm 软件包 1>遵循GPL 规则 2>安装 foo-2.0-1.i386.rpm软件包 #rpm -ivh foo-1.0-1.i386.rpm 3> ...
- [转帖]Linux学习笔记之rpm包管理功能全解
Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...
- Linux学习笔记之兄弟连
systemctl --user enable pulseaudio说明:安装完成后系统没有声音,用该命令可以打开.ifconfig eth0 192.168.118.1说明:给网卡设置IP地址.ap ...
- Linux学习内容
Linux学习要点(转载自红联) 一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件 ...
- Linux 学习笔记
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...
- [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置
from: http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...
- Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】
如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--C ...
随机推荐
- 实用程序Commer的开发——U盘内容可选同步至FTP服务器
需求分析:需要在软件运行后将插入的U盘里面的文件Copy至本机上,然后可选的上传一部分至FTP服务器上. 系统设计:基于MFC的基本对话框程序:主要模块有检测U盘插入并复制文件以及上传到网络.通过对U ...
- spring dataSourceRouter自动切换数据源
spring多数据源的切换,主要用到的是AbstractRoutingDataSource这个路由类,当我们的自定义的一个路由分发类继承AbstractRoutingDataSource类后,重写de ...
- Java 类加载机制 ClassLoader Class.forName 内存管理 垃圾回收GC
[转载] :http://my.oschina.net/rouchongzi/blog/171046 Java之类加载机制 类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指 ...
- oracle 导出数据和导入数据
导出数据 exp zl_gj/zlkj@gqxt grants=y tables=(zl_gj.ckgj,zl_gj.gjlx,zl_gj.rkgj) file=c:\gj.dmp log=c:\g ...
- efficient c++,单线程内存池
基于 http://www.cnblogs.com/diegodu/p/4555018.html operator new的知识基础上 介绍这个章节的内容 对于一般直接 new 与delete 性能较 ...
- uva 10827
与108类似 多加了两层循环 水过 #include <iostream> #include <cstring> #include <cstdio> #includ ...
- FiddlerScript开发
1.为Fiddler会话列表添加自定义列 只需要为你的方法(方法名任意)添加BindUIColumn Attribute 就可以添加自定义列到Session List,下面的代码添加Method列到会 ...
- 1.Getting Started with ASP.NET MVC 5
Getting Started Start by installing and running Visual Studio Express 2013 for Web or Visual Studio ...
- [itint5]摆放窗口
http://www.itint5.com/oj/#47 一种做法是:把矩形所占的方格都设为-1,就是个最大子矩阵和问题.复杂度o(w^2*h)或o(w*h^2),空间W*H猜想应用场景是:电脑屏幕上 ...
- [Unity菜鸟] 术语
HUD Mozilla Mozilla基金会,简称Mozilla(缩写MF或MoFo),是为支持和领导开源的Mozilla项目而设立的一个非营利组织. 称作Mozilla公司的子公司,雇佣了一些Mo ...