作者 | Shusain
譯者 | geekpi
Yum 是 Centos/RHEL/Fedora 中最重要的工具之一。儘管在 Fedora 的最新版本中,它已經被 DNF 所取代,但這並不意味著它自生自滅了。它仍然被廣泛用於安裝 rpm 包,我們已經在前面的教程(在這裡閱讀[1])中用示例討論了 Yum。
在本教程中,我們將學習建立一個本地 Yum 倉庫,首先使用系統的 ISO 映象,然後建立一個線上 Yum 倉庫的映象。
用 DVD ISO 建立 Yum
我們在本教程中使用 Centos 7 dvd,同樣的過程也應該可以用在 RHEL 7 上。
首先在根檔案夾中建立一個名為 Yum 的目錄
$ mkdir /YUM
然後掛載 Centos 7 ISO:
$ mount -t iso9660 -o loop /home/dan/Centos-7-x86_x64-DVD.iso /mnt/iso/
接下來,從掛載的 ISO 中複製軟體包到 /YUM
中。當所有的軟體包都被覆制到系統中後,我們將安裝建立 Yum 所需的軟體包。開啟 /YUM
並安裝以下 RPM 包:
$ rpm -ivh deltarpm
$ rpm -ivh python-deltarpm
$ rpm -ivh createrepo
安裝完成後,我們將在 /etc/yum.repos.d
中建立一個名 為 local.repo
的檔案,其中包含所有的 Yum 資訊。
$ vi /etc/yum.repos.d/local.repo
LOCAL REPO]
Name=Local YUM
baseurl=file:///YUM
gpgcheck=0
enabled=1
儲存並退出檔案。接下來,我們將透過執行以下命令來建立倉庫資料。
$ createrepo -v /YUM
建立倉庫資料需要一些時間。一切完成後,請執行:
$ yum clean all
清理快取,然後執行:
$ yum repolist
檢查所有倉庫串列。你應該在串列中看到 local.repo
。
使用線上倉庫建立映象 Yum 倉庫
建立線上 Yum 的過程與使用 ISO 映象建立 Yum 類似,只是我們將從線上倉庫而不是 ISO 中獲取 rpm 軟體包。
首先,我們需要找到一個線上倉庫來獲取最新的軟體包。建議你找一個離你位置最近的線上 Yum 倉庫,以最佳化下載速度。我們將使用下麵的映象,你可以從 CENTOS 映象串列[2]中選擇一個離你最近的映象。
選擇映象之後,我們將使用 rsync
將該映象與我們的系統同步,但在此之前,請確保你伺服器上有足夠的空間。
$ rsync -avz rsync://mirror.fibergrid.in/centos/7.2/os/x86_64/Packages/s/ /YUM
同步將需要相當長一段時間(也許一個小時),這取決於你網際網路的速度。同步完成後,我們將更新我們的倉庫資料。
$ createrepo - v /YUM
我們的 Yum 已經可以使用了。我們可以建立一個 cron 任務來根據你的需求每天或每週定時地自動更新倉庫資料。
要建立一個用於同步倉庫的 cron 任務,請執行:
$ crontab -e
並新增以下行
30 12 * * * rsync -avz http://mirror.centos.org/centos/7/os/x86_64/Packages/ /YUM
這會在每晚 12:30 同步 Yum。還請記住在 /etc/yum.repos.d
中建立倉庫配置檔案,就像我們上面所做的一樣。
就是這樣,你現在使用你自己的 Yum 倉庫了。如果你喜歡它,請分享這篇文章,併在下麵的評論欄留下你的意見/疑問。
via: http://linuxtechlab.com/creating-yum-repository-iso-online-repo/
作者:Shusain[4] 譯者:geekpi 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出