如何手工搭建本地YUM倉庫

来源:http://www.cnblogs.com/henryt/archive/2016/09/24/5903091.html
-Advertisement-
Play Games

瞭解: Yum:Yellowdog Updater,Modified的簡稱,起初由yellow dog發行版的開發者Terra Soft研發,用Python編寫,後經杜克大學的Linux@Duke開發團隊進行改進,遂有此名。Yum是一個shell前端軟體包管理器,基於RPM包管理,能夠從指定的伺服器 ...


瞭解:

Yum:Yellowdog Updater,Modified的簡稱,起初由yellow dog發行版的開發者Terra Soft研發,用Python編寫,後經杜克大學的Linux@Duke開發團隊進行改進,遂有此名。Yum是一個shell前端軟體包管理器,基於RPM包管理,能夠從指定的伺服器自動下載RPM包並安裝,可以自動處理依賴關係,並且一次安裝所有依賴的軟體包。

實施:

1.掛載:掛載光碟到mnt目錄下

[root@henry ~]# mount /dev/cdrom /mnt

mount: block device /dev/sr0 is write-protected, mounting read-only

[root@henry ~]# ls /mnt

2.創建新文件夾:本地搭建yum倉庫需要把光碟Packages包拷貝到本地,在根目錄下創建文件夾henry_repo

[root@henry ~]# cd /

[root@henry /]# mkdir henry_repo

3.拷貝:並將Packages包拷貝到新建文件夾中,註意實際路徑

[root@henry /]# cd /mnt

[root@henry mnt]# cp -rv Packages /henry_repo/

4.安裝必要工具包:包拷貝完成之後需要構建yum使用的資料庫,以xml文件形式存在,該資料庫會對所有包進行分類建立索引,方便yum程式快速搜索安裝包和檢查包之間的依賴關係。但創建資料庫要用到一個工具包createrepo-0.9.9-18.el6.noarch.rpm,預設是沒有的,先要對它進行安裝

[root@henry Packages]# rpm -ivh createrepo-0.9.9-18.el6.noarch.rpm

這時候程式提示,此包有一個python-deltarpm的依賴關係包,加上去再次運行

[root@henry Packages]# rpm -ivh createrepo-0.9.9-18.el6.noarch.rpm python-deltarpm-3.5-0.5.20090913git.el6.i686.rpm

此時程式再次提示,python-deltarpm這個包也存在一個deltarpm = 3.5-0.5.20090913git.el6的依賴關係包,最後,加上去三個包一起運行,並安裝成功。

[root@henry Packages]# rpm -ivh createrepo-0.9.9-18.el6.noarch.rpm python-deltarpm-3.5-0.5.20090913git.el6.i686.rpm deltarpm-3.5-0.5.20090913git.el6.i686.rpm

5.創建yum資料庫:安裝完成後,就可使用createrepo進行創建yum資料庫。創建之前註意在原光碟裡面repodata文件夾下,這個末尾為comps.xml的分類文件(系統版本不一樣,實際情況也不太一樣,本機顯示的是3f開頭comps.xml結尾)也要一併拷貝過來並重建。

[root@henry Packages]# createrepo -g /mnt/repodata/3fe289964708818d65e318fae9784208fdb73f21560f21b524582a87c170a677-c6-i386-comps.xml .

運行完成後,在Packages文件夾裡面就會生成一個repodata的文件夾,裡面存放著yum工作所需要的索引倉庫,保存了所有的軟體包索引信息。當使用yum進行安裝時,會直接讀取這些索引信息,而不必去逐一掃描軟體包。

6.創建yum配置文件:單獨創建自己的配置文件。進入yum.repos.d文件夾,創建henry.repo文件併進行編輯。文件名隨意起,但需要.repo結尾。

[root@henry repodata]# cd /etc/yum.repos.d/

[root@henry yum.repos.d]# ls

CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo  CentOS-Vault.repo

[root@henry yum.repos.d]# vi henry.repo

以上是文件編輯內容

第一行:yum倉庫名字,任意。

第二行:詳細名字,任意。

第三行:倉庫路徑。

baseurl為關鍵字

file:// 告訴yum為本地倉庫

/henry_repo/Packages/ 為絕對路徑

第四行:關閉rpm包的gpg校驗功能。如果個人環境,建議關閉,參數值為0,如果生產環境,建議打開,參數值為1

最後保存退出。

7.更換yum源並刷新:CentOS6.5預設使用yum.repos.d文件夾下的CentOS-Base.repo配置文件,該文件在yum進行安裝包時會進行聯網下載操作。現在替換成自己本地的yum源。把原來的文件名稱改掉即可。

[root@henry yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.backup

最後,清理yum緩存,並重新載入。

[root@henry yum.repos.d]# yum clean all

[root@henry yum.repos.d]# yum list

現在,可以通過yum進行安裝軟體包,程式將自動解決包依賴問題。

[root@henry yum.repos.d]# yum install gcc*


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...