日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

测试配置yum仓库的http镜像

發布時間:2023/11/29 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 测试配置yum仓库的http镜像 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

測試配置yum倉庫的http鏡像


一、基礎環境 1、在tvm-base的基礎上,復制一個鏡像為tvm-yum來測試。 2、網絡: eth0:host-only(用于虛擬內網,手動固定IP,這樣從宿主機可以直接連接到這個vm) eth1:NAT(用于上外網,動態IP) [root@tvm-yum?~]#?cd?/etc/sysconfig/network-scripts/ [root@tvm-yum?network-scripts]#?cat?ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=192.168.56.254 PREFIX=24 GATEWAY=192.168.56.1[root@tvm-yum?network-scripts]#?cat?ifcfg-eth1 DEVICE=eth1 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp[root@tvm-yum?~]#?ip?a?s?dev?eth0?|grep?globalinet?192.168.56.254/24?brd?192.168.56.255?scope?global?eth0 [root@tvm-yum?~]#?ip?a?s?dev?eth1?|grep?global?inet?10.0.3.15/24?brd?10.0.3.255?scope?global?eth1 [root@tvm-yum?~]#?route?-n Kernel?IP?routing?table Destination?????Gateway?????????Genmask?????????Flags?Metric?Ref????Use?Iface 10.0.3.0????????0.0.0.0?????????255.255.255.0???U?????0??????0????????0?eth1 192.168.56.0????0.0.0.0?????????255.255.255.0???U?????0??????0????????0?eth0 169.254.0.0?????0.0.0.0?????????255.255.0.0?????U?????1002???0????????0?eth0 169.254.0.0?????0.0.0.0?????????255.255.0.0?????U?????1003???0????????0?eth1 0.0.0.0?????????10.0.3.2????????0.0.0.0?????????UG????0??????0????????0?eth13、配置這臺服務器為ntp和dns服務器,涉及: 1)ntp服務(防火墻放行:udp?123) 使用腳本配置:https://github.com/opera443399/ops/blob/master/bin/linux/init_datetime.sh [root@tvm-yum?~]#?sh?init_datetime.sh?s2)dnsmasq服務?(防火墻放行:udp?53) [root@tvm-yum?~]#?yum?-y?install?dnsmasq 將涉及域名寫入hosts文件: [root@tvm-yum?~]#?cat?/etc/hosts?|grep?-v?localhost 127.0.0.1?tvm-yum 192.168.56.254?mirrors.office.test 192.168.56.254?ntp.office.test 192.158.56.252?cobbler.office.test啟動服務: [root@tvm-yum?~]#?service?dnsmasq?start 增加到開機啟動: [root@tvm-yum?bin]#?chkconfig?dnsmasq?on二、配置web服務 1、防火墻放行80端口 2、配置httpd 若沒有禁用selinux,則應當這樣配置: [root@tvm-yum?~]#?chcon?-Rv?--type=httpd_sys_content_t?/data/yum/repo/ 否則,直接禁用selinux[root@tvm-yum?~]#?yum?-y?install?httpd 調整httpd的配置: [root@tvm-yum?~]#?cat?/etc/httpd/conf/httpd.conf?|grep?ServerName?|grep?^[^#] ServerName?127.0.0.1虛擬主機: [root@tvm-yum?~]#?mv?/etc/httpd/conf.d/welcome.conf?/tmp/ [root@tvm-yum?~]#?cat?/etc/httpd/conf.d/mirrors.office.test.conf? <VirtualHost?*:80>ServerAdmin?pc@office.testServerName?mirrors.office.testDocumentRoot?/data/yum/repoErrorLog?logs/mirrors.office.test-error_logCustomLog?logs/mirrors.office.test-access_log?common<Directory?/data/yum/repo>options?Indexes?FollowSymLinksAllowOverride?NoneOrder?allow,denyAllow?from?all</Directory> </VirtualHost>3、啟動httpd服務 [root@tvm-yum?~]#?chown?-R?apache:apache?/data/yum/repo [root@tvm-yum?~]#?service?httpd?start接下來需要: 1)配置一個local?yum?鏡像,并定時從公網的mirrors同步數據。 注1:不需要i386目錄,此處只用x86_64的版本。 注2:不需要isos目錄,里面存放的是iso文件。 注3:不需要ppc64目錄,里面是powerpc架構的。 2)提供local-office.repo文件,供客戶端用。三、配置目錄和腳本,制作本地的yum鏡像 [root@tvm-yum?~]#?mkdir?-p?/data/yum/repo/{centos,epel}/6?/data/download/?/data/ops/bin/ 1、從iso文件拷貝內容。本機目前只有CentOS-6.5的版本,當然,應該用6.6的更佳。 2種方式: 1)上傳iso文件到/data/download/2)也可以直接掛載光碟[root@tvm-yum?~]#?ls?/data/download/ CentOS-6.5-x86_64-bin-DVD1.iso??CentOS-6.5-x86_64-bin-DVD2.iso[root@tvm-yum?~]#?mkdir?-p?/data/yum/repo/centos/6/os/x86_642、同步iso文件中的內容: [root@tvm-yum?~]#?mount?-ro?loop?/data/download/CentOS-6.5-x86_64-bin-DVD1.iso?/mnt [root@tvm-yum?~]#?rsync?-avHPS?/mnt/?/data/yum/repo/centos/6/os/x86_64/ [root@tvm-yum?~]#?umount?/mnt [root@tvm-yum?~]#?mount?-ro?loop?/data/download/CentOS-6.5-x86_64-bin-DVD2.iso?/mnt [root@tvm-yum?~]#?rsync?-avHPS?/mnt/?/data/yum/repo/centos/6/os/x86_64/ [root@tvm-yum?~]#?umount?/mnt3、測試httpd服務的訪問 訪問: http://mirrors.office.test/centos抓包信息: [root@tvm-yum?~]#?curl?-o?/dev/null?-v?-I?http://mirrors.office.test/centos/ *?About?to?connect()?to?mirrors.office.test?port?80?(#0) *???Trying?192.168.56.254...?connected *?Connected?to?mirrors.office.test?(192.168.56.254)?port?80?(#0) >?HEAD?/centos/?HTTP/1.1 >?User-Agent:?curl/7.19.7?(x86_64-redhat-linux-gnu)?libcurl/7.19.7?NSS/3.14.0.0?zlib/1.2.3?libidn/1.18?libssh2/1.4.2 >?Host:?mirrors.office.test >?Accept:?*/* >? <?HTTP/1.1?200?OK <?Date:?Tue,?14?Jul?2015?02:32:14?GMT <?Server:?Apache/2.2.15?(CentOS) <?Connection:?close <?Content-Type:?text/html;charset=UTF-8 <?%?Total????%?Received?%?Xferd??Average?Speed???Time????Time?????Time??CurrentDload??Upload???Total???Spent????Left??Speed0?????0????0?????0????0?????0??????0??????0?--:--:--?--:--:--?--:--:--?????0*?Closing?connection?#0chrome抓包信息: Remote?Address:192.168.56.254:80 Request?URL:http://mirrors.office.test/centos/ Request?Method:GET Status?Code:200?OK Remote?Address:192.168.56.254:80 Request?URL:http://mirrors.office.test/centos/ Request?Method:GET Status?Code:200?OK4、選一個mirrors,通過腳本從mirrors同步。 這里我選擇了一個支持rsync協議的鏡像: http://mirrors.ustc.edu.cn/centos/可以在搜索引擎搜索“rsync?epel??6/x86_64/”這類關鍵詞來找mirros,當然這里也有一個centos的列表: http://www.centos.org/download/mirrors/配置腳本同步,并放到crontab中定時執行 ---------------------------------------- [root@tvm-yum?bin]#?cat?repo_update.sh? #!/bin/bash # #?2015/7/17f_log='/tmp/repo_update_run.log'if?[?-f?/var/lock/subsys/repo_update?];?thenecho?"[`date`]?同步任務已經在執行中。"?>>${f_log}exit?0 fid_centos='/data/yum/repo/centos/6' d_epel='/data/yum/repo/epel/6' -d?${d_centos}?||mkdir?-p?${d_centos} -d?${d_epel}?||mkdir?-p?${d_epel}touch?/var/lock/subsys/repo_update###?centos?### echo?"[`date`]?開始同步centos"??>>${f_log}? rsync?-avzP?--delete?--delete-excluded?--exclude?"isos"?--exclude?"i386"?rsync://mirrors.ustc.edu.cn/centos/6/?/data/yum/repo/centos/6/?2>>${f_log} echo?"[`date`]?操作結束。"??>>${f_log}? ###?epel?### echo?"[`date`]?開始同步epel"??>>${f_log}? rsync?-avzP?--delete??--delete-excluded?--exclude?"i386"?--exclude?"ppc64"?rsync://mirrors.ustc.edu.cn/epel/6/?/data/yum/repo/epel/6/?2>>${f_log} echo?"[`date`]?操作結束。"??>>${f_log}?rm?/var/lock/subsys/repo_update echo?"[`date`]?完成本次任務。"??>>${f_log}?chown?-R?apache:apache?/data/yum/repo----------------------------------------放到crontab中 [root@tvm-yum?~]#?cat?<<_NTP?>>/var/spool/cron/root #?repo?update 0?4?*?*?*?/bin/bash?/data/ops/bin/repo_update.sh?>/tmp/repo.log?2>&1?& _NTP先手動執行一次: [root@tvm-yum?~]#?/bin/bash?/data/ops/bin/repo_update.sh?>/tmp/repo.log?2>&1?&5、提供一個office源,供自定義的安裝,包含企業定制rpm包,新版本的開源軟件的rpm包 [root@tvm-yum?~]#?yum?install?createrepo [root@tvm-yum?~]#?mkdir?-p?/data/yum/repo/office/centos/6/x86_64 [root@tvm-yum?~]#?cd?/data/yum/repo/office/6/x86_64 [root@tvm-yum?x86_64]#?wget?還可以一次下載多個rpm包: [root@tvm-yum?~]#?wget?--execute?robots=off?-nc?-nd?-r?-l1?-A'*.rpm'?http://download.gluster.org/pub/gluster/glusterfs/3.6/LATEST/CentOS/epel-6/x86_64/?使用createrepo工具: [root@tvm-yum?x86_64]#?createrepo?. [root@tvm-yum?~]#?cd?- [root@tvm-yum?~]#?chown?-R?apache:apache?/data/yum/repo??????????????6、提供local-office.repo文件 現有的目錄: [root@tvm-yum?~]#?tree?/data/yum/repo/?-L?3 /data/yum/repo/ ├──?centos │???├──?6 │???│???├──?centosplus │???│???├──?cloud │???│???├──?contrib │???│???├──?cr │???│???├──?extras │???│???├──?fasttrack │???│???├──?os │???│???├──?SCL │???│???├──?updates │???│???└──?xen4 │???└──?RPM-GPG-KEY-CentOS-6 ├──?epel │???├──?6 │???│???├──?SRPMS │???│???└──?x86_64 │???└──?RPM-GPG-KEY-EPEL-6 ├──?local-office.repo └──?office└──?6└──?x86_64制作文件:local-office.repo ----------------------------------- [root@tvm-yum?~]#?cat?/data/yum/repo/local-office.repo? # #?local-office.repo #?2015/8/6 #?包含:Centos-Base,?epel,?office源。 ##?------------------?包含基礎的os里面的rpm包 [base] name=CentOS-$releasever?-?Base baseurl=http://mirrors.office.test/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.office.test/centos/RPM-GPG-KEY-CentOS-$releasever#released?updates?-?包含可以更新的包 [updates] name=CentOS-$releasever?-?Updates baseurl=http://mirrors.office.test/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.office.test/centos/RPM-GPG-KEY-CentOS-$releasever#additional?packages?that?may?be?useful?-?包含額外的包 [extras] name=CentOS-$releasever?-?Extras baseurl=http://mirrors.office.test/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.office.test/centos/RPM-GPG-KEY-CentOS-$releasever#additional?packages?that?extend?functionality?of?existing?packages?-?包含功能擴展的包 [centosplus] name=CentOS-$releasever?-?Plus baseurl=http://mirrors.office.test/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirrors.office.test/centos/RPM-GPG-KEY-CentOS-$releasever#contrib?-?packages?by?Centos?Users?-?包含用戶貢獻的包 [contrib] name=CentOS-$releasever?-?Contrib baseurl=http://mirrors.office.test/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirrors.office.test/centos/RPM-GPG-KEY-CentOS-$releasever#?------------------?epel?-?包含額外的包 [epel] name=Extra?Packages?for?Enterprise?Linux?6?-?$basearch baseurl=http://mirrors.office.test/epel/6/$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=http://mirrors.office.test/epel/RPM-GPG-KEY-EPEL-$releasever[epel-debuginfo] name=Extra?Packages?for?Enterprise?Linux?6?-?$basearch?-?Debug baseurl=http://mirrors.office.test/epel/6/$basearch/debug failovermethod=priority enabled=0 gpgkey=http://mirrors.office.test/epel/RPM-GPG-KEY-EPEL-$releasever gpgcheck=1[epel-source] name=Extra?Packages?for?Enterprise?Linux?6?-?$basearch?-?Source baseurl=http://mirrors.office.test/epel/6/SRPMS failovermethod=priority enabled=0 gpgkey=http://mirrors.office.test/epel/RPM-GPG-KEY-EPEL-$releasever gpgcheck=1#?------------------?office?-?包含企業定制rpm包,新版本的開源軟件的rpm包 [office] name=enterprise?office?repo baseurl=http://mirrors.office.test/office/$releasever/$basearch/ gpgcheck=0 enabled=1-----------------------------------注意: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6?這個key一開始是不存在的,這里由http服務來提供,在repo文件中指向到對應的URL: gpgkey=http://mirrors.office.test/epel/RPM-GPG-KEY-EPEL-$releaseverGPG-KEY在這里: [root@tvm-yum?~]#?cp?/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6?/data/yum/repo/centos/ [root@tvm-yum?~]#?cp?/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6?/data/yum/repo/epel/ 默認安裝centos后已經有了RPM-GPG-KEY-CentOS-6,RPM-GPG-KEY-EPEL-6可以通過安裝公網的epel源來獲取: #?rpm?-Uvh?http://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm當然了,我們應該移除現有的repo文件,僅使用上面提供的自己的repo配置即可: 【在本地】 [root@tvm-yum?~]#?mv?/etc/yum.repos.d/*.repo?/tmp/ [root@tvm-yum?~]#?cp?/data/yum/repo/local-office.repo?/etc/yum.repos.d/local-office.repo 【在客戶端】 [root@tvm-rpm?~]#?mv?/etc/yum.repos.d/*.repo?/tmp/?\ &&?wget?http://mirrors.office.test/local-office.repo?-O?/etc/yum.repos.d/local-office.repo?\ &&?yum?clean?all?\ &&?yum?makecache四、等mirros同步完成后,開始測試 1、本機測試 先清除緩存: [root@tvm-yum?~]#?yum?clean?all Loaded?plugins:?fastestmirror,?security Cleaning?repos:?base?extras?updates Cleaning?up?Everything Cleaning?up?list?of?fastest?mirrors試著更新下系統: [root@tvm-yum?~]#?yum?update (略) (369/369):?yum-utils-1.1.30-30.el6.noarch.rpm?????????????????????????????????|?110?kB?????00:00????? ----------------------------------------------------------------------------------------------------- Total?????????????????????????????????????????????????????????????????16?MB/s?|?430?MB?????00:26????? Running?rpm_check_debug Running?Transaction?Test Transaction?Test?Succeeded Running?Transaction (略)yum.noarch?0:3.2.29-60.el6.centos??????????????????????????????????????????????????????????????????yum-plugin-fastestmirror.noarch?0:1.1.30-30.el6????????????????????????????????????????????????????yum-plugin-security.noarch?0:1.1.30-30.el6?????????????????????????????????????????????????????????yum-utils.noarch?0:1.1.30-30.el6???????????????????????????????????????????????????????????????????Replaced:libsss_autofs.x86_64?0:1.9.2-129.el6???????????????????????????????????????????????????????????????Complete! [root@tvm-yum?~]#? [root@tvm-yum?~]#?cat?/etc/issue CentOS?release?6.6?(Final) Kernel?\r?on?an?\m2、瞧,已經升級到6.6的版本,建議reboot一下先。 reboot前,先將httpd服務加入開機啟動。 [root@tvm-yum?centos]#?chkconfig?httpd?on [root@tvm-yum?centos]#?chkconfig?--list?|grep?httpd httpd???????????0:off???1:off???2:on????3:on????4:on????5:on????6:off用update升級系統后,在/etc/yum.repos.d/里面更新了CentOS相關的repo文件,因此在重啟后可以考慮移除 [root@tvm-yum?~]#?mv?-f?CentOS-*?/etc/yum.repos.d/?/tmp/五、客戶端使用local-office.repo文件 [root@tvm-rpm?~]#?yum?update 符合預期。 [root@tvm-rpm?~]#?yum?install?nginx [root@tvm-test?conf.d]#?nginx?-v nginx?version:?nginx/1.8.0 符合預期。ZYXW、參考 1、Creating?a?local?repo?(Mirror)?with?CentOS?6.2+ http://darktraining.com/93/2、Creating?Local?Mirrors?for?Updates?or?Installs https://wiki.centos.org/HowTos/CreateLocalMirror3、List?of?CentOS?Mirrors http://www.centos.org/download/mirrors/4、How?To?Set?Up?and?Use?Yum?Repositories?on?a?CentOS?6?VPS https://www.digitalocean.com/community/tutorials/how-to-set-up-and-use-yum-repositories-on-a-centos-6-vps




轉載于:https://blog.51cto.com/nosmoking/1674831

總結

以上是生活随笔為你收集整理的测试配置yum仓库的http镜像的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。