zoukankan      html  css  js  c++  java
  • linux程序安装及包管理

    程序包的封装类型:

      RPM软件包:扩展名为“.rpm”,使用rpm命令安装。

      DEB软件包:扩展名为“.deb”,使用DPKG包管理器。

      源代码软件安装:程序员开发完成的原始代码,一般制作成“.tar.gz”,“.tar.bz2”等格式的压缩包文件,需要使用相应的工具编译安装。

      附带安装程序的软件包:软件包中会提供用于安装的可执行程序或脚本,如install.sh、setup等。

    获取程序包的途径:

      1)系统发行版的光盘或官方的服务器,

      CentOS镜像:

        https://www.centos.org/download/
        http://mirrors.aliyun.com
        http://mirrors.sohu.com
        http://mirrors.163.com

      2)项目官方站点

      3)第三方组织:fedora-EPEL

      4)自己制作:注意检查包的完整性

    rpm包管理器:

      将编译好的应用程序的各组成文件打包一个或几个程序包文件,从而方便快捷地实现程序包的安装、卸载、查询、升级和校验等管理操作。

    rpm命令格式:

      rpm -i ( or --install) options file1.rpm ... fileN.rpm

    rpm命令基本选项:

      -h  以#显示程序包管理执行进度

      -v  显示安装过程中的详细信息

      -i  安装一个新的rpm包

      -e  卸载指定名称的软件包

      -U  升级系统中某个软件包

      -F  检查并更新系统中的某个软件包

    --test    只进行升级测试 
    --excludedocs 不安装软件包中的文档文件
    --includedocs 安装文档
    --replacepkgs 强制重新安装已经安装的软件包
    --replacefiles 替换属于其它软件包的文件
    --force 忽略软件包及文件的冲突
    --noscripts 不运行预安装和后安装脚本
    --prefix 将软件包安装到由 指定的路径下
    --ignorearch 不校验软件包的结构
    --ignoreos 不检查软件包运行的操作系统
    --nodeps 不检查依赖性关系

    rpm -ivh  --nodeps  software_name 强制安装,安装了之后不一定能用

    rpm -ql software_name    查看软件安装目录

    rpm -qi sotware_name    查看软件安装的版本信息

    rpm -Uvh software_name    软件升级

    rpm -e software_name      软件卸载

    rpm -e --nodeps software_name  强制卸载

    查询选项: 

      -qa  显示当前系统中所以以rpm方式安装的软件列表

      -qi  查看指定软件包的名称、版本、用途描述等详细信息

      -ql  显示指定软件包在系统中安装的所有目录、文件列表

      -qf  查看指定文件或目录是由哪个软件所安装的

    已安装的包校验:

      rpm {-V|--verify} [select-options] [verify-options]

    校验软件包中的文件:

      rpm -K|checksig rpmfile   检查包的完整性和签名

      rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  导入所需的公钥

      --initdb  初始化rpm数据库

      --rebuilddb  重建rpm数据库

    yum源:

      rpm的前端程序,用来解决软件包相关的依赖性,可在多个库中定位软件包

    yum命令:

      yum [options] [command] [package ...]

      -e  静默执行

      -y  自动应答yes

      deplist  列出包依赖

      list  列出程序包

      info  查看包信息

      install  安装程序包

      reinstall  重新安装

      update  更新程序包

      downgrade  降级

      check-update  检查可更新的包

      remove  卸载程序包

      clean   清除缓存

      makecache  构建缓存

      search [关键字]  搜索包

      history    查看yum事物历史

      groupinstall  包组管理

    yum客户端配置文件:

      /etc/yum.conf  为所有仓库提供公共配置

      /etc/yum.repos.d/*.repo  为仓库的指向提供配置

      /var/log/yum.log    yum日志文件

      仓库指向的定义:

        [repositoryID]

        name=Some name for this repository
        baseurl=url://path/to/repository/
        enabled={1|0}
        gpgcheck={1|0}
        gpgkey=URL
        enablegroups={1|0}
        failovermethod={roundrobin|priority}

    repo配置文件中可用变量

      $releasever: 当前OS的发行版的主版本号
      $arch: 平台,i386,i486,i586,x86_64等
      $basearch:基础平台;i386
      $YUM0-$YUM9:自定义变量

    创建yum仓库:

      createrepo [options] <directory> 

    第三方源:

    wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

    rpm -ivh epel-release-latest-7.noarch.rpm

     

    程序包编译安装:

      基本过程:

        1)下载源代码安装包,解压到指定目录

        2)./configure配置,设置安装的目标路径,选择安装的功能模块

        3)make编译,通过makefile文件将源代码变成可执行的二进制文件

        4)make install安装,将编译好的二进制文件复制到系统中,并设置应用环境

        编译过程:源代码->预处理->gcc编译->汇编->链接->执行

     

      

  • 相关阅读:
    ArrayList、Vector、LinkedList的区别联系?
    TFFS格式化到创建成功过程
    C语言中的far关键字
    Android编码规范05
    微信小程序开发总结
    1-2 Mobx 入门实践之TodoList(官方Demo)
    1-1、create-react-app 配置 mobx
    3-0 js基础 语言特性及性能优化
    2-9 js基础 cookie封装
    2-8 js基础 jsonp封装
  • 原文地址:https://www.cnblogs.com/yuezhimi/p/6817934.html
Copyright © 2011-2022 走看看