linux使用yum对程序包管理相关知识

 yum客户端:

         配置文件:

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

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

  仓库的定义:

     [repositoryID]

     name-Some name for this repository

     baseur1=ur1://path//to/repository/

     enabled={1|0}

     gpgcheck={1|0}

     gpgkey=URL 能访问到密钥的路径

     failovermethod={roundrobin|priority}

       默认为1000

 yum命令用法:

     yum [options] [command] [package …]

 command is one of:

        * install package1 [package2] […]   安装指定的软件包

        * update [package1] [package2] […]  全部更新软件包;

        * update-to [package1] [package2] […] 全部更新到

        * update-minimal [package1] [package2] […]  最小化更新

        * check-update   检测可更新的软件包

        * upgrade [package1] [package2] […]   升级软件包组名

        * upgrade-to [package1] [package2] […] 升级到

        * distribution-synchronization [package1] [package2] […] 同步安装的软件包到最小版本

        * remove | erase package1 [package2] […]删除指定软件包

        * autoremove [package1] […]

        * list […] 列出目前yum所管理的所有的软件包名称与版本;

        * info […]列出目前yum所管理的所有的软件名称,版本和详细信息;

        * provides | whatprovides feature1 [feature2] […]

        * clean [ packages | metadata | expire-cache | rpmdb | plugins | all ] 清除缓存数据

        * makecache [fast] 生成源数据缓存

        * groups […] 

        * search string1 [string2] […] 

        * shell [filename]

        * resolvedep dep1 [dep2] […]确定那个软件包提供了给定的依赖关系

           (maintained for legacy reasons only – use repoquery or yum provides)

        * localinstall rpmfile1 [rpmfile2] […]

           (maintained for legacy reasons only – use install)

        * localupdate rpmfile1 [rpmfile2] […]

           (maintained for legacy reasons only – use update)

        * reinstall package1 [package2] […]

        * downgrade package1 [package2] […]

        * deplist package1 [package2] […]

        * repolist [all|enabled|disabled]显示配置的软件仓库

        * repoinfo [all|enabled|disabled]

        * repository-packages <enabled-repoid> <install|remove|remove-or-reinstall|remove-or-distribution-synchronization> [package2] […]

        * version [ all | installed | available | group-* | nogroups* | grouplist | groupinfo ]

        * history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]

        * load-transaction [txfile]

        * updateinfo [summary | list | info | remove-pkgs-ts | exclude-updates | exclude-all | check-running-kernel]

        * fssnapshot [summary | list | have-space | create | delete]

        * fs [filters | refilter | refilter-cleanup | du]

显示当前列表:

 repolist [all|enabled|disabled] 显示配置的软件仓库

显示程序包:

        list 

        #yum list [all | glob-exp1] [glob-exp2] […]

        #yum list{available | installed | updates}

安装程序包:

      install package1 [package2] […]

 升级程序报:

      update [package1] [package2][…]

 检查可用升级:

          check-update

 卸载程序包:

         remove | erase package1 [package2][…]

查看程序包information:

       info […]

查看程序提供的特性(可以是某文件)是由那个程序报提供:

       provides | whatprovides feature1 [feature2][…]

清理本地缓存:

        makecache

搜索:

    search  string1 [string2] […]

以指定的关键字搜索程序报名及summary 信息:

查看指定包所依赖的capabilities:

        deplist package1 [pachage2] […]

查看yum事物历史:

        history [info|list | packages-list | packages-info | summary | addon-info | redo | undo | rollback | new | sync | stats]

