码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • yum仓库


    目录

    什么是yum仓库

    概念

    yum的实现过程

    Yum的实现过程如下:

    yum的配置文件

    仓库设置文件

    日志文件

    yum命令

    yum list       显示所有可用的包,包名,支持通配符 yum list*Kernel

    yum info     显示包的信息

    yum  search ftp      查找包含ftp的所有安装包  (模糊查找)

    yum  provides ftp   查找这个命令来源和哪个包      (精确查找)

    yum history       查找历史命令(所有操作)

    查询  

    yum list [软件名]

    yum info [软件名] (不加软件名显示所有软件包的详细信息)

    yum search <关键词>(模糊查找)

    yum provides <关键词>(精确查找)

    yum grouplist [包组名]

    yum groupinfo <包组名>

    yum安装升级

     yum install [软件名]

    yum groupinstall <包组名>

    yum update <包组名>

    软件卸载

    yum  remove <软件名>

    yum history

    搭建仓库

    http方式

    1.先在服务端挂载光盘镜像

    2.在客户端 

    3.测试

    ftp方式搭建云仓库


    什么是yum仓库

    概念

    Yum仓库是指使用Yum命令下载软件的镜像地址。它是一个基于RPM包构建的软件更新机制,能够自动解决软件包之间的依赖关系。在Yum仓库中,事先存储了众多rpm包以及相关的元数据文件,当Yum客户端利用Yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包以及依赖关系,自动从仓库中找到相关包下载并安装。

    yum的实现过程

    要有安装包

    安装包:  

       1.光驱里自带       挂载提供软件包

    yum需要依赖于环境,依赖于服务端和客户端,允许跨网络

    服务器:

    RPM包 (Packages文件夹中)

    元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)

    客户端的配置文件中

    baseurl=地址 一定要写到到 这两个文件夹 repodata packages 的上级目录

    最终形成两个文件夹Packages (包文件夹一般取名packages)和 repodata(元数据文件夹)

    仓库类型:

    光盘的仓库基本仓库    比较常用的

    epel扩展仓库 比较新  (第三方源)

    Yum的实现过程如下:

    1. 在Yum服务器上创建Yum Repository(仓库),在仓库中事先存储了众多rpm包以及相关的元数据文件(放置于特定目录repodata下)。
    2. 当Yum客户端利用Yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包以及依赖关系,自动从仓库中找到相关包下载并安装。

    yum的配置文件

    1./etc/yum.conf    主配置文件

    1. [root@localhost]# /etc/yum.conf
    2. [main]
    3. cachedir=/var/cache/yum/$basearch/$releasever //yum下载的RPM包的缓存目录 $basearch代表硬件架构 $releasever系统版本比如7
    4. keepcache=0 //是否保存缓存 0代表不保存,1代表保存
    5. debuglevel=2 //调试级别了解即可
    6. logfile=/var/log/yum.log // 日志文件位置
    7. exactarch=1 //是否允许不同版本的rpm安装
    8. obsoletes=1 //update 的一个参数是否可以允许旧版本的运行
    9. gpgcheck=1 //验证秘钥
    10. plugins=1 //是否允许插件1代表可以
    11. installonly_limit=5 //保存几个内核 5代表5个
    12. bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
    13. distroverpkg=centos-release
    14. yum的repo配置文件中可用的变量:
    15. $releasever: 当前OS的发行版的主版本号,如:8,7,6
    16. $arch: CPU架构,如:aarch64, i586, i686,x86_64等
    17. $basearch:系统基础平台;i386, x86_64
    18. $contentdir:表示目录,比如:centos-8,centos-7
    19. $YUM0-$YUM9:自定义变量

    仓库设置文件

    /etc/yum.repos.d/*.repo                    yum仓库文件位置

    日志文件

       /var/log/yum.log                  日志文件   cat查看

    yum命令

    yum list       显示所有可用的包,包名,支持通配符 yum list*Kernel

    yum info     显示包的信息

    yum  search ftp      查找包含ftp的所有安装包  (模糊查找)

    yum  provides ftp   查找这个命令来源和哪个包      (精确查找)

    yum history       查找历史命令(所有操作)

    查询  

    yum list [软件名]
    1. [root@localhost ~]# yum list httpd //安装软件
    2. [root@localhost ~]# yum list *httpd* 包含httpd的软件包

    yum info [软件名] (不加软件名显示所有软件包的详细信息)
    [root@localhost ~]# yum info httpd  //显示httpd安装包的详细信息
    

    yum search <关键词>(模糊查找)

    根据关键字查找软件安装包,相当于你只知道这个包里的某个关键字会全部给你匹配出来

    [root@localhost ~]# yum search httpd
    

    yum provides <关键词>(精确查找)

    你知道某个命令却不知道具体的包可以用此命令查找

    [root@localhost ~]# yum provides httpd
    

    yum grouplist [包组名]

    安装包组的查询 不加包组名 就是显示所有(此处例子由于安装了中文环境,无法显示英文包组名称无法直接复制中文使用,建议直接安装英文操作系统)

    [root@localhost ~]# yum grouplist

    yum groupinfo <包组名>

    不加包组名显示全部 

    [root@localhost ~]# yum groupinfo "GNOME Desktop"
    

    yum安装升级

     yum install [软件名]

    安装软件包

    [root@localhost ~]# yum install nginx -y  //加-y确认安装,后面就无需再次确认
    

    yum groupinstall <包组名>
    [root@localhost ~]#  yum group install gnome desktop -y  //安装桌面
    

    yum update <包组名>

    更新包组,可以单个也可以全部 后面加具体包组名称就是单个更新,不加就是全部更新(首先要有更新的包组)

    [root@localhost ~]# yum upgrade

    软件卸载

    yum  remove <软件名>

    [root@localhost ~]# yum upgrade httpd

    yum history

    可以使用yum history undo 4 进行卸载,这样对比remove好处是可以将所有的依赖都删除

    把4删除

    如果后悔 卸载 可以使用两种方式

    yum history redo 4 (重新安装一遍)

    yum history undo 6 (反悔卸载等于重新安装一遍)

    搭建仓库

    http方式

    1.先在服务端挂载光盘镜像

    2.在客户端 

    3.测试

    ftp方式搭建云仓库

    服务端:192.168.17.25

    客户端:192.168.17.30

  • 相关阅读:
    wpf devexpress Property Grid创建属性定义
    python 如何判断一组数呈上升还是下降趋势
    关于RocketMQ那些你可能不知道的性能优化!
    12. 虚拟机与类加载机制
    svelte初探-上
    【路径规划】基于卡尔曼滤波、三次插值实现极速赛道赛车路径规划附matlab代码
    用cygwin下载安装ncview(windows 下安装ncview)
    探索性能驱动的模拟 IC 布局的机器学习方法
    STM32物联网项目-触摸按键
    【C++】类和对象的关系,对象的存储方式以及对象内存的计算
  • 原文地址:https://blog.csdn.net/X2683933654/article/details/134452959
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号