Linux系统红帽软件包管理器(RPM)

1、源代码管理

绝大多数开源软件都是直接以源代码形式发布的,一般会被打包为tar.gz 的归档压缩文件。程序源代码需要编译为二进制可执行文件后才能够运行使用。源代码的基本编译流程为

  1. ./configure:解压缩后运行该命令,它主要检查编译环境、相关库文件以及配置参数并生成 makefile
  2. make:对源代码进行编译,生成可执行文件
  3. make install:将生成的可执行文件安装到计算机中

源代码形式的软件使用起来较为麻烦,但是兼容性和可控性较好。并且开源软件一般会大量使用其他开源软件的功能,所以开源软件会有大量的依赖关系(使用某软件需要先安装其他软件)。

2、RPM包管理器

在RPM(Redhat Package Manager,红帽软件包管理器)公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装。早期在Linux系统中安装程序是一件非常困难、耗费耐心的事情,而且大多数的服务程序仅仅提供源代码,需要运维人员自行编译代码并解决许多的软件依赖关系,因此要安装好一个服务程序,运维人员需要具备丰富知识、高超的技能,甚至良好的耐心。而且在安装、升级、卸载服务程序时还要考虑到其他程序、库的依赖关系,所以在进行校验、安装、卸载、查询、升级等管理软件操作时难度都非常大。

RPM机制是专门为解决这些问题而设计的。RPM有点像Windows系统中的控制面板,会建立统一的数据库文件,详细记录软件信息并能够自动分析依赖关系。目前RPM的优势已经被公众所认可,使用范围也已不局限在红帽系统中了,下表是一些常用的RPM软件包命令。

常用的RPM软件包命令

安装软件的命令格式


rpm -ivh packagename.rpm


升级软件的命令格式


rpm -Uvh packagename.rpm


卸载软件的命令格式


rpm -e packagename.rpm


查询软件描述信息的命令格式


rpm -qpi packagename.rpm


列出软件文件信息的命令格式


rpm -qpl packagename.rpm


查询文件属于哪个RPM的命令格式


rpm -qf packagename


查看某一个软件包是否安装


rpm -qa|grep packagename.rpm

 

 

  -i:  install 安装   

  -v:  verboes 可视化

  -h:  hash 显示安装进度

另外的常用的附带参数为:

  --force:  强制安装,即使覆盖其他包的文件也要安装

  --nodeps:  当要安装的rpm包依赖其他包的时候,即使其他包没有安装,也要安装这个包

  -U:  upgrade 即升级的意思

  查询一个包是否安装

  rpm -q packagename(这里的包名是不带有平台信息以及后缀名的)

  eg:rpm -q alacarte-0.10.0-1.fc6(如果加了平台信息及后缀名alacarte-0.10.0-1.fc6.noarch.rpm反而不能查出来)

  rpm -qa 查询当前系统上所安装的所有rpm包

  rpm -qa | grep packagename 查看某个软件包是否安装(这里的包名是带有平台信息以及后缀名的)

原文地址:https://www.cnblogs.com/Hunry/p/9368782.html

时间: 2024-08-12 18:22:08

Linux系统红帽软件包管理器(RPM)的相关文章

第二课(安装虚拟机与RPM红帽软件包管理器、Yum软件仓库以及Systemd初始化进程原理)

