搭建軟件倉庫
1.兩臺(tái)服務(wù)器,一臺(tái)模擬客戶機(jī),一臺(tái)模擬服務(wù)器
2.兩個(gè)IP地址要不同
一、使用光盤搭建內(nèi)網(wǎng)軟件倉庫
搭建一個(gè)通過內(nèi)網(wǎng)下載的本地倉庫,比直接鏈接公網(wǎng)倉庫下載更快
1.搭建一個(gè)服務(wù)端(10.0.0.200)
1.先關(guān)閉服務(wù)端的防火墻和selinux
[root@oldboy ~]# systemctl stop firewalld 臨時(shí)關(guān)閉防火墻
[root@oldboy ~]# setenforce 0 臨時(shí)關(guān)閉selinux
2.掛載光盤
[root@oldboy ~]# mount /dev/cdrom /mnt/
3.通過ftp,共享 軟件包存放的目錄
[root@oldboy ~]# yum install vsftpd
[root@oldboy ~]# systemctl start vsftpd 啟動(dòng)
4.將光盤中的軟件包都拷貝到ftp的共享目錄下
[root@oldboy ~]# mkdir /var/ftp/centos7 創(chuàng)建軟件包存放的目錄(共享目錄)
[root@oldboy ~]# find /mnt/ -type f -name "*.rpm" -exec cp {} /var/ftp/centos7/ \; 將光盤中的軟件包存放在共享目錄下
5.將共享的目錄設(shè)置成yum倉庫,創(chuàng)建repodata倉庫
這個(gè)倉庫每次新增軟件需要重新生成一次
[root@oldboy ~]# yum install createrepo -y 安裝命令
[root@oldboy ~]# createrepo /var/ftp/centos7/
2.搭建一個(gè)客戶端(10.0.0.201)
1.關(guān)閉所有公網(wǎng)的yum倉庫
[root@oldboy201 ~]# gzip /etc/yum.repos.d/*
2.新建一個(gè)centos7軟件包(.repo)文件,通過baseurl指向服務(wù)端
[root@oldboy201 ~]# vim /etc/yum.repos.d/ftp_centos7.repo
[ftp_centos7]
name = local_base
baseurl = ftp://10.0.0.200/centos7/
enabled = 1
gpgcheck = 0
3.測(cè)試是否能安裝軟件
[root@oldboy201 ~]# yum clean all 清除所有yum數(shù)據(jù)和緩存
[root@oldboy201 ~]# yum install httpd -y
[root@oldboy201 ~]# yum repolist 查看可用的倉庫
二、從公網(wǎng)下載創(chuàng)建內(nèi)網(wǎng)軟件倉庫
下載一個(gè)提供nginx軟件相關(guān)的倉庫
1.搭建一個(gè)服務(wù)端(10.0.0.200)
1.先關(guān)閉服務(wù)端的防火墻和selinux
[root@oldboy ~]# systemctl stop firewalld 臨時(shí)關(guān)閉防火墻
[root@oldboy ~]# setenforce 0 臨時(shí)關(guān)閉selinux
2.通過ftp,共享 軟件包存放的目錄
[root@oldboy ~]# yum install vsftpd
[root@oldboy ~]# systemctl start vsftpd 啟動(dòng)
3.創(chuàng)建軟件包存放的目錄(共享目錄)
[root@oldboy ~]# mkdir /var/ftp/local_nginx
4.獲取nginx軟件包
①將網(wǎng)頁的源碼保存到nginx1.txt
[root@oldboy /var/ftp]# curl http://nginx.org/packages/centos/7/x86_64/RPMS/ > nginx1.txt
②將nginx1.txt中的軟件包地址截取出來,前面加個(gè)wget(下載) 和網(wǎng)址,保存到nginx2.txt
[root@oldboy /var/ftp]# grep -E "<a href|.rpm" nginx1.txt | awk -F '"' \(換行符)
'{print "wget http://nginx.org/packages/centos/7/x86_64/RPMS/"$2}' > nginx2.txt
③sh或.\運(yùn)行nginx2.txt,下載軟件包
[root@oldboy /var/ftp]# cd local_nginx/ 切換目錄
[root@oldboy /var/ftp/local_nginx]# sh ../nginx2.txt 運(yùn)行nginx2.txt將軟件包下載到local_nginx目錄下
5.將local_nginx目錄生成一個(gè)yum倉庫,有新軟件需要重新生成
[root@oldboy ~]# createrepo /var/ftp/local_nginx
2.搭建一個(gè)客戶端(10.0.0.201)
1.關(guān)閉所有公網(wǎng)的yum倉庫
[root@oldboy201 ~]# gzip /etc/yum.repos.d/*
2.客戶端新建一個(gè)軟件倉庫.repo,將他用baseurl指向服務(wù)端的共享文件
[root@oldboy201 ~]# vim /etc/yum.repos.d/ftp_local_nginx.repo
[ftp_local_nginx]
name = local_nginx
baseurl = ftp://10.0.0.200/local_nginx/
enabled = 1
gpgcheck = 0
3.測(cè)試
[root@oldboy201 ~]# yum clean all 清除所有yum數(shù)據(jù)和緩存
[root@oldboy201 ~]# yum install nginx
[root@oldboy201 ~]# yum repolist

圖示.png
源碼包管理
(1)configure,生成,makefile文件
[root@oldboy nginx-1.16.1]# ./configure -prefix=/usr/local/nginx-1.16 --with-http_mp4_module
[root@oldboy nginx-1.16.1]# yum install pcre pcredevel -y
[root@oldboy nginx-1.16.1]# yum install zlib zlibdevel -y
(2)編譯
[root@oldboy nginx-1.16.1]# make
(3)安裝
[root@oldboy nginx-1.16.1]# make install
(4)測(cè)試
ln -s /usr/local/nginx-1.16/ /usr/local/nginx /usr/local/nginx/sbin/nginx
最后瀏覽器訪問該服務(wù)器的IP地址即可

圖示.png
源碼包編譯過程

圖示.png