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

相关推荐

  • PXE自动化安装系统

    PXE自动化安装的流程: 开机自检 > 加载ROM中的bios代码 > 检查设备启动顺序,由于PXE自动安装是基于网卡作引导的,所以,会选择网卡 > 网卡中会有PXE的模块,从dhcp服务器获取ip地址 掩码 网关 dns 重要的是tftp服务器的地址 从tftp服务器需要获取的bootloder的文件名的信息 > 从tftp中加载p…

    Linux干货 2015-08-11
  • 包管理及源码安装Apache

    一,概述 yum 仓库的安装 在/etc/yum.repos.d/目录下创建后缀名为repo的配置文件 [CentOS7] name= baseurl= gpgcheck= enabled= 配置文件基本包含的四个要求 安装及升级本地程序包: * localinstall rpmfile1 [rpmfile2] […] (用install替代) …

    Linux干货 2016-09-01
  • 用户组和权限管理

    一、3A认证     Authentication:认证     Autherization:授权     Accoutiong|Audition:审计 二、用户user      linu…

    Linux干货 2016-08-04
  • 用户查找与添加 第四周

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp /etc/skel /home/tuser1  chmod -R go=— /home/tuser1 2、编辑/etc/group文件,添加组hadoop…

    Linux干货 2017-02-14
  • 磁盘管理及文件系统

    磁盘管理 本文将从以下几方面介绍 第一部分:磁盘管理 1、浅识Linux磁盘 2、常见命令 第二部分:文件系统管理 1、文件系统的创建 2、文件系统挂载 3、自动挂载配置文件 第一部分:磁盘管理 浅识Linux磁盘 对于Linux来说我们知道一切皆文件,同样在Linux中硬件设备在系统上会映射成相对应的文件,我们就像是在Windows看文件一样只要打开对应的…

    Linux干货 2017-08-15
  • 使用tar打包并使用gzip压缩的shell脚本应用实验

    博客目的: 练习find,gzip,tar,grep,vim等命令的使用以及shell脚本的初步使用 命令行模式下: 1、find出/目录下100M以上的文件并且查看 [root@rookie ~]# find / -size +100M | xargs ls -lh -r——–. 1 root root 128T 4月 8 16:02 /proc…

    Linux干货 2017-04-09

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-23 08:05

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