天天看點

RHEL6基礎二十三之RHEL使用centos的Yum源

由于RHEL的yum線上更新是收費的,如果沒有注冊的話是不能使用的,即不能線上安裝軟體。在這種情況下,如果我們使用的機器安裝的是RHEL系統要是每次安裝軟體先挂載本地CD光牒會很繁瑣,而且有些軟體也是老版本的,這種情況下我們可以借助CentOS的YUM源來滿足我們的需求。

一、删除RHEL原有的YUM

1

2

3

4

<code>[root@justin ~]</code><code># rpm -qa|grep yum|xargs rpm -e --nodeps</code>

<code>warning: </code><code>/etc/yum</code><code>.conf saved as </code><code>/etc/yum</code><code>.conf.rpmsave</code>

<code>[root@justin src]</code><code># yum install php</code>

<code>-</code><code>bash</code><code>: </code><code>/usr/bin/yum</code><code>: 沒有那個檔案或目錄</code>

二、下載下傳CentOS的yum安裝包

python-iniparse:http://mirror.centos.org/centos-6/6.4/os/i386/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm

yum-metadata-parser:http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-metadata-parser-1.1.2-16.el6.i686.rpm

yum:http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm

yum-plugin-fastestmirror:http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm

RPM-GPG-KEY:http://mirror.centos.org/centos-6/6.4/os/i386/RPM-GPG-KEY-CentOS-6

或者在此下載下傳:http://url.cn/TBZzqQ

5

6

7

8

9

10

<code>[root@justin src]</code><code># wget http://mirror.centos.org/centos-6/6.4/os/i386/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm</code>

<code>[root@justin src]</code><code># wget http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-metadata-parser-1.1.2-16.el6.i686.rpm</code>

<code>[root@justin src]</code><code># wget http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm</code>

<code>[root@justin src]</code><code># wget http://mirror.centos.org/centos-6/6.4/os/i386/Packages/yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm</code>

<code>[root@justin src]</code><code># wget http://mirror.centos.org/centos-6/6.4/os/i386/RPM-GPG-KEY-CentOS-6</code>

<code>[root@justin src]</code><code># ls</code>

<code>python-iniparse-0.3.1-2.1.el6.noarch.rpm  yum-metadata-parser-1.1.2-16.el6.i686.rpm</code>

<code>RPM-GPG-KEY-CentOS-6                      yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm</code>

<code>yum-3.2.29-40.el6.centos.noarch.rpm</code>

<code>[root@justin src]</code><code>#</code>

三、安裝CentOS的YUM安裝包

yum和yum-plugin-fastestmirror需要一起安裝,這兩個包存在依賴關系,分開安裝會失敗,安裝之前先把RPM-GPG-KEY導入系統,否則會出現以下的警告資訊

11

12

13

<code>[root@justin src]</code><code># rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm</code>

<code>warning: python-iniparse-0.3.1-2.1.el6.noarch.rpm: Header V3 RSA</code><code>/SHA256</code> <code>Signature, key ID c105b9de: NOKEY</code>

<code>Preparing...                </code><code>########################################### [100%]</code>

<code>    </code><code>package python-iniparse-0.3.1-2.1.el6.noarch is already installed</code>

<code>[root@justin src]</code><code># rpm --import RPM-GPG-KEY-CentOS-6</code>

<code>[root@justin src]</code><code># rpm -ivh yum-metadata-parser-1.1.2-16.el6.i686.rpm</code>

<code>   </code><code>1:yum-metadata-parser    </code><code>########################################### [100%]</code>

<code>[root@justin src]</code><code># rpm -ivh yum-3.2.29-40.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm</code>

<code>   </code><code>1:yum-plugin-fastestmirro</code><code>########################################### [ 50%]</code>

<code>   </code><code>2:yum                    </code><code>########################################### [100%]</code>

至此我們就可以線上使用yum了,

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

<code>[root@justin yum.repos.d]</code><code># yum install php</code>

<code>Loaded plugins: fastestmirror, product-</code><code>id</code><code>, subscription-manager</code>

<code>Updating certificate-based repositories.</code>

<code>Unable to </code><code>read</code> <code>consumer identity</code>

<code>Determining fastest mirrors</code>

<code>rhel-</code><code>local</code>                                                                                              <code>| 4.0 kB     00:00 ...</code>

<code>rhel-</code><code>local</code><code>/primary_db</code>                                                                                   <code>| 2.5 MB     00:00 ...</code>

<code>Setting up Install Process</code>

<code>Resolving Dependencies</code>

<code>--&gt; Running transaction check</code>

<code>---&gt; Package php.i686 0:5.3.3-3.el6_2.8 will be installed</code>

<code>--&gt; Processing Dependency: php-common = 5.3.3-3.el6_2.8 </code><code>for</code> <code>package: php-5.3.3-3.el6_2.8.i686</code>

<code>--&gt; Processing Dependency: php-cli = 5.3.3-3.el6_2.8 </code><code>for</code> <code>package: php-5.3.3-3.el6_2.8.i686</code>

<code>---&gt; Package php-cli.i686 0:5.3.3-3.el6_2.8 will be installed</code>

<code>---&gt; Package php-common.i686 0:5.3.3-3.el6_2.8 will be installed</code>

<code>--&gt; Finished Dependency Resolution</code>

<code>Dependencies Resolved</code>

<code>===============================================================================================================================</code>

<code> </code><code>Package                       Arch                    Version                             Repository                     Size</code>

<code>Installing:</code>

<code> </code><code>php                           i686                    5.3.3-3.el6_2.8                     rhel-</code><code>local</code>                    <code>1.1 M</code>

<code>Installing </code><code>for</code> <code>dependencies:</code>

