YUM配置安装使用

一、YUM简介

    1. YUM: Yellowdog Update Modifier

完成RHEL系列前端自动解决依赖关系安装工具,依赖rpm存在

    2.工作模式:C/S 架构

      Server(yum仓库):依赖关系库、原文件、校验码文件

      Client端:yum客户端程序、配置文件(连接Server路径信息)

    3.设计缺陷:

某一次安装过程中半途终止,再次重启后将无法解决程序间的依赖关系

yum升级版dnf就是为了解决此类问题

    2.yum repository: yum repoyum仓库

存储rpm包,以及包的相关的元数据文件(放置于特定目录下:repodata);

 

 

 

二、YUM客户端配置

    1.yum配置文件路径

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

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

    2./etc/yum.conf主配置定义

        [root@localhost ~]# man 5 yum.conf           #可获得yum.conf的详解

       [root@localhost ~]# cat /etc/yum.conf

[main]            #通用主配置段

cachedir=/var/cache/yum/$basearch/$releasever          # 缓存文件路径

keepcache=0                     缓存到本地的文件是否保存

debuglevel=2                   调试级别

logfile=/var/log/yum.log                 # 安装的日志文件

exactarch=1                                              精确严格的平台release匹配

obsoletes=1

gpgcheck=1                      #检测来源合法性和完整性

plugins=1                         #支持插件机制

installonly_limit=5                    #同时安装多少程序包

bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bu        追踪bug路径

distroverpkg=centos-release               当前发行版版本号从哪儿获取

#  This is the default, if you make this bigger yum won’t see if the metadata

# is newer on the remote and so you’ll “gain” the bandwidth of not having to

# download the new metadata and “pay” for it by yum not having correct

# information.

#  It is esp. important, to have correct metadata, for distributions like

# Fedora which don’t keep old packages around. If you don’t like this checking

# interupting your command line usage, it’s much better to have something

# manually check the metadata once an hour (yum-updatesd will do this).

# metadata_expire=90m

# PUT YOUR REPOS HERE OR IN separate files named file.repo

# in /etc/yum.repos.d

    3.仓库(*.repo)配置文件定义:

[repositoryID]        #仓库ID,唯一标识别,不能重复

name=Some name for this repository       #  完整的仓库名称

baseurl=url://path/to/repository/          # yum仓库指明的访问路径

enabled={1|0}           #是否启用此yum仓库,默认启用

gpgcheck={1|0}              #是否检查完整性和来源合法性

gpgkey=URL                     #秘钥文件位置,可能是对方仓库提供

enablegroups={1|0}              #是否基于组来批量管理程序包

failovermethod={roundrobin|priority}    #故障转移方法:轮询、根据优先级选择; 默认roundrobin随机

cost=#                    #设置开销,默认为1000

… …

     说明:

                1)*.repo可以将多个[repositoryID]的配置信息放在一个而文件内,也可以切成多个方便管理

     2)baseurl可以使用:ftp:// http:// nfs:// file:///  URL路径

     3)baseurl等号两边不能有空格,其后可以填写多个镜像访问路径,每行一个,不能顶行写

           多个访问路径间联系是镜像相同,目的是为了做备用访问

     4)更多选项使用man  5  yum.conf查看,基本配置只需前三行就可以        

     5)发行版光盘镜像安装可能会自动配置网络镜像URL地址

 

 

 

三、yum命令的用法

 yum   [options]   [command]   [package …] 

    1.OPTIONS

    –nogpgcheck:禁止进行gpg check;

            -y:    自动回答为“yes”;

            -q: 静默模式,不输出显示信息

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

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

–noplugins:禁用所有插件;

 

    2.常用COMMAND

        (1)显示仓库列表repolist

   # yum repolist [all|enabled|disabled]    [所有|可用的|不可用]

wKioL1Z9WKeAo9-8AAEJ7wLMzS8141.jpg

        (2)显示程序包:list

                 # yum list [all | glob_exp1] [glob_exp2] […]     [所有的|符合glob通配条件的]

                # yum list {available|installed|updates} [glob_exp1] […]   可用尚未安装的,已经安装的,可升级的

        (3)安装程序包:install

             # yum  install package1 [package2] […]

                 # yum reinstall package1 [package2] […]  (重新安装)

wKiom1Z9WJKRYpY4AAEtes0ErR8288.jpg

wKioL1Z9WKjhaytDAAEkLkx3kWs681.jpg

        (4)卸载程序包:此时依赖于此安装包也会被卸载

            yum remove | erase package1 [package2] […]         

        (5)、降安装程序包:updatedowngrade

            # yum update [package1] [package2] […]         升级操作

            # yum downgrade package1 [package2] […]       降级操作

        (6)检查可用升级:check-uodate

            # yum check-update

        (7)查看程序包简要信息info

            # yum info [package1]  [package2]  […]

wKiom1Z9WJPDD8vUAAKYLxKL4wM239.jpg

        (8)查看指定的特性(可以是某文件)是由哪个程序包所提供:provides

            yum  provides | whatprovides feature1 [feature2] […]

wKioL1Z9WKqx7_z6AADlLnR7s8Y583.jpg

        (9)清理本地缓存:clean

            # yum  clean  <packages | metadata | expire-cache | rpmdb | plugins | all >

包、源数据、过期缓存、rpmdb、插件、所有

包安装完了会自动清除、而元数据(依赖关系等)不会自动,但下次yum安装会自动重新校验wKiom1Z9WJSRWKNMAAE1KBr2CXY931.jpg

        (10)构建缓存:重新yum安装会自动创建缓存数据:makecache

            #  yum makecache

