部署YUM仓库及NFS共享服务

本文介绍了YUM仓库的概念,如何准备和安装yum源,包括从FTP和HTTP服务获取RPM包,以及在CentOS上构建和配置自己的仓库。还详细讲述了如何通过NFS网络文件系统共享服务。

一.YUM仓库

1.YUM概述
  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供
2.准备安装源

软件仓库的提供方式

  • FTP服务:ftp://.......
  • HTTP服务:http://.......
  • 本地目录:file://......

PRM软件包的来源

  • CentOS发布的RPM包集合
  • 第三方组织发布的RPM包集合
  • 用户自定义的RPM包集合

构建CentOS7软件仓库

  • RPM包来自CentOS7 DVD光盘
  • 通过FTP方式提供给客户机

在软件仓库中加入非官方RPM包组

  • 包括存在依赖关系的所有RPM包
  • 使用createrepo工具建立仓库数据文件 

访问YUM仓库

  • 为客户机指定YUM仓库位置
  • 配置文件:/etc/yum.repos.d/centos7.repo

二.制作YUM源

1.制作ftp源

1.1关闭系统防火墙

1.2安装软件包并开启服务

1.3复制安装包

1.4自动创建软件包的依赖关系保存到repodata目录当中

三.NFS网络文件系统功共享服务

1.安装 nfs-utils 和 rpcbind

2.启动两个服务

3.查看本地是否共享

### 本地部署Yum 仓库配置文件编写方法 在 Linux 系统中,Yum 是一种常用的包管理工具,用于自动化安装、更新和删除软件包及其依赖项。为了在离线环境中使用 Yum,通常需要搭建本地 Yum 仓库,并正确配置 Yum仓库文件。以下是编写本地部署Yum 仓库配置文件的具体方法: #### 配置文件结构 Yum 仓库的配置文件通常位于 `/etc/yum.repos.d/` 目录下,文件扩展名为 `.repo`。每个配置文件包含一个或多个 `[repository_id]` 节点,每个节点定义了一个仓库的信息。 以下是一个典型的本地 Yum 仓库配置文件的结构示例: ```ini [local-repo] name=Local CentOS Repository baseurl=file:///path/to/repo enabled=1 gpgcheck=0 ``` - **`[local-repo]`**:这是仓库的唯一标识符,可以自定义名称。 - **`name`**:仓库的描述性名称,用于显示信息[^3]。 - **`baseurl`**:指定仓库的路径或 URL。对于本地仓库,通常使用 `file://` 协议指向本地目录。 - **`enabled`**:设置为 `1` 表示启用该仓库,设置为 `0` 表示禁用。 - **`gpgcheck`**:设置为 `1` 表示启用 GPG 签名校验,设置为 `0` 表示禁用校验。 #### 具体步骤 假设已经将 CentOS 的 ISO 文件挂载到 `/mnt/cdrom`,并希望将其作为本地 Yum 仓库,则可以按照以下方式编写配置文件: 1. 创建一个新的配置文件: ```bash tee /etc/yum.repos.d/local.repo <<EOF [rhel-yum] name=CentOS 7 Local Repository baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0 EOF ``` 2. 如果需要通过 HTTP 提供访问(例如通过 Apache 或 Nginx),可以创建软链接并将路径指向 Web 服务目录: ```bash ln -s /mnt/cdrom/ /var/www/html/centos7 ``` 此时,`baseurl` 可以更改为: ```ini baseurl=http://<server-ip>/centos7 ``` 3. 验证配置是否生效: ```bash yum repolist ``` #### 使用 `createrepo` 创建元数据 如果本地仓库是通过手动复制 RPM 包构建的,则需要生成仓库元数据以便 Yum 使用。可以使用 `createrepo` 工具完成此操作: 1. 安装 `createrepo`: ```bash yum install createrepo -y ``` 2. 在存放 RPM 包的目录中生成元数据: ```bash createrepo /path/to/repo ``` 3. 确保 `baseurl` 指向正确的目录路径。 --- ### 示例代码 以下是一个完整的脚本示例,用于配置本地 Yum 仓库: ```bash # 挂载 ISO 文件 mount /path/to/CentOS-7-x86_64-Everything.iso /mnt/cdrom # 创建配置文件 tee /etc/yum.repos.d/local.repo <<EOF [local-repo] name=Local CentOS Repository baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0 EOF # 验证仓库 yum repolist ``` 如果需要通过 HTTP 提供访问,可以结合 Apache 或 Nginx 配置: ```bash # 安装 Apache yum install httpd -y systemctl start httpd # 创建软链接 ln -s /mnt/cdrom/ /var/www/html/centos7 # 修改配置文件中的 baseurl sed -i 's|baseurl=file:///mnt/cdrom|baseurl=http://<server-ip>/centos7|' /etc/yum.repos.d/local.repo ``` --- ### 注意事项 - 如果启用了 `gpgcheck`,需要确保提供正确的 GPG 密钥文件。 - 对于远程访问,确保防火墙允许 HTTP 或 HTTPS 流量。 - 如果使用 NFS 或 SMB 共享仓库,请确保客户端能够正确挂载共享目录。 ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值