YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。 省去了rpm和编译的痛苦,对没有互联网环境的内网机器也能享受飞一样的感觉。
这个时候我们需要配置一台连接局域网和Internet的本地的yum仓库,这样即使在断网的情况下,本地局域网的电脑,也可以通过本地yum仓库来安装软件。
1.配置服务端
挂载光盘或者从网上同步rpm包
方法1: mount /dev/sr0 /mnt #临时挂载光盘
方法2: rsync -zaP --exclude-from /repo/exclude_7.txt rsync://rsync.mirrors.ustc.edu.cn/centos/7.6.1810/ /repo/centos #同步科大源rsync仓库
方法3: 使用reposync 同步yum源
yum install -y createrepo yum-utils #下载reposync命令
[root@nfs ~]# yum repolist
repo id repo name status
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10019
*epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13197
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 413
repolist: 26656
#########
-r 指定 repo id
-p 指定rpm下载目录
[root@nfs ~]# reposync base/7/x86_64 -p /data #同步yum源中的rpm包
2.安装ftp本地服务
yum install -y vsftpd #安装ftp服务
systemctl start vsftpd #开启服务
systemctl status vsftpd #设置开机自启动
3.收集rpm包
cp /mnt/Packages/* /var/ftp/location/ #将光盘rpm包放入ftp目录下
4.开启yum缓存
yum install -y createrepo
createrepo /var/ftp/location/ #生成yum源
createrepo /var/ftp/yum/ #设置定时任务
客户端配置
添加yum仓库
vim /etc/yum.repos.d/ftp.repo
[location_ftp]
name=location_ftp
baseurl=ftp://$ip/location/
enabled=1
gpgcheck=0
[yum_ftp]
name=yum_ftp
baseurl=ftp://$ip/yum/
enabled=1
gpgcheck=0
查看yum源
yum repolist
小技巧,批量下载zabbix rpm包
curl https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/ >1.txt
awk -F '"' '{print $2}' 1.txt >2.txt
awk -F '"' '/rpm/ {print $2}' 1.txt >2.txt
sed -r 's#(.*)#wget https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/1#g'2.txt|bash