yum的离线化安装--yumdownloader和yum downloadonly
很多的时候,我们需要快速搭建项目环境,而环境搭建有的时候是比较繁琐并且有限制的,比如,内网环境,没有外网,Linux的yum外部源是无法使用的,例如,阿里云的yum源,163的yum源,华科大的yum源,这些yum源需要能够访问外部网络才可以使用。
通常,这样的情况,我们有两个选择,第一,是自建一个本地源,本地源使用系统安装ISO文件,挂载到系统内,然后mount即可使用,这样的本地源软件可选择多,但系统安装ISO文件通常很大,文件传输花费时间比较多。第二,在有网的环境,配置外部源,将所需的软件包括它的所有依赖包下载后,上传到内网环境的服务器安装即可。
那么,第二种方式无疑是最为便捷的一种方式了,在此,我以zabbix4.0为例,详细介绍如何离线化安装。
一,配置外部源,在此,我使用的是阿里云的yum源,zabbix当然还需要使用epel源,这两个源的配置没什么好说的。
vim /etc/yum.repos.d/zabbix.repo
[zabbix-4.0]
name=zabbix-4.0
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/
enable=1
gpgcheck=0
[k8s]
name=k8s
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enable=1
gpgcheck=0
yum install epel-release -y
如此,两个外部源就已经配置好了。
二,将zabbix4.0的相关包,包括所有依赖全部下载。
下载这些软件包有两种方式,yumdownloader命令 和yum命令
(1)yumdownloader命令---此命令默认是没有的,需要执行命令: yum install yum-utils -y 安装
zabbix是一系列软件,包括zabbix-server ,zabbix-server-mysql 等等。因此,下载命令如下:
yumdownloader zabbix zabbix-server zabbix-server-mysql --resolve --destdir=/root/zabbix
以上命令意思为: --resolve 下载相关依赖,指定下载的文件存放路径为 root/zabbix,执行该命令后,在zabbix这个文件夹下就会看到zabbix的rpm包和它所有的相关依赖。
(2)yum install zabbix zabbix-server zabbix-server --downloadonly --downloaddir=/root/zabbix
该条命令和上面的命令是一样的效果
三,以上所下载的包上传到内网环境的服务器,rpm命令安装所下载的rpm文件即可安装完zabbix