一,搭建一个网络仓库
1.准备两台虚拟机,作为客户端和服务端
(1)服务端:10.0.0.200
(2)客户端:10.0.0.199
2.准备软件包(光盘,缓存,联网下载,同步)
服务端配置:
1.挂载光盘
mount /dev/cdrom /mnt
2..通过ftp共享软件包存放的目录
[root@oldboy ~]# yum install vsftpd -y
[root@oldboy ~]# systemctl start vsftpd
[root@oldboy ~]# systemctl stop firewalld
[root@oldboy ~]# setenforce 0
3.将光盘中的软件包都拷贝至ftp的共享目录下
[root@oldboy ~]# mkdir /var/ftp/centos7/
[root@oldboy ~]# find /mnt/ -type f -name ".rpm" -exec cp {} /var/ftp/centos7/ ;
4.将共享的目录设置成yum仓库
[root@oldboy ~]# yum install createrepo -y
[root@oldboy ~]# createrepo /var/ftp/centos7/
客户端配置:
1.关闭所有的公网yum仓库
[root@oldboy-199 yum.repos.d]# gzip /etc/yum.repos.d/
2.新建一个repo文件,文件中的baseurl指向服务端
vim /etc/yum.repos.d /ftp-centos7.repo
[ftp-centos7]
name = This is Base Repo
baseurl = ftp://10.0.0.200/centos7/
enable = 1
gpgcheck = 0
3.测试是否能正常安装软件
例如:yum install httpd -y
二,如果客户端需要通过共享的仓库安装zabbix软件? 怎么办?
服务端:
1.创建一个zabbix的目录
mkdir /var/ftp/zabbix
2.获取zabbix的软件包
当本地没有zbbix包时,需要联网下载
例如:
(1)下载zabbix到zabbix_1.txt
curl
httxps://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/ > zabbix_1.txt
vim zabbix_1.txt
(2)过滤出有a href的行重定向到zzabbix_2.txt
grep "<a href" zabbix_1.txt
grep "<a href" zabbix_1.txt | awk -F '"' '{print "wget https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/"$2}' > zabbix_2.txt
(3) 执行zabbix_2.txt
chmod +x zabbix_2.txt
(4)找到所有以rpm结尾的文件移动到/var/ftp/zabbix
[root@oldboy ~]# find ./ -type f -name ".rpm" -exec
mv {} /var/ftp/zabbix/ ;
3.将zabbix目录生成为一个yum仓库
[root@oldboy ~]# createrepo /var/ftp/zabbix/
** zabbix还缺少的四个软件包*
wget http://repo.zabbix.com/nonsupported/rhel/7/x86_64/fping-3.10-1.el7.x86_64.rpm
wget http://repo.zabbix.com/nonsupported/rhel/7/x86_64/iksemel-1.4-
2.el7.centos.x86_64.rpm
wget http://repo.zabbix.com/nonsupported/rhel/7/x86_64/iksemel-devel-1.4-
2.el7.centos.x86_64.rpm
wget http://repo.zabbix.com/nonsupported/rhel/7/x86_64/iksemel-utils-1.4-
2.el7.centos.x86_64.rpm
客户端:
1.客户端新建一个repo文件指向服务端提供的zabbix仓库 10.0.0.199
vim /etc/yum.repos.d/ftpzabbix.repo
[ftp-zabbix]
name = ftp share zabbix repo
baseurl = ftp://10.0.0.200/zabbix/
enable = 1
gpgcheck = 0
2.客户端测试zabbix仓库是否可用
[root@oldboy-199 ~]# yum clean all
[root@oldboy-199 ~]# yum install zabbix-agent
[root@oldboy-199 ~]# yum install zabbix-get
[root@oldboy-199 ~]# yum install zabbix-server
如果客户端需要通过共享的仓库安装nginx软件? 怎么办?
curl http://nginx.org/packages/centos/7/x86_64/RPMS/
三,源码包管理
congiure,生成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
1.编译
[root@oldboy nginx-1.16.1]# make
2.安装
[root@oldboy nginx-1.16.1]# make install
3.测试
ln -s /usr/local/nginx-1.16/ /usr/local/nginx
/usr/local/nginx/sbin/nginx
4.最后浏览器访问该服务器的IP地址即可