【VMvare】yum在線源

第一次接觸Linux系統,用虛擬機安裝了一個rad hat6.5版本64位的,傻瓜式安裝。安裝好以後簡單的寫了一個C代碼,進行gcc編譯的時候,提示沒有該命令,上網查找了一下說沒有安裝gcc編譯器,用yum install gcc安裝就能夠,可是發現該命令仍是不能執行,老是提示鏈接超時,最後發現是yum源的問題。不知道爲何當時百度的時候,並無發現本地源的配置,找到的都是網絡源的配置。嘗試了幾個教程,可是發現沒有一個是可行的,通過仔細的對比,發現這些教程的時間都有些久了(使用的是網易的源,網上都說不錯,本人也是剛接觸Linux的小白,因此不知道是否真的不錯,暫時就這樣使用),如今最新源的網站的一些文件夾和文件名都變了(主要是版本號問題),通過幾回嘗試並對比修改,最後終於配置成功,下面就分享一下所遇到的問題及解決辦法。node

  在進行下面的操做以前,必定要確保網絡正常,若是沒有網絡,下面的全部操做一個都不能實現。(下次會寫個本地源的配置,這個就能夠離線的狀態下進行,須要用到系統的鏡像文件,安裝好系統以後不要刪掉。)python

  首先配置網絡源須要一些安裝包,先簡單羅列出來:linux

python-iniparse-0.3.1-2.1.el6.noarch.rpm
python-urlgrabber-3.9.1-11.el6.noarch.rpm
yum-3.2.29-73.el6.CentOS.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

  能夠到這個網站直接下載:http://mirrors.163.com/centos/6/os/x86_64/Packages/vim

  不過裏面的安裝包確實太多了,找起來要花費點時間,若是下面介紹的在線獲取的方式沒有問題,能夠節約很多時間,固然有興趣能夠進入找找看。centos

  在線獲取方式:在Linux的終端執行如下命令:網絡

  wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm網站

  wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpmurl

  wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-81.el6.centos.noarch.rpmdebug

  wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpmcode

  wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm

  若是以上命令不能正確執行,提示網站沒有響應,就是這個包已經找不到了,由於版本更新,老版本的包刪掉了,只有新版本的包,因此按原來的文件名是不可能找到的,所以得本身到上面那個網站裏去匹配這些安裝包,名字是基本不會變的,變的是版本號。

  我遇到的就是這個問題,那些教程裏面的文件都不能在線下載,上面這些命令的執行結果老是提示網站沒有響應。

如今基本工做已經作好了,接下來就進行安裝和配置:

  一、安裝以前要先卸載系統原本的yum源,執行如下命令

[root@localhost ~]# rpm -aq|grep yum|xargs rpm -e --nodeps

  二、查詢一下是否徹底卸載了

[root@localhost ~]# rpm -qa |grep yum

  執行完這一條命令沒有任何信息提示,就表示已經徹底卸載了。(囉嗦一句,給剛接觸Linux的提示一下,其餘的能夠飄過。在Linux下若是命令執行成功是不會出現任何提示,有錯誤纔會提示)

  三、先安裝這下面的兩個包

[root@localhost ~]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
[root@localhost ~]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

  這兩個包安裝通常都不會出現問題,直接就經過(我是沒出現問題,其餘人若是出現問題,能夠自行百度一下解決辦法)

  四、接下來嘗試安裝這兩個包,必定要一塊兒安裝,也就是要在一條命令中執行,不能夠跟上面的兩個包同樣分兩條指令執行(網上的教程說是包的依賴關係)

[root@localhost ~]# rpm -ivh  yum-3.2.29-73.el6.centos.noarch.rpm    yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

  若是能直接經過是最好的結果,能夠省略很多麻煩,直接跳到第6步執行配置文件內容的替換。

  不過應該不會那麼順利,我這裏的錯誤提示是缺乏了一個包的依賴