<code> </code><code>php-cli                       i686                    5.3.3-3.el6_2.8                     rhel-</code><code>local</code>                    <code>2.2 M</code>

<code> </code><code>php-common                    i686                    5.3.3-3.el6_2.8                     rhel-</code><code>local</code>                    <code>523 k</code>

<code>Transaction Summary</code>

<code>Install       3 Package(s)</code>

<code>Total download size: 3.8 M</code>

<code>Installed size: 12 M</code>

<code>Is this ok [y</code><code>/N</code><code>]:</code>

四、修改yum源

為了使用線上使用Yum安裝軟體更快,我們可以使用國内的網易Yum源或者其他國内yum源

下載下傳網易Yum源

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

<code>[root@justin yum.repos.d]</code><code># pwd</code>

<code>/etc/yum</code><code>.repos.d</code>

<code>[root@justin yum.repos.d]</code><code># wget  http://mirrors.163.com/.help/CentOS6-Base-163.repo</code>

<code>[root@justin yum.repos.d]</code><code># ls</code>

<code>CentOS6-Base-163.repo  CentOS-</code><code>test</code><code>.repo  packagekit-media.repo  rhel-</code><code>local</code><code>.repo  rhel-</code><code>local</code><code>.repobak  rhel-</code><code>source</code><code>.repo</code>

<code>[root@justin yum.repos.d]</code><code># cat CentOS6-Base-163.repo</code>

<code># CentOS-Base.repo</code>

<code>#</code>

<code># The mirror system uses the connecting IP address of the client and the</code>

<code># update status of each mirror to pick mirrors that are updated to and</code>

<code># geographically close to the client.  You should use this for CentOS updates</code>

<code># unless you are manually picking other mirrors.</code>

<code># If the mirrorlist= does not work for you, as a fall back you can try the</code>

<code># remarked out baseurl= line instead.</code>

<code>[base]</code>

<code>name=CentOS-$releasever - Base - 163.com</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/</code><code>$releasever</code><code>/os/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=os</code>

<code>gpgcheck=1</code>

<code>gpgkey=http:</code><code>//mirror</code><code>.centos.org</code><code>/centos/RPM-GPG-KEY-CentOS-6</code>

<code>#released updates</code>

<code>[updates]</code>

<code>name=CentOS-$releasever - Updates - 163.com</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/</code><code>$releasever</code><code>/updates/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=updates</code>

<code>#additional packages that may be useful</code>

<code>[extras]</code>

<code>name=CentOS-$releasever - Extras - 163.com</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/</code><code>$releasever</code><code>/extras/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=extras</code>

<code>#additional packages that extend functionality of existing packages</code>

<code>[centosplus]</code>

<code>name=CentOS-$releasever - Plus - 163.com</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/</code><code>$releasever</code><code>/centosplus/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=centosplus</code>

<code>enabled=0</code>

<code>#contrib - packages by Centos Users</code>

<code>[contrib]</code>

<code>name=CentOS-$releasever - Contrib - 163.com</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/</code><code>$releasever</code><code>/contrib/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=contrib</code>

<code>[root@justin yum.repos.d]</code><code>#</code>

下載下傳好網易yum源後需要修改下整個檔案裡的$releasever和$basearch;$releasever變量為具體版本号,通過rpm -qi centos-release指令檢視;$basearch的取值系統硬體架構(CPU指令集),使用指令arch得到

<a href="https://s3.51cto.com/wyfs02/M01/98/AA/wKioL1k_Z9qwaAYRAABhrUbYSfA641.png" target="_blank"></a>

baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

完整路徑便是

baseurl=http://mirror.centos.org/centos/6/os/x86_64/

編輯檔案CentOS-Base-163.repo,在末行模式下輸入:% s/$releasever/6/g替換整個檔案下的$releasever為6,替換成功後會提示15 次替換,共 15 行的字樣,最後儲存退出

<code>[root@justin yum.repos.d]</code><code># vim CentOS6-Base-163.repo</code>

<code>....</code>

<code>baseurl=http:</code><code>//mirrors</code><code>.163.com</code><code>/centos/6/contrib/</code><code>$basearch/</code>

<code>#mirrorlist=http://mirrorlist.centos.org/?release=6&amp;arch=$basearch&amp;repo=contrib</code>

<code>:% s/$releasever</code><code>/6/g</code>

至此,RHEL使用CentOS的YUM完成

EPEL

EPEL的全稱叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社群打造,為 RHEL 及衍生發行版如 CentOS、Scientific Linux 等提供高品質軟體包的項目。裝上了 EPEL之後,就相當于添加了一個第三方源,而且大多數rpm包在官方 repository 中是找不到的,絕大多數rpm包要比官方repository 的rpm包版本要來得新。

不用去換原來yum源,安裝後會産生新repo,epel會有很多源位址,如果一個下不到,會去另外一個下,更新時如果下載下傳的包不全,就不會進行安裝。這樣的話,依賴關系可以保重。

安裝epel,centos6選6,5就選5:下載下傳位址:http://dl.fedoraproject.org/pub/epel/

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

導入key:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

<code>[root@localhost yum.repos.d]</code><code># rpm -ivh epel-release-6-8.noarch.rpm </code>

<code>warning: epel-release-6-8.noarch.rpm: Header V3 RSA</code><code>/SHA256</code> <code>Signature, key ID 0608b895: NOKEY</code>

<code>   </code><code>1:epel-release           </code><code>########################################### [100%]</code>

<code>[root@localhost yum.repos.d]</code><code># rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6</code>

<code>[root@localhost yum.repos.d]</code><code># yum -y install yum-priorities</code>

本文轉自 justin_peng 51CTO部落格,原文連結:http://blog.51cto.com/ityunwei2017/1320908,如需轉載請自行聯系原作者

繼續閱讀