前言:
如今姐妹们对“centosessentialstechotopia”大概比较关怀,朋友们都需要剖析一些“centosessentialstechotopia”的相关内容。那么小编同时在网摘上收集了一些关于“centosessentialstechotopia””的相关内容,希望我们能喜欢,同学们一起来了解一下吧!使用本地更新源可以大大减少系统部署中安装更新软件的时间。
平台使用CENTOS7+apahce2.4+RSYNC(本文脚本适合centos6|centos7)
文中本地源服务器ip:192.168.239.241
Centos公开的mirrors地址
本文使用了“中国科学大学”的rsync源,这个源没在上面地址公开,提供的带宽是250M以上,我在家里200M的光纤可以满速进行同步。
服务器状态页
mirrors index
系统我使用了最小安装
1、安装rsync、httpd
# yum install -y rsync httpd bash-completion psmisc
精简安装没有按tab可以自动补全命令和killall命令
bash-completion的作用是按tab可以自动补全命令
psmisc killall命令安装包
2、编定同步脚本
我个人喜欢直接放在root用户目录下
#vi /root/bin/mirrors.sh
------------------------------------------------------------------------------------
#!/bin/bash
###结束现有rsync进程
killall `ps aux|grep rsync|awk -F" " '{print $11}'`
echo 结束时间 `date +%F_%H%M%S` >> /tmp/rsync_process.log
echo '###################结 束 时 间 ######################' >> /tmp/rsync_process.log
#
#URL="rsync://mirrors.tuna.tsinghua.edu.cn"
URL="rsync://rsync.mirrors.ustc.edu.cn/repo"
rsync -avzPH --delete $URL/centos/ /data/centos/ >> /tmp/rsync_centos.log
rsync -avzPH --delete $URL/epel/ /data/epel >> /tmp/rsync_epel.log
rsync -avzPH --delete $URL/ceph/ /data/ceph >> /tmp/rsync_ceph.log
echo 完成时间 `date +%F_%H%M%S` >> /tmp/rsync_process.log
echo '###################完 成 时 间 ######################' >> /tmp/rsync_process.log
-----------------------------------------------------------------------------------------
执行同步脚本
sh /root/bin/mirrors.sh
我用了两天才完成同步。
3.配置脚本自动执行
#crontab -euroot
添加任务
查看己添加任务
[root@mirrors html]# crontab -luroot
------------------------------------------------
#* * * * * command
#分 时 日 月 周 命令
#第1列表示分钟1~59 每分钟用*或者 */1表示
#第2列表示小时1~23(0表示0点)
#第3列表示日期1~31
#第4列表示月份1~12
#第5列标识号星期0~6(0表示星期天)
#第6列要运行的命令
#每30分钟执行一次同步
*/30 * * * * sh /root/bin/mirrors.sh
-------------------------------------------------------
4、配置apache服务
------------------------------------------------------
yum install -y httpd \
&& systemctl enable httpd \
&& ln -sf /data/* /var/www/html/ \
&& cd /etc/httpd/conf.d/ \
&& mv welcome.conf welcome.conf.bak \
&& systemctl restart httpd
------------------------------------------------------
5、关闭防火墙和selinux
-----------------------------------------------------------------------------------
#OSVERSION
OSVERSION=`cat /etc/redhat-release |awk -F "release " '{print $2}'|awk -F "." '{print $1}'`
echo $OSVERSION
#selinux
echo -n "正在关闭SELinux……"
setenforce 0 > /dev/null 2>&1
sed -i '/^SELINUX=/s/=.*/=disabled/' /etc/selinux/config
if [ $? -eq 0 ];then
echo -n "SELinux初始化完毕!"
fi
#iptables
if [ $OSVERSION -eq 6 ];then
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
service iptables save
fi
if [ $OSVERSION -eq 7 ];then
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
fi
----------------------------------------------------------------------------------------------
ie上打开
客户端设置脚本(保存在服务器上):
[root@mirrors html]# cat /var/www/html/m.sh
-------------------------------------------------------------------------------------
cat /etc/hosts|grep 192.168.239.241
if [ $? == 1 ]; then
echo 192.168.239.241 mirror.centos.org >> /etc/hosts
echo 192.168.239.241 mirrors.fedoraproject.org >> /etc/hosts
fi
yum clean all && yum makecache
#安装epel
yum install -y epel-release
sed -e "s/^metalink=/#metalink=/g" \
-e "s/^mirrorlist=http/#mirrorlist=http/g" \
-e "s@^#baseurl=@baseurl=@g" \
-i /etc/yum.repos.d/*.repo
yum clean all && rm -rf /var/cache/yum/* && yum makecache
-----------------------------------------------------------------------
客户端配置:
curl 192.168.239.241/m.sh|sh -
---------------------
版权声明:本文为CSDN博主「运维自动化&云计算」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接: