linux-Centos 搭建http yum源


在centos 中搭建本地yum 源

yum源是什么?

   總所周知我們安裝軟件,是需要軟件包的,而且軟件在安裝的時候會有許多依賴包。這樣導致我們手動通過軟件包安裝軟件是十分繁瑣的, yum 源是解決這個繁瑣的過程,他將我們管理的軟件包規整到一起,解決了安裝時候各個軟件的依賴問題。 

 

centos 搭建http 方式的yum 源方法

 

 

1. 准備環境 關閉防火牆 selinux 

檢查防火牆,防火牆需要是關閉狀態

[root@centos-vm1 ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)

Feb 24 18:06:13 centos-vm1 systemd[1]: Starting firewalld - dynamic firewall daemon...
Feb 24 18:06:19 centos-vm1 systemd[1]: Started firewalld - dynamic firewall daemon.
Feb 24 18:06:20 centos-vm1 firewalld[716]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.
Feb 24 22:32:11 centos-vm1 systemd[1]: Stopping firewalld - dynamic firewall daemon...
Feb 24 22:32:13 centos-vm1 systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@centos-vm1 ~]#

檢查selinux ,selinux 為disabled

[root@centos-vm1 ~]# getenforce
Disabled

或者檢查selinux 配置文件

[root@centos-vm1 ~]# cat /etc/selinux/config | grep SELINUX
# SELINUX= can take one of these three values:
SELINUX=disabled

 

 

 

 2. 需要提供yum 源的server 上搭建配置http 服務

[root@centos-vm1 ~]# yum install -y httpd 

 

啟動httpd 服務,使用本地ip 嘗試登錄http 驗證httpd 是否正常

[root@centos-vm1 ~]# systemctl status httpd.service     (檢查服務,如果服務不是為running 請將服務先start )
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2021-02-24 22:38:48 EST; 1h 28min ago
Docs: man:httpd(8)
man:apachectl(8)

 

/etc/httpd/conf/httpd.conf     此文件是httpd 的核心配置文件

我們httpd 中默認提供web 界面的位置是我們/var/www/html 目錄,如果我們yum 源想指定目錄,需要修改/etc/httpd/conf/httpd.conf 此文件

DocumentRoot "/var/www/html"      修改為DocumentRoot "/usr/local/"       {此處的/usr/local 是我們指定的目錄}

<Directory "/var/www/html">      修改為<Directory "/usr/local/">     

 

 

如果不需要指定目錄,可以在/var/www/html/ 自己新建一個目錄即可

 

這里演示新建目錄 

新建的目錄是用來存放軟件的安裝包的,在centos 中軟件的安裝包大都是rpm 安裝包

 

在/usr/local/ 新建yumrepo 目錄

mkdir /usr/local/yumrepo      

 

我這里是掛載鏡像,將鏡像的rpm 軟件包cp到/usr/local/yumrepo   此目錄使用的。 

先將我們的iso 鏡像掛載

查詢當前的鏡像是否存在

[root@centos-vm1 ~]# ls
anaconda-ks.cfg CentOS-7-x86_64-Minimal-1804.iso
創建一個掛載目錄  PS 新建一個目錄或者使用/mnt/ 目錄都可以
[root@centos-vm1 ~]# mkdir test

將iso 鏡像掛載到我們的掛載目錄上
[root@centos-vm1 ~]# mount -t iso9660 -o loop CentOS-7-x86_64-Minimal-1804.iso test/
mount: /dev/loop0 is write-protected, mounting read-only
查看掛載目錄,里面會有數據,我們要用的Packages 目錄 此目錄是存放rpm 包的目錄
[root@centos-vm1 ~]# ls test/
CentOS_BuildTag EFI EULA GPL images isolinux LiveOS Packages repodata RPM-GPG-KEY-CentOS-7 RPM-GPG-KEY-CentOS-Testing-7 TRANS.TBL

 

 

 

將此目錄的rpm 包cp 到我們的設置的http目錄下

[root@centos-vm1 ~]# cp test/Packages/*  /usr/local/yumrepo/

 

給/usr/local/yumrepo 配置權限,因為我們的httpd 的服務使用的是apache用戶,該目錄需要有普通用戶的執行權限

chmod -R 755 /usr/local/yumrepo 

重啟httpd 服務

[root@centos-vm1 ~]# systemctl restart  httpd.service

 

 重啟服務可以通過本地地址登錄界面看到我們的yum 源

 

 

 

在同一局域網中另一個server 上配置http  yum 源

配置http yum 源 

進入到/etc/yum.repos.d/ 目錄下創建一個備份的目錄,將我們/etc/yum.repos.d/ 下的yum 源 mv移動到我們的新建的備份目錄下

[root@centos-vm2 ~]# cd /etc/yum.repos.d/
[root@centos-vm2 yum.repos.d]# ls
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo CentOS-x86_64-kernel.repo
[root@centos-vm2 yum.repos.d]#
[root@centos-vm2 yum.repos.d]# mkdir backup
[root@centos-vm2 yum.repos.d]# mv CentOS-* backup/
[root@centos-vm2 yum.repos.d]# ls
backup

 

新建我們http yum源文件

[root@centos-vm2 yum.repos.d]# vim basics.repo
[root@centos-vm2 yum.repos.d]#
[root@centos-vm2 yum.repos.d]# cat basics.repo
[basics]
name=basics-repo                 #我們yum 源命名
enabled=1                     #啟用yum源,0為不啟用,1為啟用
gkgcheck=0                  #檢查GPG-KEY,0為不檢查,1為檢查
baseurl=http://192.168.8.99/yumrepo      #是服務器設置中最重要的部分,只有設置正確,才能從上面獲取軟件

 

 

yum clean all #清除yum緩存

yum makecache #緩存本地yum源中的軟件包信息

yum repolist    #查看源軟件包

 

 

 嘗試安裝任意一個軟件包檢查是否可以使用http yum 源

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM