环境:VMware-Workstation-12-Pro,Windows-10,CentOS-7.6,Xshell5
前言
我们知道yum工具是基于rpm的,其一个重要的特性就是可以自动解决依赖问题,但是yum的本质依旧是把后缀名.rpm的包下载到本地,然后按次序安装之。但是每次执行yum install xxx,会自动安装并且安装完毕后把rpm包自动删除。当我们下载比较大的服务,比如MySQL大约190M,每次都重新下载比较慢,这时我们就可以考虑,搭建本地离线yum仓库,大致需要如下几个步骤。
1、把rpm包及其相关依赖全部都下载到本地,保存好。
2、手动在/etc/yum.repos.d/目录下配置本地仓库信息。
3、使用createrepo命令生成repodata信息。
4、使用yum repoinfo检查确认
一、把rpm包下载到本地
yum install --downloadonly --downloaddir=/aspack/ \
mysql-community-server
二、配置本地yum仓库信息
# vim /etc/yum.repos.d/as4k.repo
[as4k]
name=as4k local repository
baseurl=file:///aspack
gpgcheck=0
enabled=1
可以看到.repo配置文件,也是如此简单:
as4k是本地仓库名,可任意起名,但是注意不能与已有的仓库名重复。
name后面是注释信息,随意书写。
baseurl这后面就是填写本地仓库路径了,file://表示使用本地文件协议,后面的/aspack本地rpm包存放路径。
gpgcheck=0这是和验证包的安全信息的,最好设置成0,表示关闭安全验证,否则还需要准备安全验证文件,麻烦一堆一堆的。
enabled=0,表示启用本仓库,0启用,1关闭。
三、生成repodate信息
createrepo命令默认系统没有,需要我们额外安装:
# yum install createrepo -y
安装完毕之后,直接使用:
# createrepo /aspack/
这时会发现本地仓库repodata相关信息已经生成完毕:
四、检查以及使用
使用下述命令可以看到本地仓库基本信息:
# yum repoinfo as4k
Repo-id : as4k
Repo-name : as4k local repository
Repo-status : enabled
Repo-revision: 1537699080
Repo-updated : Sun Sep 23 18:38:01 2018
Repo-pkgs : 41
Repo-size : 214 M
Repo-baseurl : file:///aspack/
Repo-expire : 21,600 second(s) (last: Sun Sep 23 18:41:05 2018)
Filter : read-only:present
Repo-filename: /etc/yum.repos.d/as4k.repo
repolist: 41