搭建软件仓库
1.两台服务器,一台模拟客户机,一台模拟服务器
2.两个IP地址要不同
一、使用光盘搭建内网软件仓库
搭建一个通过内网下载的本地仓库,比直接链接公网仓库下载更快
1.搭建一个服务端(10.0.0.200)
1.先关闭服务端的防火墙和selinux
[root@oldboy ~]# systemctl stop firewalld 临时关闭防火墙
[root@oldboy ~]# setenforce 0 临时关闭selinux
2.挂载光盘
[root@oldboy ~]# mount /dev/cdrom /mnt/
3.通过ftp,共享 软件包存放的目录
[root@oldboy ~]# yum install vsftpd
[root@oldboy ~]# systemctl start vsftpd 启动
4.将光盘中的软件包都拷贝到ftp的共享目录下
[root@oldboy ~]# mkdir /var/ftp/centos7 创建软件包存放的目录(共享目录)
[root@oldboy ~]# find /mnt/ -type f -name "*.rpm" -exec cp {} /var/ftp/centos7/ \; 将光盘中的软件包存放在共享目录下
5.将共享的目录设置成yum仓库,创建repodata仓库
这个仓库每次新增软件需要重新生成一次
[root@oldboy ~]# yum install createrepo -y 安装命令
[root@oldboy ~]# createrepo /var/ftp/centos7/
2.搭建一个客户端(10.0.0.201)
1.关闭所有公网的yum仓库
[root@oldboy201 ~]# gzip /etc/yum.repos.d/*
2.新建一个centos7软件包(.repo)文件,通过baseurl指向服务端
[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.测试是否能安装软件
[root@oldboy201 ~]# yum clean all 清除所有yum数据和缓存
[root@oldboy201 ~]# yum install httpd -y
[root@oldboy201 ~]# yum repolist 查看可用的仓库
二、从公网下载创建内网软件仓库
下载一个提供nginx软件相关的仓库
1.搭建一个服务端(10.0.0.200)
1.先关闭服务端的防火墙和selinux
[root@oldboy ~]# systemctl stop firewalld 临时关闭防火墙
[root@oldboy ~]# setenforce 0 临时关闭selinux
2.通过ftp,共享 软件包存放的目录
[root@oldboy ~]# yum install vsftpd
[root@oldboy ~]# systemctl start vsftpd 启动
3.创建软件包存放的目录(共享目录)
[root@oldboy ~]# mkdir /var/ftp/local_nginx
4.获取nginx软件包
①将网页的源码保存到nginx1.txt
[root@oldboy /var/ftp]# curl http://nginx.org/packages/centos/7/x86_64/RPMS/ > nginx1.txt
②将nginx1.txt中的软件包地址截取出来,前面加个wget(下载) 和网址,保存到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或.\运行nginx2.txt,下载软件包
[root@oldboy /var/ftp]# cd local_nginx/ 切换目录
[root@oldboy /var/ftp/local_nginx]# sh ../nginx2.txt 运行nginx2.txt将软件包下载到local_nginx目录下
5.将local_nginx目录生成一个yum仓库,有新软件需要重新生成
[root@oldboy ~]# createrepo /var/ftp/local_nginx
2.搭建一个客户端(10.0.0.201)
1.关闭所有公网的yum仓库
[root@oldboy201 ~]# gzip /etc/yum.repos.d/*
2.客户端新建一个软件仓库.repo,将他用baseurl指向服务端的共享文件
[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.测试
[root@oldboy201 ~]# yum clean all 清除所有yum数据和缓存
[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)测试
ln -s /usr/local/nginx-1.16/ /usr/local/nginx /usr/local/nginx/sbin/nginx
最后浏览器访问该服务器的IP地址即可

图示.png
源码包编译过程

图示.png