Linux软件包管理

Linux软件包管理主要有2类:是二进制包管理、源码包管理

  1. 二进制包管理

    主要有RPM和YUM两种

    1. RPM包管理
  • 安装

    --ivh:-v ,-vv,-vvv显示的安装信息依次详细

    --nodeps:忽略包依赖关系,直接安装

    --replacepkgs:重新安装

    --test:测试安装,而不执行真正的安装过程

    --force:强制安装

-U:如果有较旧版本的程序包已经安装,则升级安装,否则,则执行安装操作

-F:如果有较旧版本的程序包已经安装,则升级安装,否则,不安装

--oldpackage:降级安装

注意:不要对内核包执行升级操作:linux支持多版本内核并存,因此可以对新版本内核直接安装

实例:

安装某个包的时候,此包可能需要依赖其他的包,必须解决依赖的包之后在安装,当然也可以使用—nodeps选项强制

安装,但不建议这样安装,因为安装后此包可能也无法使用。

  • 查询

    针对安装后的包查询其安装信息等,有以下的查找参数

    1.查询已经安装的包 -qa

    2.查询某包简要的说明信息 -qi

    3.查询某包安装后生成的所有文件列表 -ql

    4.查询某包安装后生成的所有配置文件的列表:-qc

    5.查询某包安装后生成的所有帮助文件的列表:-qd

    6.查询某包制作时随版本变化的changelog列表信息: rpm -q --changelog PACKAGE_NAME

    7.查询某包提供的capabilities rpm -q --provides PACKAGE_NAME

    8.查询某包依赖的capabilities rpm -q --requires PACKAGE_NAME

    9.查询某文件是由哪个包安装生成的:rpm -qf /path/to/somefile

    10.查询尚未安装包的相关信息 -p,可以于其他选项混合使用,如-qpl,-qpc...

    例如:

  • 卸载

    Rpm –e [--nodeps] pack_name,例如

    [root@steve data]# rpm -e rpc2

需要注意的是在卸载软件包的时候若和其它包有依赖关系,可以用--nodeps来强制卸载

  1. yum安装

    yum是rpm包管理工具的前端,可以自动解决包安装过程中的依赖关系,使用yum安装之前需要配置好yum源,个人的yum仓库配置如下[root@steve data]# vim /etc/yum.repos.d/CentOS-Base.repo

此配置文件下可以配置多个yum仓库地址,其中[epel]是此yum仓库的id,在此配置文件下,每个yum仓库的id是唯一的,

name=fedora-epel ;描述yum仓库的信息,可以是任意的

baseurl=baseurl=http://172.16.0.1/fedora-epel/6/x86_64 ;yum仓库的路径

enabled={1|0} ;是否启用此仓库,1,表示启动,也可以不配置,默认是启动的。

gpgcheck={1|0};是否检查合法性等,如果启动要用gpgkey指定密钥

gpgkey=DIR;如果gpgchck=1启动了检查合法性,此处则需要指定密钥的路径

配置好后就可以使用yum 安装、卸载、查询等信息了。

  • 安装

    Yum安装某个软件之前,可以先查询仓库中是否有某个包,使用list参数,例如:

查询到有某个包后,就可以直接安装了,使用install参数,例如:

安装时会提示是否确定要安装,按"y"即可,如果想直接安装而不询问,可以使用 –y选项,如果要安装包组,则可以使用groupinstall

Yum安装时的选项比较多,可以使用man来查找各选项的意义,此处不一一介绍,仅列出几个。

  • 查询

    安装后可以查看其安装信息,如info ,此处只举一个例子

  • 卸载

    Yum卸载使用remove选项 例如:

  • 如何制作yum仓库

    Yum仓库的制作很简单,将需要的rpm包放在一个目录下,使用createrepo命令,指定在那个路径下创建即可。

  1. 二进制源码包安装

    如果没有rpm包或者rpm内的功能无法满足需要等,可以使用源码包来手动编译安装,首先需要在软件官方网站下载对应的源码包。此处以编译安装

Apr源码包为例。编译安装之前下载源码包,把编译环境安装好,一般安装"Development Tools"和"Server Platform Development "

[root@steve data]# yum grouplist "Development Tools" "Server Platform Development"

可以使用—help来查看其安装选项

上图,将apr安装在/usr/bin/apr目录下,可以任意指定目录,如果编译过程出错,则根据提示的错误,解决错误后在进行下一步。

4.以上就是简单介绍了centos系列软件包的管理。

