自制YUM仓库的步骤讲解

  • Post category:Linux

首先需要明确的是,YUM是在Fedora和Redhat以及其衍生版本中开发的一种基于RPM包管理的软件包管理器。自制YUM仓库可以提高软件的分发效率,方便管理软件包,下面是制作自制YUM仓库的步骤讲解:

准备工作

  1. 安装apache及相关软件
    在CentOS 7中,可以使用yum install httpd httpd-tools createrepo yum-utils进行安装

  2. 配置apache
    修改/etc/httpd/conf/httpd.conf文件,开启web服务自启动;启用Director别名(绑定目录映射别名及对应目录)

  3. 准备RPM包,可以离线下载RPM包到本地,直接拷贝到制作的YUM仓库目录中。

步骤讲解

  1. 制作自制YUM仓库目录,包括构建repodata/nons的目录,使用createrepo命令进行创建,可使用如下命令:
# mkdir -p /var/www/html/centos/7/os/x86_64
# yum install createrepo -y
# createrepo --update /var/www/html/centos/7/os/x86_64/
  1. 在自制YUM仓库目录/var/www/html/centos/7/os/x86_64/下创建yum_repo.repo文件,内容长这样:
[local-7-os-x86_64]
name=CentOS 7 OS x86_64 - local
baseurl=http://172.28.12.101/centos/7/os/x86_64/
enabled=1
gpgcheck=0

baseurl指向本地仓库路径,enabled设置为1表示启用本地YUM仓库。

  1. 修改本地主机的/etc/hosts文件,添加本地主机对应的网段和域名的映射。
假设IP为:172.28.12.101
# vim /etc/hosts
172.28.12.101 myyumrepo.com
  1. 在要安装软件的机器上,将本地YUM仓库作为新的YUM源加入到本地机器上:
# rpm -ivh /mnt/cdrom/Packages/yum-utils-1.1.31-52.el7.noarch.rpm
# vim /etc/yum.repos.d/local.repo
[local-x86_64]
name=local
baseurl=http://myyumrepo.com/centos/7/os/x86_64/
gpgcheck=0
enabled=1
# yum clean all

这是一个示例,将本地仓库路径作为YUM源之一,将yum-utils安装到本地机器上。

  1. 使用yum进行软件包的安装和更新
# yum clean all -y
# yum makecache -y
# yum install -y gcc
  1. 清除YUM缓存,进行本地仓库软件的更新
# yum clean all
# yum update yumutils
# yum install postgrelsql-server

这就是自制YUM仓库的步骤讲解及示例。