CentOS 7 搭建本地YUM仓库,并定期同步阿里云源
目录导航:
5. 安装nginx开启目录权限保证本地机器可以直接本地yum源
1. 系统环境
# cat /etc/centos-release
CentOS Linux release 7.6. (Core) # uname -r
3.10.-.el7.x86_64 # ip a |awk 'NR==9{print $2}'|awk -F '/' '{print $1}'
10.0.0.100
2. 修改yum 源为阿里云源
2.1 备份系统自带的yum源
# tar -zcvf CentOS-bk.tar.gz /etc/yum.repos.d/CentOS-*
2.2 修改yum源
# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
或者
# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
2.3 检验阿里云源是否正常
# yum repolist Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com #仓库标识仓库名称状态 repo id repo name status !base//x86_64 CentOS- - Base - mirrors.aliyun.com , !epel/x86_64 Extra Packages for Enterprise Linux - x86_64 , !extras//x86_64 CentOS- - Extras - mirrors.aliyun.com !updates//x86_64 CentOS- - Updates - mirrors.aliyun.com , repolist: ,
3. 安装yum相关的软件
# yum install -y wget make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel createrepo yum-utils
yum-utils:reposync同步工具
createrepo:编辑yum库工具
plugin-priorities:控制yum源更新优先级工具,这个工具可以用来控制进行yum源检索的先后顺序,建议可以用在client端。
注:由于很多人喜欢最小化安装,上边软件是一些常用环境。
4. 根据源标识同步源到本地目录
4.1 创建本地目录
# mkdir /mirror
4.2 同步到本地目录
# reposync -p / mirror
注:不用担心没有创建相关目录,系统自动创建相关目录,并下载,时间较长请耐心等待。
可以用 repo -r --repoid=repoid 指定要查询的repo id,可以指定多个(# reposync -r base -p /mirror #这里同步base目录到本地)
更新新的rpm包
# reposync -np /mirror
注:时间同样较长,请耐心等待。
4.3 创建索引
# createrepo -po /mirror/base/ /mirror/base/
# createrepo -po /mirror/extras/ /mirror/extras/
# createrepo -po /mirror/updates/ /mirror/updates/
# createrepo -po /mirror/epel/ /mirror/epel/
4.4 更新源数据
# createrepo --update /mirror/base
# createrepo --update /mirror/extras
# createrepo --update /mirror/updates
# createrepo --update /mirror/epel
4.5 创建定时任务脚本
# vim /mirror/script/centos_yum_update.sh
#!/bin/bash
echo 'Updating Aliyum Source'
DATETIME=`date +%F_%T`
exec > /var/log/aliyumrepo_$DATETIME.log
reposync -np /mirror
if [ $? -eq ];then
createrepo --update /mirror/base
createrepo --update /mirror/extras
createrepo --update /mirror/updates
createrepo --update /mirror/epel
echo "SUCESS: $DATETIME aliyum_yum update successful"
else
echo "ERROR: $DATETIME aliyum_yum update failed"
fi
4.6 将脚本加入到定时任务中
# crontab -e
# Updating Aliyum Source
* * [ $(date +%d) -eq $(cal | awk 'NR==3{print $NF}') ] && /bin/bash /mirror/script/centos_yum_update.sh
每月第一个周六的13点更新阿里云yum源
5. 安装nginx开启目录权限保证本地机器可以直接本地yum源
5.1 创建运行账户
# groupadd nginx
# useradd -r -g nginx -s /bin/false -M nginx
# yum install nginx -y
5.2 修改nginx 配置文件
# vim nginx.conf
worker_processes ;
events {
worker_connections ;
} http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout ;
server {
listen ;
server_name localhost;
root /mirror ; #这里是yum源存放目录
location / {
autoindex on; #打开目录浏览功能
autoindex_exact_size off; # off:以可读的方式显示文件大小
autoindex_localtime on; # on/off:是否以服务器的文件时间作为显示的时间
charset utf-,gbk; #展示中文文件名
index index.html;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
}
6. 客户端创建repo文件
注:搭建好后yum安装速度并没有想象中的那么快,安装时解决依赖速度也很慢。
# vim CentOS7.x-Base.repo
[base]
name=CentOS-$releasever - Base - mirror.template.com
baseurl=http://10.0.0.100/base/
path=/
enabled=
gpgcheck= [updates]
name=CentOS-$releasever - Updates - mirror.template.com
baseurl=http://10.0.0.100/updates/
path=/
enabled=
gpgcheck= [extras]
name=CentOS-$releasever - Extras - mirrors.template.com
baseurl=http://10.0.0.100/extras/
path=/
enabled=
gpgcheck= [epel]
name=CentOS-$releasever - epel - mirrors.template.com
baseurl=http://10.0.0.100/epel/
failovermethod=priority
enabled=
gpgcheck=
CentOS 7 搭建本地YUM仓库,并定期同步阿里云源的更多相关文章
- CentOS7搭建本地YUM仓库,并定期同步阿里云源
CentOS7同步阿里云镜像rpm包并自建本地yum仓库 系统环境 # cat /etc/centos-release CentOS Linux release 7.6.1810 (Core) # u ...
- centos 7 搭建本地yum仓库
首先需要创建一个目录 mkdir /1 #在根目录下创建一个名字为1的目录 将光盘挂载到创建的这个目录 mount /dev/cdrom /1 yum命令配置文件在/etc/yum.repos.d ...
- 其他综合-搭建本地yum仓库及自制rpm包
搭建本地yum仓库及自制rpm包 实验目的 为方便本地 yum 的管理,建本地 yum 仓库,实现局域网内部快速安装常用软件 实验环境 VMware:12版本 系统版本:CentOS Linux re ...
- 如何手工搭建本地Yum仓库
如何手工搭建本地Yum仓库(重点推荐) https://www.linuxidc.com/Linux/2016-09/135480.htm CentOS7.2 创建本地YUM源和局域网YUM源: h ...
- 搭建本地YUM仓库
YUM介绍 yum(yellow dog updater modified)为多个Linux发行版的软件包管理工具,Redhat RHEL CentOS Fedora YUM主要用于自动安装,升级rp ...
- CentOS 7搭建本地yum源和局域网yum源
这两天在部署公司的测试环境,在安装各种中间件的时候,发现各种依赖都没有:后来一检查,发现安装的操作系统是CentOS Mini版,好吧,我认了:为了完成测试环境的搭建,我就搭建了一个局域网的yum源. ...
- 使用3种协议搭建本地yum仓库
关闭防火墙和selinux [root@qls yum.repos.d]# systemctl stop firewalld (stop,start,disable,enable) [root@qls ...
- 搭建本地yum仓库(centos 7.5)
1. 保留下载的软件包 [root@zabbix-server01 ~]# vim /etc/yum.conf keepcache=1 #开启后下载的软件都会保存到本地 2.将软件进行下载,并将所有r ...
- 在VMware下通过挂载系统光盘搭建本地yum仓库的方法
一.虚拟机的安装 首先你要有一个VMware虚拟机,没有软件的朋友可以看我的前几篇博客 安装VMware虚拟机 二.进入虚拟机(在这里我们进入一个Linux虚拟机下的CentOS操作系统进行演示) 首 ...
随机推荐
- 最全Python学习路线图【2020最新版】
2020年最新的python学习大纲,专为python高薪打造另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python交流.裙 :一久武其而 ...
- 数字统计(0)<P2010_1>
数字统计 (two.pas/c/cpp) [问题描述] 请统计某个给定范围[L, R]的所有整数中,数字 2 出现的次数. 比如给定范围[2, 22],数字 2 在数2中出现了 1次,在数 12 ...
- UIScrollView学习指南
--前言 笔者结合自己的工作经验,梳理关于UIScrollView究竟需要掌握哪些知识才算是一个好手.至于具体的实施方案,网上资源很多,自行了解吧. --正文 1.涉及到滚动和放大的功能,优先考虑使用 ...
- GSS系列题解——最大子段和系列
开坑啦! 2019 3/28 以前一直不知道怎么搞最大子段和,如今终于可以学习,其实真的很简单啊. 2019 3/29 树链剖分上最大子段和也OK啦 前置技能:线段树 题目大意:询问区间[l,r]的最 ...
- 【代码总结】GD库中图片缩印
bool imagecopyresampled ( resource $dst_image, resource $src_image, int $dst_x, int $dst_y, int $src ...
- List转为字符串
2019-12-12 20:34:16 方法1: 转换后的格式为:"('111','112','1113')" List list = new ArrayList<>( ...
- loadrunner 接口测试实战
直接上代码: web_reg_save_param("Name", //这个函数是为了获取服务器返回的值.我这个接口的返回值是这样子的 //将服务器返回的值放在Name里,Na ...
- Zenefits CodeSprint:Knight or Knave
题意是一堆人,从1到n编号,每个人i说一句话,x.x是正数表示i说x君是个好人,x是负数表示i说x君是坏人.问这个群体中最多能有多少好人,把这种情况用字典序的方式输出(好人用A表示,坏人用B表示),希 ...
- DuiLib中FlashDemo的例子经验杂粹1
转载:https://www.jianshu.com/p/3e958ae9e5ab 最近用duilib做个东西,经常卡壳 ,而且以前学的现在又忘.现在觉得应该好好做笔记,以前老是觉得博客是很郑重的东西 ...
- 【转】 android之如何在两个activity之间传递handler_利用broadcast广播机制
原文:http://blog.csdn.net/jason0539/article/details/18075293 这算是如何在两个activity之间传递handler的解决方案二了,解决方案一见 ...