製作本地yum源

以centos集羣爲例製作yum源;
當我們採用最小安裝的方式安裝完Linux系統後,會發現輸入常用命令顯示 沒有該命令,
一般做法就使用yum命令進行安裝;但是yum命令也報錯了,咋辦? ?

Linux操作系統下的組件就好比Windows下的軟件,都是爲了某種功能/便利的工具。比如Windows的notepad、EditPlus等,和Linux下的vim、vi一樣,本質都是文本編輯器。今兒主要討論的Yum源,其‘源’字就好比Windows下各軟件官網、360軟件管家、百度網盤這類軟件包資源集中地(服務端上的資源),‘Yum’則是對應的下載工具比如迅雷、百度網盤、360下載等(客戶端上的下載工具)

所以yum命令報錯,無非就是兩個原因 yum 或者 源有問題。

 

製作本地yum源

如果操作系統採用的是最小安裝,且沒有外網,則建議做一個centos的本地yum源。

1.將系統iso文件CentOS-7-x86_64-DVD-1611.iso放在/opt/packages目錄下

2./mnt/目錄下創建文件夾centos7.3
#mkdir -p /mnt/centos7.3

3.將iso文件掛載到/mnt/centos7.3
mount -o loop /opt/packages/CentOS-7-x86_64-DVD-1611.iso /mnt/centos7.3

4.配置HTTPD服務(主節點)
確定是否安裝httpd: rpm -qa | grep httpd

(表示已安裝)
service httpd status

(表示已運行)

已安裝,未運行時,執行:
service httpd start
chkconfig httpd on

5.若未安裝,則執行以下步驟製作本地文件yum源,目的是安裝http:

先在所有需要安裝的服務器上的/etc/yum.repos.d/目錄中執行:
#cd /etc/yum.repos.d/
# mkdir bak           
#mv CentOS* bak/  (在yum.repos.d目錄中默認匹配CentOS-base.repo文件,所以需要將其移位置)
#touch centos.repo             
#vim /etc/yum.repos.d/centos.repo

寫入並保存如下內容:
[localyumrepo]
name=centos
baseurl=file://mnt/centos7.3         (/mnt/centos7.3爲centos安裝包位置)
enabled=1
gpgcheck=0

安裝httpd:
yum -y install httpd
servicehttpd restart
chkconfighttpd on

打印如下信息表示啓動成功:

6.製作http本地yum源

在主節點:
#cd /etc/yum.repos.d/
#cp -r /mnt/centos7.3 /var/www/html/
#cd /var/www/html
 # mv centos7.3  centos

#vim centos.repo


寫入並保存如下內容
[localyumrepo]
name=centos
baseurl= http://主節點IP/centos
enabled=1
gpgcheck=0
gpgkey= http://主節點IP/centos/RPM-GPG-KEY-CentOS-7

 

7.在其他節點/etc/yum.repos.d中,將所有.repo文件移動都 bak/下

8.將主節點/etc/yum.repos.d目錄下的centos.repo文件拷貝到其他主機的/etc/yum.repos.d目錄中。
部署完成後,各個節點均能正常使用yum命令下載組件。

----------------------------------------------------------------------------------------------------------------------------------------------

在Linux操作系統下,我們需要安裝某個組件的時候,基本上會有兩種操作yum和rpm:

  1. yum-在線安裝,有點類似於360軟件管家的一鍵部署
  2. rpm-離線安裝,等同於去其官網把軟件下載到本地自己動手安裝

二者最大的區別——能否自動解決依賴關係:yum在線安裝,會自動下載安裝所需的所有依賴組件,無需用戶關注依賴關係且一步到位;而rpm則需要用戶自行將所有依賴全部下載到本地並按照一定的順序安裝好以後才能安裝最終所需的組件。
再說相同點,yum其實是在rpm的基礎上完善了依賴關係解決方案後的組件,它的底層依然是使用rpm的一系列指令完成具體組件的安裝/更新/卸載等操作,只不過對用戶透明而已。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章