背景:linux 服务器在无外网的情况下,一般需要以rpm的方式安装一些程序包,例如gcc等,而一个rpm程序包又依赖很多其他的rpm包,往往一个依赖包的版本不对也安装不成功
转载自:https://blog.csdn.net/suoyanming/article/details/88819150
一、解决方式
1、解决方式: 在能联网外网的linux服务器上通过yum下载指定的rpm程序包,并将其依赖对应版本的其他包也一起下载下来,再上传到不能上外网的服务器上进行安装
2、 上centos 网站或其他镜像资源网站查找并下载,例如:http://vault.centos.org/6.4/os/x86_64/Packages/, 寻找过程及查找其依赖比较麻烦,建议采用第一种方式
二、yum下载rpm包
1、直接通过yum下载,选择不安装模式
yum install --downloadonly <package-name> --downloaddir= <addr>
例如: yum install --downloadonly gcc --downloaddir= /home
版本低的linux系统没有自动安装 yum-plugin-downloadonly 插件 ,需要安装一下 yum install yum-plugin-downloadonly
2、使用yumdownloader(推荐)
yumdownloader 是下载rpm包的工具,是yum-utils 下的子集,所以安装时直接将yum-utils 安装即可
yum install yum-utils
默认下载到当前目录: yumdownloader <package-name>
常用附加参数: --resolve 下载关联依赖包 --destdir 指定目录
例如下面的命令:
yumdownloader ftp --resolve --destdir=/home/packages/ftp-client-package/
该命令会将ftp包及其所有依赖下载到 /home/packages/ftp-client-package 目录下