安装及升级本地程序包:

        localinstall rpmfile1 [rpmfile2] […]

        (maintained for legacy reasons only – use install)

        localupdate rpmfile1 [rpmfile2] […]

        (maintained for legacy reasons only – use update

包组管理

groupinstall group1 [group2] […]

        * groupupdate group1 [group2] […]

        * grouplist [hidden] [groupwildcard] […]

        * groupremove group1 [group2] […]

        * groupinfo group1 […]

        * search string1 [string2] […]

        * shell [filename]

如何使用光盘当作本地yum仓库:

(1)挂载光盘至某目录,例如/media/cdrom

    # mount -r -t iso9660 /dev/cdrom /media/cdrom

(2)创建配置文件

[CentOS7]

   name=

   baseur1=gpgcheck=

   enabled=

yum的命令行选项:

   –nogpgcheck: 禁止进行gpg check;

   -y:自动回答为“yes"

   -q :静默模式:

   –disablerepo=repoidglob: 临时禁用此处指定的repo:

   –enablerepo=repoidglob: 临时启用此处指定的repo:

   –noplugins:禁用所有插件:

yum的repo配置文件中的可用的变量:

    $releasever:当前OS的发行版的主版本号:

    $arch: 平台:

    $basearch: 基础平台:

    http://mirrors.magedu.com/centos/$releasever/$basearch/os

创建yum仓库:

    createrepo [options] <directory>

程序报编译安装:

    testapp-VERSION-release.src.rpm –>安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装;

        源代码 –> 预处理 –>编译(gcc)–> 汇编 –> 链接 –> 执行

        源代码组织格式:

            多文件:文件中的代码之间,很可能存在跨文件依赖关系;

               c , c++: make (configure –>Makefile.in –>makefile)项目管理工具

               java:  maven

      编译安装三步骤:

          ./configure

         (1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定一及makefile.in  文件生成

        (2)检查依赖到的外部环境:

             make

             make install

开发工具:

    autoconf: 生成configure脚本

    automake:  生成Makefile.in

j建议:安装前查看INSTALL, README

开源程序代码的获取:

    官方自建站点:

        apache.org (ASF)

        mariadb.org

       ……

       代码托管:

           SourceForge

           Github.comc

           code.google.com

       c/c++: gcc (GNU C  Complier)

         前提:提供开发工具及开发环境

              开发工具: make, gcc 等

              开发环境:开发库,头文件

              glibc: 标准库

     通过“包组”提供开发组件:

         CentOS 6:“Development Tools" ,"Server Platform Development",

   第一步:configure 脚本

         选项:指定安装位置、指定启用的特性

         –help: 获取其支持使用的选项’

          选项分类:

          安装路径设定:

          –prefix=/PATH/TO/SOMEWHERE: 指定默认安装位置:

          –sysconfdir=/PATH/TO/SOMEWHERE: 配置文件安装位置:

         System types:

         Optional Features:可选特性

         — disable-FEATURE

         –enable-FEATURE[=ARG]

         Optional Packages: 可选包

         –with – PACKAGE [=ARG]

         –without-PACKAGE

     第二部:make

     第三步:make install

安装后的配置:

   (1)导出二进制程序目录至PATH环境变量中:

        编辑文件/ETC/profile.d/NAME.sh

         export PATH=/PATH/TO/BIN:PATH

   (2)导出文件路径

      编辑/etc/ld.so.conf.d/NAME.conf

      添加新的库文件所在目录至此文件中:

      让系统重新生成缓存:

      ldconfig [-v]

   (3) 导出头文件

      ln  -sv 

   (4) 导出帮助手册

       编辑/etc/man.config 文件

       添加一个MANPATH

原创文章,作者:shadow,如若转载,请注明出处:http://www.178linux.com/65498

(0)
shadowshadow
上一篇 2017-01-01 23:48
下一篇 2017-01-02 00:14

相关推荐

  • MairaDB之基于openssl的主从复制

    一、配置openssl   1、   在master server(node0)上根CA的搭建(及生成自签名证书) [root@node0 ~]# cd /etc/pki/CA/ [root@node0 CA]# (umask 077;openssl genrsa -out private/cakey.pem 2048) Gen…

    2014-10-03
  • 关于生命中的根

    关于生命中的根    擦干心中的血和泪痕    留住我们的根 关于生命中的根 鸿蒙初辟,万物生于根 寻根之旅 根就是根 我即为根 路在何方 鸿蒙初辟,万物生于根    自linux老祖Torvalds创根之始至今,根一直为linux之本,而FHS(Filesystem Hierarchy Stand…

    Linux干货 2016-10-27
  • Linux文档的压缩与打包

    Linux文档的压缩与打包 概述 compress和uncompress gzip压缩工具 bzip2压缩工具 zip压缩工具 tar压缩工具 cpio压缩工具(主要用来备份还原) Linux文档的压缩与打包 概述 本章将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio) compress/uncompress:   &nb…

    Linux干货 2016-09-06
  • Linux基本命令

    前言 今天学习了Linux下的一些基本命令,在此归纳总结一下这些命令的基本用法。 Linux命令帮助的获取     在拿到一个命令后不知道其用法,我们可以通过命令帮助来查看它的用法,但linux下内部命令和外部命令获取帮助的方法是有差别的。     内部命令:help command &n…

    Linux干货 2016-10-14
  • RAID(重要)

    RAID   RAID(Redundent Array of Independent Disk):独立的冗余磁盘阵列,目的是为了结合多个物理驱动器组成单个单元,提高了磁盘的性能或保证数据冗余。RAID能够防止硬件的故障导致数据丢失,但是不能防止人为操作,软件故障、恶意软件感染等造成的数据丢失,因此不能替代备份。 分类有:硬件实现RAID(一是外接式磁盘阵列柜…

    Linux干货 2016-08-30
  • 计算机的组成及其功能

    1.计算机的组成及其功能 1.1计算机的硬件基本结构 从ENIAC到当前最先进的计算机都采用的是冯·诺依曼体系结构分别是:控制器,运算器,存储器,输入与输出设备 控制器:将指令逐条从存储器中取出,经译码分析后向全机发出相应         的操作控制信号作用于其他部件,使各部件有…

    Linux干货 2016-10-28

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-23 08:05

    有点像直接帖笔记哦,其实要有自己的实验过程,学习Linux多动手敲敲是没错的,在总结方面如果能按照自己的思路去总结往往在后期回顾的时候会有意想不到的效果。