如何在沒有外網的情況下,通過Centos系統光碟片建立yum源,結果rpm包依賴性問題

來源:互聯網
上載者:User

標籤:yum   伺服器   rpm   linux   依賴性   

如何在沒有外網的情況下,通過Centos系統光碟片建立yum源,結果rpm包依賴性問題

 

 

相信作為Linux系統管理員在安裝rpm包的過程中或多或少都會遇到軟體依賴性。通常我們的解決方案:

1.通過yum工具串連外網上的yum伺服器來安裝,自動幫忙解決軟甲依賴性。

該方法能夠快速解決軟體依賴性問題,但是解決的前提是生產環境中有外光。如果我們的生產環境不允許串連或者不具備外網條件,基本上就沒有辦法解決了。

2.手動安裝依賴性軟體。這種方法較為原始的安裝方法,只適合對軟體依賴性較少的情況,如果所安裝的軟體所依賴的軟體較多,等你把軟體安裝好了,估計黃花菜都涼了

3.實在沒有別的辦法,只能來簡單粗暴的方式,重裝系統,把所需要的軟體在定製系統時全部安裝。如果你真的用來這種方法,我只能在心裡默默的鄙視你了。

 

如何直接上門遇到的問題呢?很簡單,只需要通過更改yum相關的配置即可。工作將系統硬碟作為yum源即可。

Yum工作原理

yum 運行原理

yum的工作需要兩部分來合作,一部分是yum伺服器,還有就是client的yum工具。下面分別介紹兩部分工作原理。

  • yum伺服器

所有要發行的rpm包都放在yum伺服器上以提供別人來下載,rpm包根據kernel的版本號碼,cpu的版本號碼分別編譯發布。yum伺服器只要提供簡單的下載就可以了,ftp或者httpd的形式都可以。yum伺服器有一個最重要的環節就是整理出每個rpm包的基本資料,包括rpm包對應的版本號碼,conf檔案,binary資訊,以及很關鍵的依賴資訊。在yum伺服器上提供了createrepo工具,用於把rpm包的基本概要資訊做成一張"清單",這張"清單""就是描述每個rpm包的spec檔案中資訊。

  • yum     client端

client每次調用yum install或者search的時候,都會去解析/etc/yum.repos.dm目錄下面所有以.repo結尾的設定檔,這些設定檔指定了yum伺服器的地址。yum會定期去"更新"yum伺服器上的rpm包"清單",然後把"清單"下載儲存到yum自己的cache裡面,根據/etc/yum.conf裡配置(預設是在/var/cache/yum下面),每次調用yum裝包的時候都會去這個cache目錄下去找"清單",根據"清單"裡的rpm包描述從而來確定安裝包的名字,版本號碼,所需要的依賴包等,然後再去yum伺服器下載rpm包安裝。(前提是不存在rpm包的cache)

註:有興趣的朋友可以更深入的瞭解一下搭建yum伺服器

通過yum工作原理可以知道,用戶端通過制定的yum伺服器來訪問和下載依賴性軟體。那麼我們能不能指定本地的yum源為本地地址,通過調用本地的資源來解決軟體依賴性呢?答案是可以。

解決思路:

Centos系統硬碟裡面內建所有預先安裝軟體,讓yum調用系統硬碟中的軟體包資源,來替代遠端伺服器的功能。

Yum通過調用yum設定檔中的伺服器位址下載人rpm依賴性包,我們可以將掛載系統硬碟,通過yum設定檔將伺服器位址更改指向掛載的系統硬碟目錄。當然如果有條件的話可以自己搭建一個內部yum伺服器,可以解決多台伺服器的rpm軟體依賴性問題,可以節省很多時間。

配置方法:

1.  將/etc/yum.repos.d 目錄下問的檔案備份,依然移除除了Centos-Media.repo的其他檔案。Yum的伺服器配置相當文檔放置在如中。雖然可以通過其它文檔,讓yum訪問本地目錄,但是通過實際的操作發現。儘管做了配置,但是更新時依舊會報錯,所以建議大家最好現在備份,然後移除不需要配置的文檔來操作。

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/5D/D8/wKiom1UlF63BGoj2AADyx6pCwXI529.jpg" title="1.PNG" alt="wKiom1UlF63BGoj2AADyx6pCwXI529.jpg" />

2.配置Centos-Media.repo。預設的配置文檔如下,我們需要參數“enable=0”更改問“enable=1”,啟用該文檔。

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/5D/D8/wKiom1UlF7mTopkeAAIkGmKR18I206.jpg" title="2.PNG" alt="wKiom1UlF7mTopkeAAIkGmKR18I206.jpg" />

 

3.掛載系統硬碟到配置的目錄下,我們知道的配置文檔的目錄有/media/Centos,我們可以將系統光碟片掛載到該目錄下即可。具體怎麼掛載,這裡就不做詳細的介紹。

4.經過以上步驟的配置,即可安裝軟體,但是需要注意的是,我們需要通過安裝光碟片中的軟體來操作,不然系統提示找不到。畢竟我們只是制定了相關的資源路徑,並不是搭建一個yum伺服器。

 

 


本文出自 “考拉先生” 部落格,請務必保留此出處http://koala003.blog.51cto.com/9996246/1630149

如何在沒有外網的情況下,通過Centos系統光碟片建立yum源,結果rpm包依賴性問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.