YUM仓库搭建
大家可以先看RPM快速打包這篇文章。
導言:
????YUM主要用于自動安裝、升級rpm軟件包,它能自動查找并解決rpm包之間的依賴關系。要成功的使用YUM工具安裝更新軟件或系統,就需要有一個包含各種rpm軟件包的repository(軟件倉庫),這個軟件倉庫我們習慣稱為yum源。網絡上有大量的yum源,但由于受到網絡環境的限制,導致軟件安裝耗時過長甚至失敗。特別是當有大量服務器大量軟件包需要安裝時,緩慢的進度條令人難以忍受。因此我們在優化系統時,都會更換國內的源。
????相比較而言,本地YUM源服務器最大優點是局域網的快速網絡連接和穩定性。有了局域網中的YUM源服務器,即便在Internet連接中斷的情況下,也不會影響其他YUM客戶端的軟件安裝和升級。
1. 創建yum倉庫目錄
mkdir?-p?/application/yum/centos6.6/x86_64/???? cd?/application/yum/centos6.6/x86_64/ rz??#?上傳rpm包到此目錄,此目錄下面還可以包括文件夾2. 安裝createrepo軟件
yum?-y?install?createrepo3. 初始化repodata索引文件
createrepo?-pdo?/application/yum/centos6.6/x86_64/?/application/yum/centos6.6/x86_64/4. 提供yum服務
#?可以用Apache或nginx提供web服務,但用Python的http模塊更簡單,適用于內網環境 cd?/application/yum/centos6.6/x86_64/ python?-m?SimpleHTTPServer?80?&>/dev/null?&??? 可以通過瀏覽器輸入本機IP查看。5. 添加新的rpm包
#?只下載軟件不安裝 yumdownloader?pcre-devel?openssl-devel? createrepo?--update?/application/yum/centos6.6/x86_64/??? #?每加入一個rpm包就要更新一下。6. 客戶端配置
cd?/etc/yum.repos.d [root@B?yum.repos.d]#?vi?oldboy.repo? [oldboy] name=Server baseurl=http://10.0.0.5 enable=1 gpgcheck=0 [root@YUM?~]#?yum?--enablerepo=oldboy?--disablerepo=base,extras,updates,epel?list? #?指定使用oldboy庫?????上面是臨時使用內網yum源,想永久并簡單使用yum -y install lrzsz命令,就需要修改配置文件將默認的repo文件關閉。
[root@oldboy?~]#?cd?/etc/yum.repos.d/ [root@oldboy?yum.repos.d]#?vim?CentOS-Base.repo #?在每一個啟動的源加上 #?enabled=0???#改為1就啟用,沒有此參數也是啟用。 [base] ………… enabled=0[updates] ………… enabled=0[extras] ………… enabled=0# 還有其他開啟的倉庫就使用這個辦法關閉。
>>>>>>>>>>>>>>>>>>>>>>
????上面只是將自己制作的rpm包,放入yum源。但還有一種企業需求,說的更具體一點,平時學生上課yum安裝軟件都是從公網下載的,占用帶寬,因此在學校里搭建一個內網yum服務器,但又考慮到學生回家也要使用yum安裝軟件,如果yum軟件的數據庫文件repodata不一樣,就會有問題。因此我想到的解決方法就是直接使用公網yum源的repodata。
鏡像同步公網yum源
上游yum源必須要支持rsync協議,否則不能使用rsync進行同步。
http://mirrors.ustc.edu.cn/status/
CentOS官方標準源:rsync://mirrors.ustc.edu.cn/centos/
epel源:rsync://mirrors.ustc.edu.cn/epel/
同步命令:
學生使用內網yum源方法
結果展示
[root@KVM?data]#?du?-sh?yum_data???? 21G?????yum_data [root@KVM?data]#?tree?-L?3?yum_data/ yum_data/ ├──?centos │???├──?6 │???│???├──?extras │???│???├──?os │???│???└──?updates │???└──?RPM-GPG-KEY-CentOS-6 ├──?epel │???└──?6 │???????└──?x86_64=================================================================
老男孩Linux運維實戰培訓中心
高級運維: ?http://oldboy.blog.51cto.com/2561410/1689099
架構師: ? ?http://oldboy.blog.51cto.com/2561410/1334659
Python開發:http://oldboy.blog.51cto.com/2561410/1123127
MySQL專業DBA:http://oldboy.blog.51cto.com/2561410/1354782
======公開交流群==========================
架構QQ群390642196
運維QQ群385168604
Python開發QQ群29215534
==========================================
報名咨詢:
QQ: 41117397 70271111 41117483 80042789
電話:13552612571 18911718229 18600338340
網站地址:
http://www.etiantian.org
blog:http://oldboy.blog.51cto.com
轉載于:https://blog.51cto.com/life2death/1708417
總結
- 上一篇: c语言sqrt函数无作用,如何在不使用C
- 下一篇: bash: mail: command