跳至主要內容

制作本地yum源,并同步更新其它源到本地

Change Lee...大约 2 分钟Linuxyum

制作本地yum源,并同步更新其它源到本地

准备工作

  • 1、ftp、http、nfs等网络服务
  • 2、reposync、createrepo 工具
  • 3、yum的真实网络源
  • 4、创建yum的repo文件

安装

yum install vsftpd -y
vim /etc/vsftpd/vsftpd.conf
……
#修改配置文件,添加anon_root=dir ,指向你的yum源包的目录

安装reposync,createrepo

yum install yum-utils createrepo -y

配置常用的网络源

  • 阿里云提供了很多的源,我们可以从上面下载依赖

以centos 7 为例,此方法也同样适应于其它系统:

wget http://mirrors.aliyun.com/repo/Centos-7.repo -O /etc/yum.repos.d/Centos-7.repo 
#下载存放到目录中
yum clean all
yum repolist 
#清空缓存,更新一下就可

#如果只执行以上步骤,你的server 就已经可以使用阿里云的源了,其他源的方法也差不多

另外还以下源:

# docker ce
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# epel
rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm 
#另外,nginx,php,mysql,zabbix,k8s等等请自己去官方下载配置,方便下面的缓存使用

设置缓存同步

上面已经配置好了源,我们只需要根据需要去缓存同步即可。

#yum repolist 可以看到如下的界面

我们需要根据自己的需要去同步

reposync 常用参数
-r 指定yum源名称
-p 指定目标目录
-n 只同步新的
-q 安静模式
--allow-path-traversal 允许存在外部目录
#假设/data是我们存放源的位置
reposync -p /data
# -p 会在/data 目录下自动生成base,extras,zabbix等在yum repolist中出现的源。
reposync -r base -p /data/
# -r 指定需要同步的源

上图的提示就是因为源的目录是 ../../pool ,我们当前指定的/data已经出了低线了,所以我们要想同步,需要指定–allow-path-traversal ,然后等同步完成后,我们移动过去,或者我们在/data上创建目录,如,/data/kubernetes/1/,使用 reposync -r kubernetes -p /data/kubernets/1/ –allow-path-traversal 这样它会在/data/kubernetes/下创建一个pool目录来存储文件.

上面的这个方法我没有验证过,我是同步到pool。然后移动到kubernets,再生成的数据库

生成源信息数据库

createrepo /data/kubernets 
#有几个目录就要操作几次

配置repo文件

拷贝一份阿里的Centos-7.repo 然后修改其中的baseurl 即可。

上次编辑于:
贡献者: change
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3