CentOS 6.x下使用rsync+httpd搭建配置本地yum源库

一、环境说明

yum库,是readhat/CentOS 系统软件仓库,可以通过http ftp协议传输存储在网络上的仓库;yum 主要功能是更方便的添加/删除/更新RPM 包,自动解决软件包依赖性问题,便于管理大量系统的更新维护软件包问题。yum 库可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm 包时遇到的依赖性问题,保持与RPM 数据库的一致性。

系统采用CentOS6.8_x64 ,rsync httpd,同步CentOS6.x软件包到本地,以及添加常用rpm包到本地yum仓库;测试机器内网ip为10.168.118.93

二、安装rsync和httpd

1、安装软件

#yum install rsync  httpd -y

暂时不做配置,rsync用来从外网yum仓库同步用的,httpd用来发本地yum仓库

2、配置httpd

修改httpd配置如下(大约在295行)

DocumentRoot “/data1/www/html/”    #这个目录即下面脚本中同步外网yum仓库到本地的位置

3、启动httpd服务

#service httpd start

#chkconfig –httpd on

三、同步外网yum脚本

1、同步脚本

#cat rsync_yum.sh

#!/bin/bash
YUM_SITE=
"rsync://mirrors.kernel.org/centos/"
#存放路径,我这里用的是独立分区的目录
LOCAL_PATH=
"/data1/www/html/centos/"
#需要同步哪些目录
LOCAL_VER=
'./'
BW_limit=2048
LOCK_FILE=
"/var/log/yum_server.pid"
RSYNC_PATH=
""
# check update yum server pid
MY_PID=$$
if 
[ -f $LOCK_FILE ]; 
then
get_pid=`
/bin/cat 
$LOCK_FILE`
get_system_pid=`
/bin/ps 
-ef|
grep 
-
v 
grep
|
grep 
$get_pid|
wc 
-l`
if 
[ $get_system_pid -
eq 
0 ] ; 
then
echo 
$MY_PID>$LOCK_FILE
else
echo 
"Have update yum server now!"
exit 
1
fi
else
echo 
$MY_PID>$LOCK_FILE
fi
# check rsync tool
if 
[ -z $RSYNC_PATH ]; 
then
RSYNC_PATH=`
/usr/bin/whereis 
rsync
|
awk 
' '
'{print $2}'
`
if 
[ -z $RSYNC_PATH ]; 
then
echo 
'Not find rsync tool.'
echo 
'use comm: yum install -y rsync'
fi
fi
verlist=6           
#指定要同步的yum源,6即CentOS6,也可以同时同步多个版本,以空格隔开
# sync yum source,only 6
for 
VER 
in 
$verlist;
do
   
$RSYNC_PATH -avzH --delete --bwlimit=$BW_limit --exclude-from=
/data1/workshell/exclude
.txt $YUM_SITE/$VER/ $LOCAL_PATH/$VER/
done
# clean lock file
`
/bin/rm 
-f $LOCK_FILE`
echo 
"rsync end $(date +%Y-%m-%d_%k:%M:%S)" 
>> 
/data1/www/html/centos/centos_rsync_is_end
.txt
exit 
1

2、添加脚本到计划任务

添加脚本到crontabl计划中每周一凌晨3点执行同步

1 3 * * 1 /data1/workshell/rsync_yum.sh 2> /dev/null

3、手动执行测试

同步完后可以看到目录结构如下:

4、客户端测试

移除系统自带的repo仓库,创建local.repo配置内容如下:

#cd /etc/yum.repos.d/
#mkdir bak
#mv *.repo ./bak

#cat local.repo

[base]
name=CentOS - base
baseurl=http:
//10
.168.118.93
/centos/
$releasever
/os/
$basearch/
gpgcheck=1
gpgkey=http:
//10
.168.118.93
/centos/RPM-GPG-KEY-CentOS-6
[updates]
name=CentOS - updates
baseurl=http:
//10
.168.118.93
/centos/
$releasever
/updates/
$basearch/
gpgcheck=1
gpgkey=http:
//10
.168.118.93
/centos/RPM-GPG-KEY-CentOS-6
[extras]
name=CentOS - extras
baseurl=http:
//10
.168.118.93
/centos/
$releasever
/extras/
$basearch/
gpgcheck=1
gpgkey=http:
//10
.168.118.93
/centos/RPM-GPG-KEY-CentOS-6

#yum clean all

#yum makecache 如图:

 

#测试安装lftp如图:

到此本地yum仓库配置完成!

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/207912.html<

(0)
运维的头像运维
上一篇2025-04-08 18:32
下一篇 2025-04-08 18:33

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注