linux网络服务部署yum仓库

2023年 8月 15日 132.4k 0

yum概述

yum(Yellow dog Updater, Modified)是一个基于RPM包(Red-Hat Package Manager)构建的软件更新机制,它的有点就是可以自动解决软件包之间的依赖关系

注意yum安装一定要有安装包和元数据(repodata)

1.yum 的实现过程

软件仓库的提供方式(三种)

  • 1.本地yum源(file:///mnt)
  • 2.http yum源(http:///192.168.140.111/centos7)
  • 3.ftp yum源(ftp:///192.168.140.111/centos7)

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

yum实现安装,依赖于环境,依赖于服务端和客户端,允许跨网络(当本身既是服务端也是客户端时,建立本地yum仓库)

1.1 yum仓库类型:

  • 光盘的仓库基本仓库
  • epel扩展仓库

1.2 yum(工作原理)如何实现安装图文

1.png

  • 客户端根据配置文件找到yum仓库服务器的位置
  • 服务端向客户端发送元数据包(包含 软件依赖关系 软件的位置,即软件安装目录 )
  • 客户端下载后,在元数据包中的查找到目标,发送请求
  • 服务器响应并将相关软件包和依赖关系发送给客户端,客户端下载安装
  • 2. yum的配置文件

    仓库服务器 (服务端):

    提供RPM安装包和元数据给客户端

    • RPM安装包(存放于Packages文件夹内)
    • 元数据 (repodata目录)

    元数据内存有(repodata文件夹,即软件的目录),软件的依赖关系和软件的位置

    客户端 :

    根据得到的配置文件信息去仓库找对应的包并下载到本地

    客户端的配置文件中,baseurl= 后面的地址 一定要写到到 这两个文件夹 repodata packages 的上级目录

    (且一定要有配置文件 *.repo,配置文件必须以.repo 结尾

    客户端默认配置一般存放在文件目录 /etc/yum.repo.d/下)

    最终形成的两个文件夹:

    • Packages (包文件夹一般取名packages)
    • repodata(元数据文件夹)

    主配置文件一般格式:

    [xxxx]                       #仓库的描述  自定义
    name = xxxx                  #仓库的名字  自定义
    baseurl= file:///目录         #目录就是软件包所在的位置,最后一个/是根目录,例如配置信息存放在/mnt下,就是file:///mnt   
    #baseurl 指明服务端的位置
    #http://+网页路径
    #ftp://+本地文件路径
    gpgcheck=0                  #关闭完整性 安全性校验    
    #gpgcheck=1 就是进行安全效验
    

    2.1日志文件

    存放于/var/log/yum.log中

    2.png

    4.常用的yum命令及作用

    命令 不加关键字 加入关键词、软件包、软件包组
    yum list 显示所有可用包 单个的可安装包
    yum info 显示所有可用包的信息 单个具体的信息
    yum search 模糊查找所有的相关信息
    yum provides 精确查找
    yum grouplist 显示所有可用包组 显示具体的包组
    yum groupinfo 显示所有的包组具体信息 显示具体的包组的具体信息
    yum install 安装具体软件包
    yum groupinstall 安装具体软件包组
    yum update 所有软件升级 具体软件升级
    yum group update 所有包组升级 具体包组升级
    yum remove 卸载具体软件
    yum groupremove 卸载具体包组软件
    yum history 查看当前yum操作历史
    yum history undo 加入序号卸载序号里安装的软件
    yum history redo 加入序号重新执行序号里的操作

    安装

    4.1 yum install 安装下载

    格式:yum install 软件名

    选项:

    -y:全部同意(不加-y选项,安装好软件的时候会一直有询问是否同意)

    3.png

    查询

    4.2 yum list 显示可用的安装包

    4.png

    4.3 yum info 显示指定安装包详细信息

    格式:yum info 软件名

    不论是不是已经安装,都可以查询显示

    5.png

    4.4 yum search 根据关键词查找软件安装包

    格式:yum search 关键词

    7.png

    4.5 yum provides 根据命令名查找对应的软件包

    格式:yum provides 命令

    8.png

    4.6 yum grouplist 查询安装包组

    格式:yum grouplist 包组名

    9.png

    4.7 yum groupinfo 查询安装包组的详细信息

    格式:yum groupinfo 包组名

    以最小化安装包组Minimal Install示例:

    10.png

    4.8 yum history 查看历史的使用记录

    格式:yum history

    11.png

    卸载

    4.9 yum remove 卸载软件

    格式:yum remove 软件名

    12.png

    4.10 yum history undo 通过历史记录命令卸载

    对比yum remove卸载,使用yum history undo进行卸载可以将所有的依赖关系都删除

    格式:yum history undo id号

    id号可以通过yum history查看

    13.png

    14.png

    15.png

    16.png

    如果卸载完发现卸载错了或者后悔了,可以通过

    yum history redo id号重新安装

    17.png

    特殊

    4.11 只下载不安装

    当内网的一台主机安装某个软件包却缺少依赖包时,可以先由一台可连接外网的服务器下载依赖包,之后共享给这台主机

    yum install --downloadonly +软件名称 
    # --downloaddir 是只下载不安装时指定rpm包存放路径
    

    5.搭建本地yum仓库

    之前博客中有简单介绍yum本地仓库的搭建

    以下是全程图文示例

    yum1.png

    yum2.png

    yum3.png

    yum4.png

    6.使用HTTP方式搭建yum仓库

    服务端IP地址:192.168.1.10

    客户端IP地址:192.168.1.100

    服务端:

    本1.png

    http1.png

    http2.png

    客户端:

    本1.png

    http3.png

    http4.png

    http5.png

    http6.png

    7. 使用FTP方式搭建yum仓库

    服务器ip地址:192.168.1.10

    客户端ip地址:192.168.1.100

    服务端:

    本1.png

    ftp1.png

    ftp2.png

    客户端:

    ftp3.png

    ftp4.png

    ftp5.png

    ftp6.png

    ftp7.png

    ftp8.png

    相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论