目前最常见的两种软件安装方式:

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的更多相关文章

  1. Linux学习之RPM包管理-yum管理(十七)

    Linux学习之RPM包管理-yum管理 目录 IP地址配置 网络yum源 yum命令 光盘yum源搭建 IP地址配置 IP+子网掩码就可以在局域网(内网)使用. IP+子网掩码+网关+DNS就可以访 ...

  2. Linux学习之RPM包管理-rpm命令管理(十六)

    Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...

  3. linux 学习笔记 rpm命令

    软件包管理 用rpm命令来管理rpm 软件包 1>遵循GPL 规则 2>安装 foo-2.0-1.i386.rpm软件包 #rpm -ivh foo-1.0-1.i386.rpm 3> ...

  4. [转帖]Linux学习笔记之rpm包管理功能全解

    Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...

  5. Linux学习笔记之兄弟连

    systemctl --user enable pulseaudio说明:安装完成后系统没有声音,用该命令可以打开.ifconfig eth0 192.168.118.1说明:给网卡设置IP地址.ap ...

  6. Linux学习内容

    Linux学习要点(转载自红联) 一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件 ...

  7. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  8. [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    from:  http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...

  9. Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】

      如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--C ...

随机推荐

  1. 实用程序Commer的开发——U盘内容可选同步至FTP服务器

    需求分析:需要在软件运行后将插入的U盘里面的文件Copy至本机上,然后可选的上传一部分至FTP服务器上. 系统设计:基于MFC的基本对话框程序:主要模块有检测U盘插入并复制文件以及上传到网络.通过对U ...

  2. spring dataSourceRouter自动切换数据源

    spring多数据源的切换,主要用到的是AbstractRoutingDataSource这个路由类,当我们的自定义的一个路由分发类继承AbstractRoutingDataSource类后,重写de ...

  3. Java 类加载机制 ClassLoader Class.forName 内存管理 垃圾回收GC

    [转载] :http://my.oschina.net/rouchongzi/blog/171046 Java之类加载机制 类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指 ...

  4. 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 ...

  5. efficient c++,单线程内存池

    基于 http://www.cnblogs.com/diegodu/p/4555018.html operator new的知识基础上 介绍这个章节的内容 对于一般直接 new 与delete 性能较 ...

  6. uva 10827

    与108类似 多加了两层循环 水过 #include <iostream> #include <cstring> #include <cstdio> #includ ...

  7. FiddlerScript开发

    1.为Fiddler会话列表添加自定义列 只需要为你的方法(方法名任意)添加BindUIColumn Attribute 就可以添加自定义列到Session List,下面的代码添加Method列到会 ...

  8. 1.Getting Started with ASP.NET MVC 5

    Getting Started Start by installing and running Visual Studio Express 2013 for Web or Visual Studio ...

  9. [itint5]摆放窗口

    http://www.itint5.com/oj/#47 一种做法是:把矩形所占的方格都设为-1,就是个最大子矩阵和问题.复杂度o(w^2*h)或o(w*h^2),空间W*H猜想应用场景是:电脑屏幕上 ...

  10. [Unity菜鸟] 术语

    HUD Mozilla  Mozilla基金会,简称Mozilla(缩写MF或MoFo),是为支持和领导开源的Mozilla项目而设立的一个非营利组织. 称作Mozilla公司的子公司,雇佣了一些Mo ...