您的位置:首页 > 新闻 > 资讯 > CentOS YUM详解及YUM仓库的搭建案例

CentOS YUM详解及YUM仓库的搭建案例

2024/12/24 20:57:58 来源:https://blog.csdn.net/qq_44421043/article/details/141363096  浏览:    关键词:CentOS YUM详解及YUM仓库的搭建案例

文章目录

  • YUM(Yellowdog Updater Modified)的历史背景(建议略过)
      • Yellow Dog Linux
      • YUM 的起源
      • 名称的由来
  • YUM仓库服务
    • YUM 基本概念
      • 1. YUM (Yellowdog Updater Modified)
      • 2. YUM 软件仓库来源
      • 3. Linux系统的安装源
    • YUM 仓库设置与配置
      • 1. YUM 仓库的提供方式
      • 2. YUM 仓库配置文件示例
      • 配置示例
      • 3. 搭建本地与在线混合 YUM 仓库
    • YUM 命令与运用
      • 1. 基本命令
      • 2. 群组操作命令
      • 3. YUM 下载方式
    • 案例:搭建 YUM 仓库
      • 1. 搭建 FTP YUM 仓库
      • 服务端配置
      • 客户端配置
      • 2. 搭建阿里云源 YUM 仓库


YUM(Yellowdog Updater Modified)的历史背景(建议略过)

由于 YUM 英文名为 Yellowdog Updater Modified,而且历史由来确实有“Yellow Dog”的一部分(所以此处贴上历史背景,建议不用看),因此我叫它“黄狗”,当然这样叫并不规范只是一个乐子。

Yellow Dog Linux

  • Yellow Dog Linux: 是一个基于 RPM 包管理系统的 Linux 发行版,最初主要针对 PowerPC 架构(如早期的 Apple Macintosh 计算机)。它的包管理工具称为 Yellow Dog Updater(YUP)。

YUM 的起源

  • YUM 的创建: YUM 是由 Jeremy Katz 于 2003 年开发的。其目标是改进 Yellow Dog Linux 中的软件包管理工具 YUPYUM 旨在提供更易用、更强大的软件包管理功能,特别是在依赖关系管理方面。

名称的由来

  • Yellowdog: 取自 Yellow Dog Linux,YUM 最初是为其开发的。
  • Updater: 表示软件的主要功能是更新。
  • Modified: 表示 YUM 是对原有 Yellow Dog Updater 工具的改进版。

正文如下:


YUM仓库服务

YUM 基本概念

1. YUM (Yellowdog Updater Modified)

  • 基于 RPM 包管理:YUM 是基于 RPM 包管理的软件更新机制,主要用于自动化安装、更新和卸载软件包。
  • 自动解决依赖关系:YUM 可以自动处理软件包之间的依赖关系,避免手动安装依赖包的繁琐。
  • 集中管理的软件仓库:所有软件包都由集中管理的 YUM 仓库提供,用户可以从多个仓库获取所需软件。

2. YUM 软件仓库来源

  • 官方仓库:CentOS 或其他发行版官方提供的 RPM 包集合。
  • 第三方仓库:由第三方组织或社区提供的 RPM 包集合,如 EPEL(Extra Packages for Enterprise Linux)。
  • 用户自定义仓库:用户可以创建自己的 RPM 包集,并配置为 YUM 仓库。

3. Linux系统的安装源

CentOS 和 RHEL

  • CentOS 7 和 RHEL 7:默认使用 YUM 仓库源,安装包的格式是 .rpm 结尾的 RPM 包。
  • CentOS 8 和 RHEL 8:可以使用 DNF(Dandified YUM),这是 YUM 的下一代包管理工具,具备更快的依赖解析和其他改进功能,但仍然使用 .rpm 格式的包。

Ubuntu 和 Debian

  • APT 包管理:Ubuntu 和 Debian 使用的是 APT(Advanced Package Tool)软件包管理系统,安装包的格式是 .deb 结尾。APT 通过类似于 YUM 的方式管理软件包,但与 RPM 包管理系统不同。

YUM 仓库设置与配置

1. YUM 仓库的提供方式

  • FTP 服务:例如,ftp://your-repo-url/...
  • HTTP 服务:例如,http://your-repo-url/...
  • 本地目录:例如,file:///your-local-directory/...

2. YUM 仓库配置文件示例

配置示例

[test]
name=test
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
enabled=1

3. 搭建本地与在线混合 YUM 仓库

  • 本地仓库配置:将本地目录配置为 YUM 仓库,例如使用 ISO 文件作为源。
[test1]
name=test1
baseurl=file:///mnt
gpgcheck=0
enabled=1
priority=1  # 优先级,数字越小优先级越高
  • 在线仓库配置:如阿里云的 EPEL 源。
[test2]
name=test2
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
enabled=1
priority=2

YUM 命令与运用

1. 基本命令

  • 查看包列表
    • yum list:显示所有可用包或指定包名的信息。
  • 安装与更新包
    • yum install [包名]:安装指定软件包。
    • yum update [包名]:更新指定软件包。
    • yum upgrade [包名]:升级系统中的软件包,通常包括内核升级。
  • 卸载包
    • yum remove [包名]:卸载指定软件包。
  • 查看操作历史
    • yum history:查看当前 yum 操作历史。
    • yum history undo [序号]:撤销某次操作。
    • yum history redo [序号]:重新执行某次操作。

2. 群组操作命令

  • 包组列表
    • yum grouplist:显示所有可用包组。
  • 安装、更新、卸载包组
    • yum groupinstall [包组名]:安装指定包组。
    • yum groupupdate [包组名]:更新指定包组。
    • yum groupremove [包组名]:卸载指定包组。

3. YUM 下载方式

  • 方式一:下载并安装

    • yum install --downloadonly [软件包名]:下载但不安装,包存储在 /var/cache/yum/x86_64/7/ 目录下。
  • 方式二:仅下载

    • yumdownloader --destdir=/opt [软件包名]:指定目录下载指定软件包。
    • 参数 --destdir 是用来指定存放下载的安装包的目录。
  • 方式三:使用缓存功能

    默认情况下,yum会在安装完软件之后,自动清理掉安装包。但是也可以通过设置,让yum不清除安装后的安装包。

    • 配置 vim /etc/yum.conf,将 keepcache=0 修改为 keepcache=1,保留安装包。此时下载好的软件包默认安置在:/var/cache/yum。

案例:搭建 YUM 仓库

1. 搭建 FTP YUM 仓库

服务端配置

  • 安装 vsftpd

    yum install -y vsftpd
    
  • 创建并挂载目录

    该步骤涉及到ftp原理,用户远程访问时的,根目录就在 /var/ftp上,所以在此创建挂载目录。

    mkdir -p /var/ftp/centos7
    mount /dev/sr0 /var/ftp/centos7/
    systemctl start vsftpd
    

客户端配置

  • 备份原有 YUM 仓库

    cd /etc/yum.repos.d
    mkdir repo.bak
    mv *.repo /repo.bak/
    vim local.repo
    
  • 配置 FTP YUM 仓库

    vim /etc/yum.repos.d/local.repo
    [Local]
    name=local
    baseurl=ftp://192.168.110.128/centos7
    gpgcheck=0
    enabled=1
    

2. 搭建阿里云源 YUM 仓库

  • 安装 wget :

    wget是一个从网络上自动下载文件的自由工具,支持HTTP,HTTPS和FTP协议。

    yum install -y wget
    
  • 备份原有 YUM 仓库

    移动备份即可。

  • 联网后下载并配置阿里云仓库

    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com