跳至主要內容

自建yum仓库

知识库运维技巧运维工具运维工具大约 1 分钟

安装

yum install -y epel-release
## createrepo和httpd用于创建内网仓库和提供http协议访问
yum install -y createrepo httpd

## 创建本地 YUM 仓库目录 我定义的是repos 你也可以改成其他名称
mkdir -p /var/www/html/repos/{base,extras,updates}

## 上传centos镜像到服务器并挂载然后copy所有软件包到我刚才创建的仓库目录里
mount /dev/cdrom /mnt  # 这个是vmware虚拟机时候用 下边是镜像时候用
# 挂磁盘镜像到/mnt的话执行 mount -o loop CentOS-7-x86_64-DVD-1804.iso /mnt
cp -R /mnt/Packages/* /var/www/html/repos/base
umount /mnt

## 创建本地 YUM 仓库 建立元数据
createrepo /var/www/html/repos/base
createrepo /var/www/html/repos/extras
createrepo /var/www/html/repos/updates

## 修改http配置访问yum仓库
vi /etc/httpd/conf.d/repos.conf
Alias /repos "/var/www/html/repos"

<Directory "/var/www/html/repos">
  Options Indexes FollowSymLinks
  Require all granted
</Directory>

## 启动并开启 httpd 服务
systemctl start httpd
systemctl enable httpd

配置yum仓库 用yum下载软件的目录

vi /etc/yum.conf
cachedir=/var/www/html/repos/base

在内网其他服务器上配置 YUM 仓库 我的IP需改成你的

vi /etc/yum.repos.d/local.repo
[local-base]
name=Local CentOS $releasever - Base
baseurl=http://192.168.1.30/repos/base
enabled=1
gpgcheck=0

[local-extras]
name=Local CentOS $releasever - Extras
baseurl=http://192.168.1.30/repos/extras
enabled=1
gpgcheck=0

[local-updates]
name=Local CentOS $releasever - Updates
baseurl=http://192.168.1.30/repos/updates
enabled=1
gpgcheck=0