一.安装虚拟机 很简单,不多说 ,重要的是镜像.内存以及模式搞清楚就行. 虚拟机中三种模式: 1.桥接模式:相当于在物理主机与虚拟机网卡之间架设了一座桥梁,从而可以通过物理主机的网卡访问外网. 2.NAT模式:让VM虚拟机的网络服务发挥路由器的作用,使得通过虚拟机软件模拟的主机可以通过物理主机访问外网,在真机中NAT虚拟机网卡对应的物理网卡是VMnet8. 3.仅主机模式:仅让虚拟机内的主机与物理主机通信,不能访问外网,在真机中仅主机模式模拟网卡对应的物理网卡是VMnet1. 二.RPM(Red

红帽软件包管理器(转)

在红帽软件包管理器(RPM)公布之前要想在Linux系统中安装软件只能采取“源码包”的方式安装,早期在Linux系统中安装程序是一件非常困难,耗费耐心的事情,因为大多数的服务程序仅仅提供编译源码,需要运维人员自行编译代码并解决许多的依赖关系,源码安装需要运维人员有很多的知识.高超的技能.甚至很好的耐心才能安装好一个程序,而且在安装.升级.卸载时还要考虑到其他程序.库的依赖关系,所以管理员在校验.安装.卸载.查询.升级等管理软件操作时难度非常大. 而RPM机制则为解决这些问题而设计的,RPM原称为

sed的高级命令和软件包管理器rpm

一. sed的高级编辑命令  1.高级编辑命令   P:打印模式空间开端至\n内容,并追加到默认输出之前  h:把模式空间中的内容覆盖至保持空间中  H:把模式空间中的内容覆盖至保持空间中  g:从保持空间取出数据覆盖至模式空间  G:从保持空间取出内容追加至模式空间  x:把模式空间中的内容与保持空间中的内容进行互换  n:读取匹配到的行的下一行覆盖至模式空间  N:读取匹配到的行的下一行追加至模式空间  d:删除模式空间中的行  D:如果模式空间包含换行符,则删除直到第一个换行符的模式空间中

Linux软件包管理器rpm与yum

在我们的运维工作,总是避免不了安装某些软件,或者编译安装某些软件,我们知道操作系统当中的程序都是有程序员通过开发工具开发的来,程序员直接编写的纯文本的文档我们称之为源代码,但我们的计算机只能识别二进制程序,那么必须要将源代码变成计算机能识别的二进制程序,这里需要通过编译器来进行编译,将源码转换成二进制程序,再通过安装即可. 还有一类程序就是二进制程序,系统是由某些厂商来做的,在厂商的系统上编译出来的程序,自然就在系统上运行了,这里是由厂商直接编译好程序然后释放出来给用户,如此一来,由于我们本来就

Linux系统程序包管理工具 RPM

什么是RPM: RPM全名是"RedHat Package Manager",简称为RPM,这套软件管理机制是由RedHat这家公司发展而来的.RPM是以一种数据库记录的方式来将你所需要的软件安装到你的Linux系统的一套管理机制.其最大的特点就是将你要安装的软件先编译过,并且打包成为RPM机制的安装包,通过包装好的软件里面默认的数据库记录这个软件安装时必须具备的依赖属性软件,具备就安装.不具备就不予安装. 程序的组成部分: 编译之前:源代码 编译文件 二进制程序:/bin, /sbi

Linux 软件包管理器-----yum配置详解一

一.yum简介    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载.安装.    yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级.安装.删

Linux 软件包管理之RPM

在 GNU/Linux( 以下简称 Linux) 操作系统中,RPM 和 DPKG 是最为常见的两类软件包管理工具,他们分别应用于基于 RPM 软件包的 Linux 发行版本和 DEB 软件包的 Linux 发行版本中. Linux软件包管理器主要用于管理Linux系统中的软件包,其主要用于实现安装.卸载.升级等功能,并提供对系统中所有软件包状态信息的查询. RPM 最开始官方解释为:"Redhat Package Manager",由 Red Hat 公司制定实施,由于被 GNU 开

linux软件包管理之RPM

RPM是RHEL的一款后端软件包管理工具:全称为RedHat Package Manage,由RedHat公司开发,主要作为RehHat Linux软件包的管理机制之一,但并未用作商业用途,而是遵循GPL协议,其设计理念是开放的:现包括SUSE.Openlinux等发行版都采用,是非常强大的软件管理工具. RPM是以一种数据库记录的方式来将需要的软件包安装到linux系统的一套管理机制,最大特点是: 1.由于软件包是已经编译过且打包完毕的,所以软件传输与安装很方便 2.由于软件安装之后信息都记录

linux之程序包管理器(rpm)

linux下的程序包可支持多种工具编写的,如C.C++.PERL等. 但是这种高级语言编写出来的代码是我们人能看懂的,但是计算机是看不懂的,那么计算机怎么执行,怎么了解人要它做什么呢? 这就需要我们做一些转换了,把人能读懂的语言让机器也能识别,这个过程就是由编译器完成的,通常是吧代码语言转换成二进制语言. 过程:预处理.编译.汇编.链接 一个程序的运行大部分时间是离不开库的. 什么是库呢?库也是一种程序,只不过与其他程序不同,库没有执行入口,不能独立运行,只能被其他独立运行的程序调用的时候才能执