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


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

    1、Linux软件包分类

      一、源码包

        源码包能直接看到源码,安装时需要人为手工设置安装位置,一般是/usr/local/软件名/。源码包的升级版——脚本安装包,人为的改动源码使其有安装界面。

        优点:

        ①、开源,如果有足够的能力,可以直接修改源代码。

        ②、安装时可以自由选择所需的功能。

        ③、软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高。

        ④、卸载方便,直接删了你安装软件的那个目录就好了。

        缺点:

        ①、安装步骤较多,尤其安装较大的软件集合时,容易出现拼写错误。

        ②、编译时间过长,比后面讲的二进制安装时间长。

        ③、因为是编译安装,安装过程中一旦报错新手很难解决。

      二、二进制包

        这里的二进制包最要包括centos中的rpm包。rpm包有默认安装位置。/etc/ 配置文件安装目录;/usr/bin/ 可执行的命令安装目录;/usr/lib/ 程序所使用的函数库保存位置;/usr/share/doc/ 基本的软件使用手册保存位置;/usr/share/man/ 帮助文件保存位置。

        优点:

        ①、包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载。

        ②、安装速度比源码包快很多。

        缺点:CentOS-6.8-x86_64-bin-DVD1.iso

        ①、已经经过编译了,看不到源代码。

        ②、功能选择不如源代码包灵活。

        ③、安装过程中有很多依赖的包,依赖性不好解决。

    2、rpm 包命名规则

      我们打开前面安装Linux系统的安装文件 CentOS-6.8-x86_64-bin-DVD1.iso。在package目录下都是rpm安装文件。

      

      我们以 httpd-2.2.15-53.el6.centos.x86_64.rpm 文件为例来看rpm包的命名规则。

      ①、httpd:软件包名

      ②、2.2.15:软件版本

      ③、15:软件发布的次数

      ④、el6.centos:适合的Linux平台

      ⑤、x86_64:适合的硬件平台,这里表示64位。

      ⑥、rpm:rpm包的扩展名,注意Linux是没有扩展名的概念,这里是告诉管理员这是一个rpm包文件。

    3、rpm包安装

      

      范例:以安装 httpd-2.2.15-53.el6.centos.x86_64.rpm 为例:

        我们进入到该rpm文件的挂载目录 /mnt/cdrom/Packages,执行命令:rpm -ivh httpd-2.2.15-53.el6.centos.x86_64.rpm

      注意:这种安装方法可能需要先安装各种依赖,安装过程特别繁琐,后面讲解yum安装会简单的多。

    4、rpm包升级

      

    5、rpm包卸载

      

    6、查询rpm包是否安装

      

      

    7、查询软件包的详细信息

      

       

    8、查询软件包的安装位置  

       

      

    9、查询系统文件属于哪个RPM包

      

    10、查询软件包的依赖性

      

    11、总结

      本篇博客主要介绍了rpm包。包括rpm包的命名规则、安装、升级、卸载等,还有如何查询rpm包的相关信息。这里如果大家使用rpm命令手动安装某个软件包,你会发现安装遇到到的依赖让你痛不欲生,安装一个rpm时会要先先安装某个依赖的rpm,而安装这个依赖的rpm包是可能又必须先安装它所依赖的。在实际操作中,我们肯定是不会使用rpm命令手动安装软件包的,那么有更简单的方法吗?答案是肯定的,下一篇博客我们将介绍RPM包管理——yum在线管理。

  • 相关阅读:
    AJAX删除事件与加载数据
    AJAX的基本操作
    用JavaScript写弹窗
    jQuery事件和JSON点语法
    jQuery
    jQuery基础知识
    php 实现简单购物车功能(2)
    css实现3D立方体旋转特效
    for循环与foreach的区别
    微信小程序开发2 双线程模型,小程序中app.js中的生命周期,小程序的页面的生命周期,小程序的事件,事件补充(事件的冒泡,捕获)
  • 原文地址:https://www.cnblogs.com/ysocean/p/7751268.html
Copyright © 2020-2023  润新知