很多生产环境下服务器是不能访问外网的,所以导致无法使用网络源来解决软件依赖包的问题,装一款软件所需的依赖包几十上百或上千,逐个去网上下载后手动装是不现实的,下面介绍四种方法来解决这一难题。
方法一:downloadonly插件
1.安装插件
yum -y install yum-download
2.下载httpd软件包到当前文件夹内
yum -y install httpd -downloadonly -downloaddir=./
值得注意的是,downloadonly插件不但适用于yum update,也适用于yum install。
以下载nginx、php、mariadb为例
yum install --downloadonly --downloaddir=./nginx nginx
yum install --downloadonly --downloaddir=./php php php-fpm
yum install --downloadonly --downloaddir=./mariadb mariadb mariadb-server
方法二:yum-utils中的yumdownloader
1.安装yum-utils
yum -y install yum-utils
2.使用yumdownloader下载软件包httpd
yumdownloader httpd
单纯的使用yumdownloader 只会下载给定名称的既定RPM包,安装时候所需要的一些依赖不会被下载。如果要下载依赖加上"--resolve"参数,如果要指定下载目录。加上"--destdir"参数
yumdownloader httpd --resolve --destdir=/opt/yum/
方法三:利用yum的缓存功能
默认情况下,yum在安装软件包后会自动清理软件包,修改配置,使yum不再清理软件包
vim /etc/yum.conf中修改keepcache = 0改为keepcache = 1
/etc/init.d/yum-updatesd restart
yum -y install httpd
这时软件包已经安装下载,目录为/var/cache/yum
方法四:基于nginx代理来使内网主机能使用网络源安装软件包
可以看我自己写的比较详细的博客 地址在此