zoukankan      html  css  js  c++  java
  • 3 Linux软件包知识

    一、软件包分类

      1、源码包

        源码包的优点是:

    • 开源,如果有足够的能力,可以修改源代码
    • 可以自由选择所需的功能
    • 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
    • 卸载方便

        源码包的缺点

    • 安装过程步骤较多,尤其安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写 错误
    • 编译过程时间较长,安装比二进制安装时间长
    • 因为是编译安装,安装过程中一旦报错新手很难解决

      2、二进制包

        1、二进制包分类

    • DPKG 包:是由 Debian Linux 所开发出来的包管理机制,通过 DPKG 包,Debian Linux 就可以进行软件包管理。主要应用在 Debian 和 unbuntu 中。
    • RPM 包:是由 Red Hat 公司所开发的包管理系统。功能强大,安装、升级、查询和卸载 都非常简单和方便。目前很多 Linux 都在使用这种包管理方式,包括 Fedora、CentOS、 SuSE 等。

    (这也是Redhat和Debian系列最大的区别之一)

        2、特点

          RPM包的优点

    • 包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载。
    • 安装速度比源码包安装快的多。

          RPM包的缺点

    • 经过编译,不再可以看到源代码。
    • 功能选择不如源码包灵活。
    • 需要解决复杂的依赖性。

        3、RPM包的依赖性:

    • 树形依赖  a---->b---->c
    • 环形依赖  a---->b---->c---->a
    • 函数库依赖

    *注意*Linux中只有源码包和二进制包这两种软件包分类,没有什么yum包,yum只是rpm包的在线安装方法,可以解决RPM包的依赖性

    二、RPM包管理的一些命令

    •  安装: 
    rpm -ivh 包全名
    •  升级:
    rpm -Uvh 包全名
    •  卸载 :
    rpm -e 包名
    
    •  查询:

        查询是否安装 

          rpm -q 包名
          rmp -qa |grep 包名

       查询包信息

          rmp -qi 包名  (已安装) 
          rpm -qip 包全名(未安装)

        查询安装位置

          rpm -ql 包名(已安装)
          rpm -qlp 包全名(未安装)

       查询系统文件名属于哪个包 

          rpm -qf 系统文件名

       查询依赖性

          rpm -qR 包名

        检验 

        rpm -V 包名
    • 导入数字证书(源认证)
        rpm --import 数字证书
    例如:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-Centos-6

    三、yum的一些命令

        查询yum源服务器中是否包含某个软件包

        yum list 包名

        查询yum源服务器上所有和关键字相关的软件包

        yum search 关键字

        升级

        yum -y update 包名

        卸载

        yum remove 包名

      包组管理
       1、查询可以安装的软件组

     yum grouplist #列出所有可用的软件组列表

       2、查询软件组内包含的软件

       yum groupinfo 软件组名  

       安装软件组

        yum groupinstall 软件组名

       卸载软件组

        yum groupremovre 软件组名

     四、源码安装:

      源码包报错的判断

        1、安装过程必须停止

        2、是否出现no、warning、error关键字

    安装过程:
    配置 ./configure --prefix=/usr/local/(xxx)
    编译 make
    安装 make install

    如何让chkconfig和service识别源码包的服务???

    如果想让源码包服务被 service命令识别并管理,只要做个软链接把启动脚本链接到/etc/init.d/或/etc/rc.d/init.d/目录中即可。要想让源码包服务被 chkconfig命令识别,除了需要把服务的启动脚本链接到/etc/init.d/目录中,还要修改这个启动脚本,在启动脚本的开头加入

    #chkconfig:运行级别 启动顺序 关闭
    #description:说明

    这两句话虽然是前面有#号,但它们不是注释,这两句话代表了可以被chkconfig命令识别

    然后需要使用“ chkconfig --add服务名”的方式把服务加入 chkconfig命令管理中。

  • 相关阅读:
    js json string 互转
    更新内置flash方法[转]
    CSS设置滚动条样式[转]
    ArcGIS JavaScript API本地部署离线开发环境[转]
    正则匹配整数和小数
    把数字字符串转换为日期
    获取滚动条高度的兼容问题
    angular实现多个div的展开和折叠
    IE浏览器overflow:srcoll兼容问题记录
    input验证,光标左右移动问题
  • 原文地址:https://www.cnblogs.com/baci/p/11223567.html
Copyright © 2011-2022 走看看