16.搭建本地仓库

2022-01-11 分类:Linux基础, 未分类 阅读(440) 评论(0)

孙富阳, 江湖人称没人称。多年互联网运维工作经验,曾负责过孙布斯大规模集群架构自动化运维管理工作。擅长Web集群架构与自动化运维,曾负责国内某大型博客网站运维工作。

为什么要搭建yum仓库

我们并不是所有的Linux服务器都能访问外网的,搭建本地yum仓库,可以让其他机器直接从我这里下载软件,加快了下载速度,也不浪费带宽。

这里以nginx和vsftp两种服务方式搭建yum仓库,当然搭建yum仓库的方式有很多种。比如可以将nginx、vsftp等服务放在docker里运行。

1.环境准备

系统ip角色
centos710.0.0.99yum仓库服务端
centos710.0.0.98yum仓库客户端

2.以vsftp来搭建yum仓库

2.1.服务端进行yum仓库的搭建准备工作

#1.关闭防火墙、与selinux
[root@yum_server ~]# systemctl stop firewalld
[root@yum_server ~]# setenforce 0

#2.安装ftp服务,启动并加入开机启动
[root@yum_server ~]# yum -y install vsftpd 
[root@yum_server ~]# systemctl start vsftpd 
[root@yum_server ~]# systemctl enable vsftpd

#3.开启yum缓存功能
[root@yum_server ~]# vim /etc/yum.conf
[main] cachedir=/var/cache/yum/$basearch/$releasever 
keepcache=1
[root@yum_server ~]# yum clean all

#4.提供基础base软件包
[root@yum_server ~]# mkdir /var/ftp/centos7
[root@yum_server ~]# mount /dev/cdrom /mnt
[root@yum_server ~]# cp -rp  /mnt/Packages/*.rpm /var/ftp/centos7/

#5.提供第三方源
[root@yum_server ~]# mkdir /var/ftp/ops
[root@yum_server ~]# yum -y install nginx docker

#6.复制已缓存的 Nginx docker 及依赖包 到自定义 YUM 仓库目录中
[root@yum_server_69_112 ~]# find /var/cache/yum/x86_64/7/ \
-iname "*.rpm" -exec cp -rf {} /var/ftp/ops \;

#7.安装createrepo并创建 reopdata仓库
[root@yum_server_ ~]# yum -y install createrepo
[root@yum_server_ ~]# createrepo /var/ftp/ops

#PS: 如果此仓库每次新增软件则需要重新生成一次

2.2.客户端配置yum源指向服务端

#1.客户端配置并使用 base 基础源
[root@yum_client ~]# gzip /etc/yum.repos.d/*
[root@yum_client ~]# vim /etc/yum.repos.d/centos7.repo 
[centos7]
name=centos7_base
baseurl=ftp://10.0.0.99/centos7
gpgcheck=0

#2.客户端配置并使用 ops 源
[root@yum_client ~]# vim /etc/yum.repos.d/ops.repo 
[ops]
name=local ftpserver
baseurl=ftp://10.0.0.99/ops
gpgcheck=0



###到这里基于visftp服务的yum仓库就搭建完成了

3. 以nginx来搭建yum仓库

3.1.服务端进行yum仓库的搭建准备工作



#1.关闭防火墙、与selinux
[root@yum_server ~]# systemctl stop firewalld
[root@yum_server ~]# setenforce 0

#2.安装ftp服务,启动并加入开机启动
[root@yum_server ~]# yum -y install nginx
[root@yum_server ~]# systemctl start nginx 
[root@yum_server ~]# systemctl enable nginx

#3.开启yum缓存功能
[root@yum_server ~]# vim /etc/yum.conf
[main] cachedir=/var/cache/yum/$basearch/$releasever 
keepcache=1
[root@yum_server ~]# yum clean all

#4.提供基础base软件包
[root@yum_server ~]# mkdir /var/nginx/centos7
[root@yum_server ~]# mount /dev/cdrom /mnt
[root@yum_server ~]# cp -rp  /mnt/Packages/*.rpm /var/nginx/centos7/

#5.编辑nginx配置文件
[root@yum_server ~]# cat /etc/nginx/conf.d/yum_repo.conf 
server {
listen 80;
root /var/nginx/centos7;
autoindex on;###这是目录索引,方便通过web页面查看仓库里有哪些包 
autoindex_localtime on;###索引使用本地时间
autoindex_exact_size off;###大小以人类可读的方式展示。就是换算成M、G这样的单位
}

#6.安装createrepo并创建 reopdata仓库
[root@yum_server_ ~]# yum -y install createrepo
[root@yum_server_ ~]# createrepo /var/nginx/centos7

#PS: 如果此仓库每次新增软件则需要重新生成一次

3.2.客户端配置yum源指向服务端

#1.客户端配置并使用本地yum源
[root@yum_client ~]# gzip /etc/yum.repos.d/*
[root@yum_client ~]# vim /etc/yum.repos.d/centos7.repo 
[centos7]
name=centos7_base
baseurl=http://10.0.0.99/
gpgcheck=0

###到这里基于nginx服务的yum仓库就搭建完成了

评论已关闭

登录

忘记密码 ?

切换登录

注册

鲁ICP备2021019243号-1