warning: yum-3.2.29-73.el6.centos.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
    error: Failed dependencies:
    python-urlgrabber >= 3.9.1-10 is needed by yum-3.2.29-73.el6.centos.noarch

  在 >= 左邊的就是提示缺乏依賴的包,找到名字爲python-urlgrabber+版本號.rpm的包進行安裝。這個提示,以前找到的教程是沒有的,可能當時他們不存在這個問題。

  還有可能會有其餘的包依賴問題,根據我的的具體狀況,找相應的安裝包。

  五、安裝這個缺乏的依賴包

[root@localhost ~]# rpm -ivh python-urlgrabber-3.9.1-11.el6.noarch.rpm

  這裏也可能會出現問題,固然沒問題最好了。

  這個網絡yum源的配置是本身配置了兩次,第一次是沒有徹底刪除系統自帶的yum源,到了這一步提示安裝包衝突,以後就是徹底刪除了系統自帶的yum源,從新從第3步開始安裝一次,問題就解決了。第二次也就是按照如今的步驟,一開始就徹底刪除了系統自帶的yum源,可是到了這一步仍是提示安裝衝突,網上的解決辦法就是強制安裝,也沒有找到其餘辦法,因此也只有執行強制安裝了。

  提示信息都是這個

file /usr/lib/python2.6/site-packages/urlgrabber/grabber.py from install of python-urlgrabber-3.9.1-11.el6.noarch conflicts with     file from package python-urlgrabber-3.9.1-9.el6.noarch

  強制安裝缺乏的依賴包

[root@localhost ~]# rpm -ivh --force python-urlgrabber-3.9.1-11.el6.noarch.rpm

  安裝完以後,再執行第4步,應該就能夠徹底經過了。

  六、更改配置文件 rhel-debuginfo.repo

  更配置文件以前先進行備份(新手必定要記住這一點,更改系統配置文件以前必定要備份)

[root@localhost ~]# cp /etc/yum.repos.d/rhel-source.repo  /etc/yum.repos.d/rhel-source.repo.bak

  編輯該配置文件

[root@localhost ~]# vim /etc/yum.repos.d/rhel-source.repo

  可能也有一些人裝了系統以後,沒有vim可使用,可是vi是必定有的,因此上面的指令若是是出錯提示沒有該命令,能夠用vi打開

[root@localhost ~]# vi /etc/yum.repos.d/rhel-source.repo

  (vi或者vim的使用:上面的命令執行完成以後,會出現一個文本的編輯界面,按 i 鍵進入編輯模式,方向鍵進行光標移動,這裏的複製和粘貼使用的是Ctrl+Shift+C、Ctrl+Shift+V ,而後按ESC鍵退出編輯模式,輸入 ":wq" ,保存退出。)

  將這裏面的內容所有刪掉,替換成如下內容

        [base]
        name=CentOS-$releasever - Base
        baseurl=http://mirrors.163.com/centos/6/os/$basearch/
        gpgcheck=1
        gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

        #released updates
       [updates]
        name=CentOS-$releasever - Updates
        baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
        gpgcheck=1
        gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

        [extras]
        name=CentOS-$releasever - Extras
        baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
        gpgcheck=1
        gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6

        #additional packages that extend functionality of existing packages
       [centosplus]
        name=CentOS-$releasever - Plus
        baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
        gpgcheck=1
        enabled=0
  這裏也有要注意的地方,仍是文件名的問題,版本更替是必定的會有的,在此過程當中可能會產生文件名的更改,也許我如今可行的方法,到你用的時候就失效了,這時候你就得本身去核實路徑文件名的正確與否了。由於我在這裏也出過錯,因此才能指出來,以前那些教程的baseurl路徑都是baseurl=http://mirrors.163.com/centos/6.0/centosplus/$basearch/ ,之前是命名爲6.0,如今已經更改成6,因此以前這個文件改好以後,在下一步進行驗證的時候,也是提示鏈接失敗。

  這些內容更替好以後,保存退出就能夠了。

  七、清除原來的源配置,更新yum原到本地

[root@localhost ~]# yum clean all;yum makecache

  八、查看yum源列表

[root@localhost ~]# yum repolist all原文:https://www.linuxidc.com/Linux/2017-07/145578.htm
相關文章
相關標籤/搜索