暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

超详细的私有yum仓库搭建及定时同步阿里云yum源到本地教程

IT大咖说 2020-11-30
2446

概述

由于网络限制,部分服务器不给阿里源访问权限了,那就只能搭建一下集团的私有yum仓库了,仅供参考。


一、共享yum源

YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动下载RPM包并且安装,能够很好的解决依赖关系问题。yum源就相当是一个目录项,当我们使用yum机制安装软件时,若需要安装依赖软件,则yum机制就会根据在yum源中定义好的路径查找依赖软件,并将依赖软件安装好。

YUM的基本工作机制如下:

1)服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。

2)客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。

共享yum源就是在局域网内(或本地)搭建一个yum源,然后局域网内(或本地)所有的计算机在离线的环境下可以使用yum命令安装软件。


二、搭建私有yum仓库及定时同步阿里云yum到本地

1、本机配置阿里源(调用系统初始化脚本)

for i in etc/yum.repos.d/*.repo;do cp $i ${i%.repo}_bak;donerm -rf etc/yum.repos.d/*.repowget -P etc/yum.repos.d/ http://mirrors.aliyun.com/repo/Centos-7.repo >/dev/null 2>&1wget -O etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo >/dev/null 2>&1sed -i 's#keepcache=0#keepcache=1#g' etc/yum.conf     yum clean all && yum makecache yum repolist-- 安装依赖yum -y install   yum-utils   createrepo plugin-priorities

这里用蓝鲸平台调用系统初始化脚本输出日志如下:

2、安装nginx(手动执行脚本)

yum install -y nginx

3、同步公网镜像到本地私有仓库

用repoync 命令,Reposync用于将远程yum存储库同步到本地存储库,

-n:只下载最新的包

-p:下载包的路径:默认为当前目录

--建立私有yum存放目录mkdir -p data/centos/7/{base,extras,updates,epel}--下载rpm包##这里同步的源文件就是上一步配置的yum源#/data/centos/7/ 为生成的本地yum仓库文件即rpm包所在路径nohup reposync -np  data/centos/7   > opt/yum.log 2>&1&--建库cd data/centos/7/cd base && createrepo -p ./ && cd -cd extras && createrepo -p ./ && cd -cd updates && createrepo -p ./ && cd -cd epel && createrepo -p ./ && cd -

4、nginx配置

将yum仓库文件即rpm包所在路径设置为 nginx发布目录

# vim etc/nginx/nginx.conf (核心在server段)=======================================================================user root;  #得用root用户,要不会报 open() "/data/centos/7/base" failed (13: Permission denied)worker_processes auto;error_log var/log/nginx/error.log;pid run/nginx.pid;include /usr/share/nginx/modules/*.conf;events {    worker_connections 10240;}http {    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                      '$status $body_bytes_sent "$http_referer" '                      '"$http_user_agent" "$http_x_forwarded_for"';    access_log  var/log/nginx/access.log  main;    sendfile            on;    tcp_nopush          on;    tcp_nodelay         on;    keepalive_timeout   65;    types_hash_max_size 2048;    include             etc/nginx/mime.types;    default_type        application/octet-stream;    include /etc/nginx/conf.d/*.conf;        server {    listen       80;    server_name  mirrors.xxx.com;    root         /data/centos/7/;   #这里是yum源存放目录    location  {        autoindex on;        #打开目录浏览功能        autoindex_exact_size off;  # off:以可读的方式显示文件大小        autoindex_localtime on; # on、off:是否以服务器的文件时间作为显示的时间        charset utf-8,gbk; #展示中文文件名        index index.html;    }    error_page   500 502 503 504  50x.html;    location = 50x.html {        root   html;    }}}=======================================================================systemctl restart nginx--测试nginx访问地址:http://nginx_IP地址/

>>nginx访问:

5、设置定时同步阿里yum源

# vim home/scripts/yum_update.sh==============================================================================#!/bin/bashecho 'Updating Aliyum Source'DATETIME=`date +%F_%T`exec > var/log/aliyumrepo_$DATETIME.logreposync -np data/package/centos/7if [ $? -eq 0 ];then      createrepo --update data/centos/7/base/base      createrepo --update data/centos/7/base/extras      createrepo --update data/centos/7/base/updates      createrepo --update data/centos/7/base/epel    echo "SUCESS: $DATETIME aliyum_yum update successful" >>/var/log/aliyumrepo_$DATETIME.logelse    echo "ERROR: $DATETIME aliyum_yum update failed" >> var/log/aliyumrepo_$DATETIME.logfi==============================================================================-- 设定定时任务(crontab -e)30 1 * * 6 bin/bash home/scripts/yum_update.sh


6、客户端配置yum源

cat > etc/yum.repos.d/mirrors-dfwlg.repo <<EOF[base]name=CentOS-$releasever - Base - mirror.dfwlg.combaseurl=http://xxx88/base/path=/enabled=1gpgcheck=0 [updates]name=CentOS-$releasever - Updates - mirror.dfwlg.combaseurl=http://xxx.88/updates/path=/enabled=1gpgcheck=0 [extras]name=CentOS-$releasever - Extras - mirrors.dfwlg.combaseurl=http://xxx.88/extras/path=/enabled=1gpgcheck=0 [epel]name=CentOS-$releasever - epel - mirrors.dfwlg.combaseurl=http://xxx.88/epel/failovermethod=priority
enabled=1
gpgcheck=0
EOF

--刷新yum缓存
yum clean all && yum makecache
yum repolist








来源:

https://www.toutiao.com/i6899805370454180356/

“IT大咖说”欢迎广大技术人员投稿,投稿邮箱:aliang@itdks.com


来都来了,走啥走,留个言呗~




 IT大咖说  |  关于版权 

由“IT大咖说(ID:itdakashuo)”原创的文章,转载时请注明作者、出处及微信公众号。投稿、约稿、转载请加微信:ITDKS10(备注:投稿),茉莉小姐姐会及时与您联系!

感谢您对IT大咖说的热心支持!



相关推荐


推荐文章

  • 面试需要知道的 TCP 知识

  • 为啥需要RPC,而不是简单的HTTP?

  • 对业务系统的可扩展性设计思考

  • 不用写代码就能实现后端微服务开发 你信吗?

  • Springboot接口幂等性基于token实现方案

  • Docker实战:docker部署nginx项目详解


阿里云
文章转载自 IT大咖说,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

聚圣源起名字打分100分为男孩起名字属鼠的随机起名软件diyihuisuo给钻戒指起名字魔灵召唤官网栩起名男孩名字好听鼠年宝宝起啥名字夏季奥林匹克运动会被亲爹托付给少年仙君后号手就位演员表八字算命免费测八字起名家字男孩起名大全幻梦之晓明星的孩子起名字按摩店起名水果店起名高雅大气武里南联vs广州恒大商城起名字公司取名起名大全免费测试1976年9月9日杰哥不要啦王万宾简历五行属火的女孩起名字起名带木字旁的男孩适合美甲店起的名字流放之路下载酒店oa系统龙凤胎起名字大全女孩春天出生起名称淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化