Linux软件包管理的更多相关文章

  1. Linux 软件包管理

    简介: linux中软件包的管理随着linux版本的不同而不同,一般RPM和DPKG是最常见的两类软件包管理工具.分别应用基于rpm软件包的linux发行版本和基于deb软件包的linux发行版本. ...

  2. linux软件包管理(下)

    在vi配置文件的编写的时候我们发现#并不能注释掉一行的信息 那什么才是linux标准的注释信息呢 查看软件对应的软件包命令 rpm –ap| grep vim 大多example是需要的事例文档  双 ...

  3. linux软件包管理(上)

    1.二进制包管理(RPM,yum) 2.源代码包的安装 3.脚本安装(shell或java) 4.Debian系列的linux软件包管理简介 在下载rmp包的时候注意检查硬件平台是否正确,如果硬件平台 ...

  4. Linux系列教程(十三)——Linux软件包管理之源码包、脚本安装包

    上篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要是解决了软件包依赖性问题.在安装软件时,我们使用yum命令将会简单方便很多.我们知道yum命令只能 ...

  5. Linux软件包管理之源码包、脚本安装包

    目录 1.源码包和RPM包的区别 RPM包和源码包默认安装位置: 由于安装位置不同带来的影响 2.源码包安装 ①.安装准备 ②.安装注意事项 ③.安装源码包 3.源码包卸载 4.脚本安装包 5.总结 ...

  6. 1、linux软件包管理

    linux软件包管理分为两种:RPM包管理和源码包管理,其中RPM包管理又有两种方式:①RPM命令管理,②YUM在线命令管理. RPM包依赖关系: 1.树形依赖 2.环形依赖 (用一条命令同时装来解决 ...

  7. Linux(3)- 用户管理、文件与目录权限、常用命令、Linux软件包管理

    一.用户管理 现代操作系统一般属于多用户的操作系统,也就是说,同一台机器可以为多个用户建立账户,一般这些用户都是为普通用户,这些普通用户能同时登录这台计算机,计算机对这些用户分配一定的资源. 普通用户 ...

  8. linux笔记:linux软件包管理,软件安装位置

    linux软件包简介 软件包分类:1.源码包(用C语言等编写的源代码,没有进行编译):脚本安装包(对源码包进行了安装优化的源码包)优点:开源,可修改可以自由选择所需的功能编译安装,更适合自己的系统,稳 ...

  9. Linux系列教程(十一)——Linux软件包管理之RPM命令

    前面我们介绍了Linux系统的常用命令介绍和文本编辑器vim命令的介绍.那么从这篇博客开始,我们会正式的讲解Linux的系统管理,首先要讲的是Linux的软件包管理. 1.Linux软件包分类 一.源 ...

随机推荐

  1. C# 闭包问题-你被”坑“过吗?

    引言 闭包是什么?以前看面试题的时候才发现这个名词. 闭包在实际项目中会有什么问题?现在就让我们一起来看下这个不太熟悉的名词. 如果在实际工作中用到了匿名函数和lamada表达式,那你就应该高度注意啦 ...

  2. Ubuntu在wps-office等qt5程序下不能切换中文fcitx输入法的问题

    经检查,是缺了fcitx-qt的包.比如qt5的程序,需要一个叫fcitx-libs-qt5的包. 如果您在基于qt的程序下不能使用基于fcitx的中文输入法,请检查以下包是否已安装: sudo ap ...

  3. python爬虫学习(6) —— 神器 Requests

    Requests 是使用 Apache2 Licensed 许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 模块提供了你所需要的大多数 H ...

  4. 【GSM】GTM900C的应用——短信

    虽说GSM已经很老旧,但其低廉的价格,非常适合一些需要小数据上网传输和短信等功能的应用场合. 不知道GSM能否像51单片机一样,在低端应用中长久不衰.GTM900C发送短信,支持两种模式,TXT和PD ...

  5. Backtracking algorithm: rat in maze

    Sept. 10, 2015 Study again the back tracking algorithm using recursive solution, rat in maze, a clas ...

  6. UOJ #221 【NOI2016】 循环之美

    题目链接:循环之美 这道题感觉非常优美--能有一个这么优美的题面和较高的思维难度真的不容易-- 为了表示方便,让我先讲一下两个符号.\([a]\)表示如果\(a\)为真,那么返回\(1\),否则返回\ ...

  7. CORS详解

    介绍 由于同源策略的缘故,以往我们跨域请求,会使用诸如JSON-P(不安全)或者代理(设置代理和维护繁琐)的方式.而跨源资源共享(Cross-Origin Resource Sharing)是一个W3 ...

  8. [LeetCode] Longest Palindrome 最长回文串

    Given a string which consists of lowercase or uppercase letters, find the length of the longest pali ...

  9. [LeetCode] Sort Transformed Array 变换数组排序

    Given a sorted array of integers nums and integer values a, b and c. Apply a function of the form f( ...

  10. GD库常用函数

    创建句柄 imagecreate($width, $height)                                                  //新建图像 imagecreat ...