我需要在无法访问Internet的系统上安装软件包(该软件包包含用于网卡的驱动程序)。
系统A具有Internet连接并运行Ubuntu 14;系统B没有互联网连接并运行Ubuntu16。
如何在系统A上以正确版本递归下载所有依赖项,然后可以将其安装在系统B上?
答案 0 :(得分:1)
我建议您在系统A上使用Ubuntu 16.04运行docker容器(或某种类型的虚拟化)。之后,您可以更新软件包索引(apt update
),然后在该系统上安装所需的软件包。最后,您可以将软件包索引从/var/lib/apt
复制,并将软件包本身从/var/cache/apt/archives
复制到系统B。
答案 1 :(得分:-1)
限制主机访问Internet是一个好习惯。但是,作为补丁程序管理解决方案,您应该设置一个本地镜像-这将集中整个组织的补丁程序需求。它不仅限于ubuntu,还可以托管多个Linux发行版镜像。您真正需要的唯一一件事就是大容量磁盘,也许可以对其进行镜像以实现一些非关键的弹性。这还将减少使用带宽的多服务器环境的使用,从而将带宽限制为单个主机一次将更新更新到其镜像。只要确保您有运行某个进程或脚本来定期检查更新即可。这样,您的主机就可以在需要时进行修补,并假设您处于针对各种* Nix平台的新兴威胁和漏洞管理之上。
我不太喜欢重新发明轮子,所以..这里有一些使用方法参考。
此后,您需要做的就是更改/etc/apt/sources.list,使其指向新的内部存储库以用于aptitude repos。您可以只复制那里存在的行,将服务器域名更改为本地服务器。然后,您不需要任何linux主机即可与网络外部的任何主机进行通信,而从镜像服务器中拉出一台服务器即可。肯定会帮助您完善安全需求。
对于基于RHEL的或yum,它在/etc/yum.repos.d/{reponame}.repo中配置