利用Nginx搭建本地YUM源

    在離線環境安裝Linux軟件,遇到依賴特別多的軟件的時候,幾乎無法安裝,一直尋找一個方便、有效的方式解決這個問題,不要侷限,不要繁瑣(文件式的本地源就比較侷限,其實此文和文件式原理同樣),這篇文章所寫的方式,暫時是我發現最簡便有效的方式,此方式一樣適用於zypper、apt源。若是你在安裝軟件的時候和我有一樣的苦惱,但願此方法可以幫到你。html

    首先,咱們須要瞭解如下yum源的原理。在CentOS7下,yum源的文件所有保存在如下目錄:node

/etc/yum.repos.d

    隨便找一個文件,發現裏面的內容相似:nginx

[cloudera-cdh5]
# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat	or CentOS 7 x86_64
name=Cloudera's Distribution for Hadoop, Version 5
baseurl=https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/5/
gpgkey =https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/RPM-GPG-KEY-cloudera    
gpgcheck = 1

    有效的內容其實就key-value鍵值對內容。vim

name=名稱,能夠隨意填寫
baseurl=一個url路徑
gpgkey = gpg密鑰的地址
gpgcheck = 是否檢查,若是0表示不檢查,1表示檢查

    說白了,咱們須要搭建一個http服務。考慮到個人網絡環境,我將服務搭建在我Win10母機上面,這樣我全部虛擬機就都能訪問了。局域網其餘電腦一樣可以訪問。centos

    第一步:下載CentOS的Everything鏡像(很大,10GB左右,畢竟包含了太多rpm包,但當你使用後,你會發現一切都是值得的)。網絡

http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Everything-1804.iso

   第二步:加載文件app

   若是你硬盤足夠多,將iso文件解壓到特定目錄,若是你剩餘硬盤空間並很少,那麼推薦你直接右鍵->裝載(Win10系統特有),以下:oop

  第三步:安裝nginx(Windows下)url

http://nginx.org/en/download.html

  第四步:編輯nginx配置文件(本人用的是1.13.6版)3d

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
			autoindex  on;
            root   J:/;(這裏請換成你的實際目錄路徑)
            index  index.html index.htm;
        }
    }
}

    第五步:啓動nginx

    一切搞定後,雙擊nginx啓動服務,而後訪問:http://127.0.0.1

第六步:建立yum repo文件

[root@node1 ~]# vim /etc/yum.repos.d/local.repo
[local]
name=local
#在虛擬機網絡環境中,母機地址是這個
baseurl=http://192.168.100.1
#是否可用,1表示可用,0表示不可用
enabled=1
gpgcheck=1
gpgkey=http://192.168.100.1/RPM-GPG-KEY-CentOS-7

第七步:禁用其餘repo文件

編輯其餘repo文件,將enabled設置爲0

……
enabled=0
……

第七步:yum相關

#清理無用源
yum clean all
#查看列表中是否存在
yum repolist
#實際安裝一個軟件試試看,好比httpd
yum install httpd

總結:由於本地源(嚴格說應該是本地http源),因此速度很是快,體驗仍是很不錯的。一樣既然nginx能夠,那麼httpd天然也能夠。既然Windows能夠搭建,那麼Linux天然也能夠搭建。其實原理很簡單,理解其中的原理後,自由變通便可。

相關文章
相關標籤/搜索