天天看點

如何在公司内網搭建YUM倉庫鏡像源

1.首先安裝一個web伺服器來作為yum源的伺服器。例如Apache、Nginx等web伺服器都可以作為yum源的伺服器。

2.然後安裝createrepo工具來生成yum倉庫中繼資料。在Linux系統上,您可以通過運作指令sudo yum install createrepo來安裝該工具。

3.在yum源伺服器上建立一個新目錄,比如/var/www/html/yumrepo,并使用createrepo指令來初始化該目錄,生成yum倉庫的清單中繼資料。運作指令createrepo /var/www/html/yumrepo。

4.将需要安裝的軟體包上傳到剛才建立的yum源目錄中。您可以從公共yum源或官方軟體源下載下傳rpm檔案并将其複制到/var/www/html/yumrepo目錄中。 配置用戶端yum源檔案,使其指向您的新yum源,而不是預設的公共yum源。

5.在用戶端機器上打開yum配置檔案,該檔案通常位于/etc/yum.repos.d/目錄中,然後編輯配置檔案,将baseurl設定為指向您的私有yum倉庫。本例以Centos7.9系統為例,服務端IP位址為A,用戶端IP位址為B。

一、在服務端上:需要建立Yum倉庫,通過配置WEB伺服器或FTP伺服器來把Yum倉庫分享給區域網路内其它Linux機器使用。

如何在公司内網搭建YUM倉庫鏡像源

(1)環境準備

1. 關閉selinux
   sestatus
   vi /etc/selinus/config      #SELINUX 修改為 disabled, 需重新開機機器才生效
2. 關閉防火牆
   firewall-cmd --state
   systemctl stop firewalld    #停止firewall
   systemctl disable firewalld #禁用 firewall 開機啟動           

(2)導入rpm包,生成索引檔案。

在本例中,以鏡像包的方式導入rpm包。
1. 挂載磁盤鏡像/epel鏡像
   mkdir -p /media/cdrom
   mkdir -p /media/cdrom-epel
   mount -o loop -t iso9660 /home/bk_offline_repo-7.5.1804.iso  /media/cdrom-epel
   mount -o loop -t iso9660 /home/CentOS-7-x86_64-DVD-1810.iso  /media/cdrom
2. 複制rpm包至/yum/Packages
   cd /media/cdrom
   cp -R Packages/ /yum/
   unalias cp
   cd /media/cdrom-epel
   cp -rf *.rpm /yum/Packages/
   alias cp='cp -i'
3. 按照先後順序執行以下指令,不然會報錯缺少依賴包。
   rpm -ivh  deltarpm-3.6-3.el7.x86_64.rpm
   rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm 
   rpm -ivh libxml2-2.9.1-6.el7_2.3.x86_64.rpm
   rpm -ivh libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
   rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm    #createrepo主要是為後續生成倉庫資料使用
4. 建立倉庫資料,建立索引 
   createrepo -v /yum  #運作完成後會生成repodata檔案夾
5. 在/etc/yum.repos.d/目錄下建立一個名為 local.repo檔案,其中包含所有的yum資訊
   原目錄下的檔案備份至其它位置,如yum.repos.d.bak
   vi /etc/yum.repos.d/local.repo
   [localrepo] #注意,該地方不能有空格,不然後續執行 yum repolist all時會報錯
   repolist:0   
   name=local-yum  
   baseurl=file://yum      # file://告訴yum為本地倉庫,/xtkyum為絕對路徑
   enabled=1
   gpgcheck=0 #關閉rpm包的gpg校驗功能;個人環境,建議關閉,參數值為0;生産環境,建議打開,參數值為1。
   儲存退出。
6. yum clean all #清理緩存
   yum repolist all #檢查倉庫清單,在清單中能看到localrepo
7. 測試能否成功安裝。
   yum -y install gcc
   yum -y install ntp           

(3)配置web或http分享yum倉庫。

>>>使用ftp伺服器(vsftpd)分享yum倉庫
1. yum -y install vsftpd  
2. 把yum倉庫下的檔案拷貝到vsftpd的預設根目錄 /var/ftp/pub,包括repodate
   cd /yum
   cp -R Packages /var/ftp/pub
   cp -R repodate /var/ftp/pub
   chmod 755 -R /var/ftp/pub
3. systemctl restart vsftpd
   systemctl status vsftpd
     
>>>使用web伺服器(apache)分享yum倉庫
1. yum -y install httpd 
2. 把yum倉庫下的檔案拷貝到預設根目錄 /var/www/html/,包括repodate
   cd /yum
   cp -R Packages /var/www/html
   cp -R repodate /var/www/html
   chmod 755 -R /var/www/html
3. systemctl restart httpd
   systemctl status httpd           

二、在用戶端上:建立repo配置檔案,測試yum倉庫是否能正常使用。

1. 在/etc/yum.repos.d/目錄下建立一個名為 local.repo檔案,其中包含所有的yum資訊
   原目錄下的檔案備份至其它位置,如yum.repos.d.bak

2. vi local.repo (ftp)
[localrepo]
name=localyum
baseurl=ftp://伺服器ip位址A/pub/
enabled=1
gpgcheck=0
儲存後退出
>>>如果是web伺服器,baseurl修改成:baseurl=http://伺服器IP位址A           

3. 最後,測試用戶端是否可以成功連接配接到您的私有yum源,并從中下載下傳安裝包。您可以嘗試運作yum指令,例如sudo yum update或者sudo yum install package_name進行測試。

文章來源:如何在公司内網搭建YUM倉庫鏡像源 - 裕普網絡-裕普網絡

繼續閱讀