YUM仓库相关概念及搭建方法

1、YUM仓库相关概念

YUM 仓库(YUM Repository)是一个存储 RPM 软件包的集合,用户可以通过 YUM 工具从仓库中安装和管理软件包。

YUM仓库的组成部分

  • 仓库元数据:包含有关仓库中软件包的信息,比如包名、版本、依赖关系等。YUM 工具使用这些元数据来解决包依赖问题。
  • RPM 包:仓库中存储的软件包通常是以 .rpm 格式打包的。

YUM的实现过程

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

img

YUM的类型

  • 本地仓库:RPM 包和元数据存储在本地文件系统中,适用于离线环境。
  • 远程仓库:通过 HTTP、FTP 或 HTTPS 等协议访问,适用于在线环境,常见的远程仓库包括 CentOS、RHEL 官方仓库或第三方仓库。

YUM仓库的功能

  • 软件安装:从仓库中下载并安装所需要的RPM包
  • 依赖管理:自动解决软件包安装过程的依赖关系。避免手动安装依赖
  • 更新与升级:检查已安装的包是否需要有更新。

2、YUM仓库的配置及常用命令

  • 仓库配置文件: 配置文件通常位于 /etc/yum.repos.d/ 目录下,每个 .repo 文件代表一个仓库配置文件,yum文件配置如下:
  [base]
  name=Base Repository
   baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
  enabled=1
  gpgcheck=1
  gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7
  • [base]:仓库 ID,唯一标识。可以是其他内容(必填)

  • name:仓库的描述信息。

  • baseurl:仓库的访问地址,可以是 HTTP、FTP 或本地路径。(必填)

  • enabled:是否启用该仓库(1 为启用,0 为禁用)。

  • gpgcheck:gpgcheck是gpg签名是否开启的选项名称,1是开启,0是不开启,一般内部部署软件包下载可以关掉。gpg签名主要用来在Linux实现官方发布的包的签名机制,主要为了软件下载使用的安全。(必填)

常见操作命令

  • 列出所有可用仓库

    yum repolist
    
  • 清理缓存

    yum clean all
    
  • 安装软件包:(可以带参数-y,不提示确认,无交互执行)

    yum install <package-name>
    
  • 更新系统软件

    yum update
    
  • 删除软件包或多个(可以带参数-y,不提示确认,无交互执行)

    yum remove <package1> <package2> ..
    

3、搭建本地YUM仓库方法

  • 创建rpm文件夹,将所有要放入本地仓库的 RPM 包放在一个文件夹内。

  • 安装createrepo 工具,用于创建 YUM 仓库所需的元数据。

    yum install createrepo
    
  • 在包含 RPM 包的目录下运行 createrepo 命令来生成元数据

    [root@chaofeng yum]# createrepo ./
    Spawning worker 0 with 29 pkgs
    Workers Finished
    Saving Primary metadata
    Saving file lists metadata
    Saving other metadata
    Generating sqlite DBs
    Sqlite DBs complete
    
  • 这会在该目录下生成一个 repodata 子目录,里面包含了仓库所需的元数据文件。

  • 此时已完成搭建,需要在创建yum源配置文件,在baseurl处关联这个文件

  • 再执行yum repolist 刷新yum配置列表,测试本地仓库是否可用,最右边为可以使用的rpm包个数

posted @ 2025-01-21 17:25  Epiphany(qrx)  阅读(41)  评论(0)    收藏  举报