wKioL1Z9WKyQC3VTAAMVCzfzHAg325.jpg

        (11)以指定的关键字搜索程序包名及summary信息:search

              # yum  search  string1  [string2]  […]   

wKioL1Z9WK_zRu0mAAUb2NlFxAw361.jpg

        (12)查看指定包所依赖的功能(capabilities)

               # yum deplist  package1  [package2] […]

wKiom1Z9WJqiY1ofAAJt4AVCQUE381.jpg

        (13)查看yum事务历史:history

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

 

    3.COMMAND安装及升级本地程序包

指定安装本地的*.rpm,但是会根据yum源现有依赖关系,解决此安装可能出现的依赖关系

             # yum  localinstall rpmfile1 [rpmfile2] […]

             # yum  localupdate rpmfile1 [rpmfile2] […]

 

    4.COMMAND包组管理的相关命令:

包组:一堆程序的一个集合,用于一起安装,因为某些程序安装需要依赖包组内容

                  # yum  groupinstall group1 [group2] […]     安装包组

                  # yum  groupupdate group1 [group2] […]    升级包组

                  # yum  grouplist [hidden] [groupwildcard] […]   显示包组列表

                 # yum  groupremove group1 [group2] […]     移除包组

                 # yum  groupinfo group1 […]   显示包组信息

 

 

 

四、创建yum仓库

    1.使用光盘当作本地yum仓库:

光盘的镜像本身就是一个yum源,自己安装系统时候选择安装工具时就是借助yum自动安装

       (1)挂载光盘至某目录,例如/media/cdrom   # mount -r [-t iso9660 /dev/cdrom /media/cdrom

       (2)创建配置文件

            [ID]

name=

            baseurl=file:///… …

gpgcheck=

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

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

$arch: 平台;

            $basearch:基础平台,同一系列最基本的架构,如3264

            $YUM0-$YUM9 可做自定义

wKiom1Z9WJvhLDbrAACrHBBzXtg387.jpg

    3.手动创建yum仓库:

        (1)安装工具:createrepo

wKioL1Z9WLHih-v4AAGpA0WzP1k244.jpg

        (2)下载所需要的所有文件到本地某个路径

wKiom1Z9WJvTly-fAAB1D47cksI937.jpg

        (3)创建关联关系: createrepo – Create repomd (xml-rpm-metadata) repository

命令:createrepo   [options]   <directory>

当完成狗会生成repodata即可

wKioL1Z9WLLww27xAAFasp_-BG0446.jpg

        (4)配置yum源文件,创建*.rope写入信息即可

wKiom1Z9WJ6yTz2-AAJ328oD7W8080.jpg

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96863

(0)
隔壁小翔隔壁小翔
上一篇 2018-04-22
下一篇 2018-04-22

相关推荐

  • 进程和计划任务

    进程和计划任务 进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程 UID、GID、和SELinux语境决定对文件系统的存取和访问权限,通常从执行进程的用户来继承 存在生命周期 task str…

    2018-05-03
  • MYSQL数据库笔记(一)

    二进制格式安装7.4 1、检查环境 2、下载对应的二进制包 3、 useradd -r -d /data/mysqldb -s /sbin/nologin mysql 创建账号 getent passwd mysql 确认 创建软连接; chown -R root: mysql/ 创建物理卷; 创建逻辑卷;   创建文件系统; mkdir /dat…

    2018-06-07
  • 马哥教育– 第一周作业

    一、描述计算机的组成及其功能。 计算机由运算器,控制器,存储器,输入设备和输出设备五大部分组成。 运算器的功能是用于完成算术运算、逻辑运算。负责计算机执行的所有数学与逻辑功能。 控制器的功能是主要负责对程序所执行的指令进行分析,并协调计算机各部件进行工作计算机的所有其他部件。 存储器的功能是用于储存信息的设备,通常是将信息数字化后再利用电、磁、光学等方式的媒…

    2018-05-12
  • Centos7登陆颜色修改

      在用远程登陆软件登陆Centos时,登陆提示符是一串黑色的字符,假如登陆的窗口多时很容易造成各种运维事故。本来要在机器A上修改文件配置,结果没看清在机器B上修改文件配置,造成不必要的麻烦。这时修改登陆字符颜色就显得很重要,设置一个醒目的提示字符颜色可减少不必要的麻烦,也能够提醒自己谨慎操作!下面给大家说明下相关配置要求。                 …

    Linux笔记 2018-03-31
  • 第三周作业

    1 列出当前系统上所有已经登陆的用户的用户名,注意:同一个用户名登陆多次,则只显示一次。
    2 取出最后登陆到当前系统的用户的相关信息。
    3 取出当前系统上被用户当作其默认shell的最多的那个shell.
    4 将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
    5 取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
    6 列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字装换为大写后保存至/tmp/etc.conf文件中。
    7 显示/var目录下一级子目录或文件的总个数。
    8 取出/etc/group文件中第三个字符段数值最小的10个组的名字。
    9 将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
    10. 请总结描述用户和组管理类命令的使用方法并完成以下练习:
    (1)创建组distro, 其GID为2016
    (2)创建用户mandriva, 其ID号为1005,基本组为distro
    (3)创建用户mageia, 其ID号为1100,家目录为/home/linux
    (4)给用户mageia添加密码,密码为mageedu
    (5)删除mandriva, 但保留其家目录
    (6)创建用户slackware, 其ID号为2002, 基本组为distro, 附加组为peguin
    (7)修改slackware的默认shell为/bin/tcsh
    (8)为用户slackware的新增附加组admins

    2018-06-05
  • 使用until和while分别实现

    使用until和while分别实现192.168.0.0/24
    网段内,地址是否能够ping通,弱ping通则输出”success!”,若ping不通则输出”fail!”

    Linux笔记 2018-06-15