我们的服务器离线运行,我们需要安装许多 yum 包,例如 oracle-jdk、elasticsearch、nginx 等。
有什么方法可以下载 rpm 依赖项,以便我们可以在服务器上离线安装它们?
答案1
在互联网连接的机器上维护本地 CentOS 镜像,并rsync
添加一个接受 rsync 连接的公共 CentOS 镜像。然后,您可以将这些目录复制到 USB 记忆棒上,并将其用作安装源。它们已经包含作为存储库所需的元数据,因此您只需将安装程序指向它们即可。
$ du -sh /srv/www/mirrors/centos/7.1.1503/{os,updates}/x86_64
7.1G /srv/www/mirrors/centos/7.1.1503/os/x86_64
2.1G /srv/www/mirrors/centos/7.1.1503/updates/x86_64
对于第三方软件包,您也可以使用reposync
命令行工具自行镜像这些软件包,该工具会将 yum 存储库的内容下载到本地文件系统,并createrepo
使用目录中的一组 RPM 创建 yum 存储库。
请记住,存储库不一定非要在网络上。它们可以位于本地文件系统上,例如硬盘、DVD-ROM 或 USB 记忆棒。
答案2
答案3
答案4
yum install -y xxx yyy --downloadonly
那么所有的 rpm 都会被下载到/var/cache/yum
。