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
下一篇 2017-01-02

相关推荐

  • 关于文件 atime mtime gtime 专题–2016-07-27

    Linux文件组成部分:元数据(metadata)和数据(date) 元数据的查看方式:使用stat命令; 数据的查看方式:文本格式使用 cat nano查看及修改即可; stat命令: 功能说明:显示文件或文件系统的状态 语法: stat  [OPTION] …  FILE… 参数:   举例: [ro…

    Linux干货 2016-08-04
  • Nginx及其相关配置详解(二)

    与套接字相关的配置: 1、server { … }  #配置一个虚拟主机;         Default:—         Context:http server { # 配…

    2017-07-14
  • Linux 第八天: Linux文本编辑器vim

    Linux 第八天: (08月09日) Linux文本编辑器vim       sed 行编辑器 stream EDitor sed -n 不输出模式空间内容的自动打印sed -e 多点编辑sed -f /PATH/TO/SCRIPTFILEsed -i 原处编辑   script单地址 # 指定的行/pattern/…

    Linux干货 2016-08-11
  • 马哥教育网络班22期+第2周课程练习

    1、Linux上文件管理命令有哪些,其常用的相关示例演示。 常见文件管理命令有:touch/stat/file/rm/cp/mv/nano 示例如下: [root@localhost week2_test]# touch newfile [root@localhost week2_test]# ls&nbsp…

    Linux干货 2016-08-22
  • 关于文件查找和解压缩

                     文件查找和解压缩在文件系统上查找符合条件的文件,文件查找的工具有两个,locate 和find文件查找分为:          &nbs…

    系统运维 2016-08-18
  • Grep 文本搜索工具与正则表达式

            grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行。Grep在实际中对于我们的工作有着很大的作用,用于对文件的搜索,通过由正则表达式字符以及…

    2017-04-15

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-23 08:05

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