• 包管理工具-yum


    yum介绍

    yum(全称为 Yellow dog Updater, Modified)是一个在 FedoraRedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

    yum 的配置文件分为两部分:main 和repository

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

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

    main配置:

     1 [main]  #yum仓库ID
     2 cachedir=/var/cache/yum/$basearch/$releasever  #yum 缓存的目录,yum 在此存储下载的rpm 包和数据库,默认设置为/var/cache/yum
     3 keepcache=0  #安装完成后是否保留软件包,0为不保留(默认为0),1为保留
     4 debuglevel=2  #debug级别
     5 logfile=/var/log/yum.log  #yum的日志文件
     6 exactarch=1  #有1和0两个选项,设置为1,则yum 只会安装和系统架构匹配的软件包
     7 obsoletes=1  #这是一个update 的参数
     8 gpgcheck=1  #检查包的来源
     9 plugins=1  #是否启用插件,默认1为允许,0表示不允许。我们一般会用yum-fastestmirror这个插件
    10 installonly_limit=5  #允许同时安装几个程序包
    11 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum  
    12 distroverpkg=centos-release  #ditribution version pkg 发行版版本号获取

    repository配置:

    • yum的repo配置文件中可用的变量:
    • $releasever: 当前OS的发行版的主版本号
    • $arch: 平台,i386,i486,i586,x86_64等
    • $basearch:基础平台;i386, x86_64
    • $YUM0-$YUM9:自定义变量
    1 [base]  #yum仓库id
    2 name=cdrom base  #yum仓库描述性文字
    3 baseurl=file:///misc/cd  #路径,可以写多个
    4         https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
    5 gpgcheck=1  #检查包的来源,0表示不检查包,1表示启用
    6 gpgkey=file:///misc/cd/RPM-GPG-KEY-CentOS-7  #导入key文件
    7 enabled=1  #1表示启用,0表示禁用,默认启用

    yum用法:

    安装

      yum install package1

      yum install -y package1:安装包

      yum reinstall -y package1:重新安装

    卸载

    yum remove|erase package1:卸载包,默认不卸载依赖包,如果连同依赖包一块卸载,可使用yum history进行卸载

    yum history:查看yum操作历史记录

    yum history info 10 :查看第10条记录

    yum history undo 11 -y:撤销yum历史记录第11条的操作,如果11条是安装操作,会撤销安装,即可卸载依赖包

    yum history redo 11 -y:重新执行11条记录的操作

    显示仓库列表

      yum repolist显示启用的仓库列表

    显示程序包

      yum list all 显示所有可用包

      yum grouplist显示包

      yum list installed显示已安装的包

      yum list available 显示未安装包

    升级程序包

      yum update [package1] [package2]不跟包名的话,是更新所有包,带包名的是更新具体的包

      yum downgrade package1 [package2] [...] (降级)

      yum check-update检查可用升级

      yum info 查看程序包information

      yum provides | whatprovides feature1 [feature2] [...]  命令是由哪个包提供的。

      yum clean all 清除缓存,(如果还清不了,可以手动删除rm -rf /var/cache/yum)

      yum makecache 构建缓存

      yum search string1 [string2] [...] 以指定的关键字搜索程序包名及summary信息

      yum deplist package1 [package2] [...]  查看指定包所依赖的capabilities

    安装及升级本地程序包

      yum localinstall rpmfile1 [rpmfile2] [...]  (用install替代)
      yum localupdate rpmfile1 [rpmfile2] [...]  (用update替代)
    包组管理的相关命令:
      yum groupinstall group1 [group2] [...]
      yum groupupdate group1 [group2] [...]
      yum grouplist [hidden] [groupwildcard] [...]
      yum groupremove group1 [group2] [...]
      yum groupinfo group1 [...]</

    yum的命令行选项:

      --nogpgcheck:禁止进行gpg check
      -y: 自动回答为“yes”
      -q:静默模式
      --disablerepo=repoidglob:临时禁用此处指定的repo
      --enablerepo=repoidglob:临时启用此处指定的repo
      --noplugins:禁用所有插件
     
    yum常用命令:
    yum install | remove | list | provides | repolist | clean all | history undo,redo N | search | info
     

    基于http协议的yum源(centos6,centos7)

      http服务器端配置
    1,关闭selinux,关闭防火墙
      setenforce 0;systemctl stop firewalld
    2,安装http
      yum install -y httpd
    3,在/var/www/html目录下新建目录(/var/www/html是http的默认根目录)
      cd /var/www/html/
      mkdir -p centos/{6,7}/os/x86_64
    4,挂载光盘到新建的目录
      mount /dev/sr0 /var/www/html/centos/7/os/x86_64/
      mount /dev/sr1 /var/www/html/centos/6/os/x86_64/
     
      客户端配置
    5,配置.repo文件(在/etc/yum.repo.d/目录下)
      [base]
      name=cdrom base
      baseurl=http://192.168.3.234/centos/$releasever/os/$basearch/
      gpgcheck=1
      gpgkey=http://192.168.3.234/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-$releasever
      enabled=1
    6,yum repolist --查看库
      yum list --查看包含的包
     
    另一种方法:
    服务器端:在/var/www/html/目录下创建文件yum.txt
    vim yum.txt  --可以配置多个路径
      http://192.168.3.234/centos/$releasever/os/$basearch/
      https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
    客户端:
      mirrorlist=http://192.168.3.234/yum.txt  --原来的baseurl替换为mirrorlist,指向yum.txt文件路径,读取yum.txt里面的内容
     
     

    自己创建yum仓库

    服务器端

    1,在/var/www/html/目录下创建dnf目录

    2,将rpm包拷贝到/var/www/html/dnf/目录下

    3,进入dnf目录,创建库,createrepo . ,会生成repodata目录

    客户端

    4,在/etc/yum.repo.d/目录下创建一个dnf.repo文件

      [dnf]
      name=dnf
      baseurl=http://192.168.3.234/dnf  --路径指向服务器端的库所在目录
      gpgcheck=0
    5,查看库 yum repolist

  • 相关阅读:
    (2.3)备份与还原--事务的运行模式与处理机制
    (2.2)备份与还原--备份类型与恢复模式、备份介质
    (2.1)备份与还原--sql server文件的概念及操作
    (1.3.3)权限控制
    (1.3.2)登录验证(加密连接与登录验证)
    (1.3.1)连接安全(连接实例与网络协议及TDS端点)
    static class
    cnblog
    microsoft
    C# socket android
  • 原文地址:https://www.cnblogs.com/wangyanqiang/p/11772619.html
Copyright © 2020-2023  润新知