我正在 ubuntu 10.4(未连接互联网)上安装服务器。它需要一个名为 m2crypto 的包。没有可用的开放端口,所以我无法使用“apt-get thing”。我试图在另一台机器(windows)上下载 m2crypto 包,但是当我尝试安装时,报告了多个依赖项。因此,我需要一种方法来获取所有具有所有依赖项的包。我听说过 apt -get offline,但它也不可用。有什么办法吗,因为我需要紧急这样做。
答案1
这会很麻烦,因为 apt 就是为解决这类依赖问题而创建的。不过,您可以运行dpkg -I package.deb
以列出依赖项。然后,您将需要下载所有这些软件包(当前未安装的软件包)。这些软件包可能(并且很可能)具有更多依赖项。只需反复操作,直到找到所有依赖项。
你也可以通过以下网站进行操作:这个并下载所有依赖项。
这将是一个巨大的 PIA,也是 apt 等存在的主要原因,但在某种程度上,这将使您启动并运行。
答案2
/var/cache/apt/archives
在另一台 Ubuntu 12.04 机器上安装该软件包(最好是相当简单的安装)。然后您应该在这台机器上找到安装它所需的所有依赖项。
答案3
M2Crypto 可从 PyPI 获得,此外,Ubuntu 上还有“python-m2crypto”软件包。对于您来说(离线,显然不需要 Python 虚拟环境),我建议安装“python-m2crypto”软件包。
您可以找到 Ubuntu 软件包信息,包括依赖项http://packages.ubuntu.com。目前,该网站不再提供 Ubuntu 10 的信息。对于 Ubuntu 12,“python-m2crypto”软件包的信息位于http://packages.ubuntu.com/precise/python-m2crypto。
然后,您可以从那里以 .deb 格式下载您尚未拥有的软件包(“python-m2crypto”及其您尚未拥有的依赖软件包,递归解析依赖关系),将 .deb 文件传输到您的离线机器,然后使用以下命令在那里安装它们:
dpkg -i <deb-file>