目录
前言
1. 环境准备
2. 制作仓库
2.1 流程
2.2 步骤
2.2.1.挂载本地镜像 Centos7.9
2.2.2.安装服务
2.2.3.拷贝软件包到httpd根目录
2.2.4.制作仓库清单
2.2.5. 设置网络yum 源
2.2.6. 客户端验证
3. 总结
在工作中,往往我们的环境都是内网无法获取网络,而很多时候我们都需要用到yum源进行软件包的安装,通常最简便的方法就是在主机或者虚拟机上挂载(mount)一个镜像,进行安装。这种方法虽然便捷,但又诸多的不便;主机非常多的情况,磁盘不够的情况,都会给运维带来很大的负担;那么如果有一个仓库,只需要我们所有的需要连接的客户机连接该仓库,往里面用多少拿多少是不是就可以解决这个问题了呢?答案是可以的。下面就让我们一起来搭建自己的仓库吧!!!
提示:以下是本篇文章正文内容,下面案例可供参考
操作系统:Centos7.9
虚拟机:>=2台
资源获取:
注:我这里使用的是 Centos7.9版本进行演示的,如果自己现场有环境,可以用自己的,原理都是一样的。如果没有问题那我们就 撸起袖子,开干吧!!!!
1.挂载本地镜像---> 2. 安装httpd 服务--- > 3.拷贝软件包的http更目录--->4.createrepo 制作清单--->5.配置yum 源 ---> 6.客户端验证
示例:
# 挂载镜像
[root@service ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
# 修改yum.repo 配置文件
[root@service ~]# vim /etc/yum.repos.d/development.repo
[development]
name=CentOS-$releasever
baseurl=file:///mnt
enabled=1
gpgcheck=0
# 清理yum 缓存
[root@service ~]# yum clean all ;yum repolist
Loaded plugins: fastestmirror
Cleaning repos: development
Cleaning up list of fastest mirrors
Loaded plugins: fastestmirror
Determining fastest mirrors
development | 3.6 kB 00:00:00
(1/2): development/group_gz | 153 kB 00:00:00
(2/2): development/primary_db | 6.1 MB 00:00:00
repo id repo name status
development CentOS-7 10,072
repolist: 10,072
# 安装本次需要的软件包
[root@service ~]# yum -y install httpd createrepo
# 创建一个Centos7.9 的目录
[root@service html]# mkdir -p /var/www/html/Centos7.9
# 将所有的镜像包拷贝到Centos7.9目录下,这里的需要花费一点时间哟,(这样做的目的是为了和镜像独立开来,如果不想拷贝直接可以将镜像盘挂载到 该目录下 mount /dev/cdrom /var/www/html/Centos7.9 也是可以的。
[root@service html]# cp /mnt/Packages/* /var/www/html/Centos7.9
# 切换到软件包所在的目录下
[root@service Centos7.9]# cd /var/www/html/Centos7.9
# 执行createrepo 命令开始制作清单,之后当前目录下会生成 repodata/repomd.xml 的文件
[root@service Centos7.9]# createrepo .
Spawning worker 0 with 31 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
仓库清单介绍:
ilelists.xml.gz:提供所有软件包的文件安装清单
primary.xml.gz:提供所有软件包的基本/主要信息
other.xml.gz:提供所有软件包的其他信息
repomd.xml:提供上述档案数据文件.xml.gz 的下载和校验信息
使用httpd 提供服务
[root@service Centos7.9]# cat vim /etc/yum.repos.d/development.repo
[development]
name=CentOS-$releasever
baseurl=http://192.168.8.201/Centos7.9/
enabled=1 #启用
gpgcheck=0 #不校验
# 启动httpd 服务
[root@service Centos7.9]# systemctl restart httpd
# 清理yum缓存
[root@service Centos7.9]# yum clean all ;yum repolist
拷贝服务器的yum配置源文件到客户端,清理缓存即可使用
[root@service Centos7.9]# scp /etc/yum.repos.d/development.repo [email protected]:/etc/yum.repos.d/ # 清理缓存 [root@service clint]# yum clean all; yum repolist # 测试安装软件 [root@service clint]# yum -y install httpd
总体来说是非常简单的,如果是小白直接按照操作步骤来即可,上面涉及到的ip 记得换一下哟,之后再以不用有到处找yum源的烦恼了。一库在手,天下我有!!!!