在 Windows 上下载所有依赖项并在 Ubuntu 上安装它们

在 Windows 上下载所有依赖项并在 Ubuntu 上安装它们

我需要在我的 Ubuntu 32 位 VM 上安装 openssh。但是我无法直接安装,apt-get install openssh-server因为它无法解决许多必需的依赖项。这要归咎于我公司超级诡异的代理设置。现在我这里有一台安装了 openssh 的 Windows 机器和一台 64 位 Ubuntu。因此我无法将 .deb 从这台机器复制粘贴到我的 Ubuntu VM 并进行安装,因为我的 deb 包具有不同的架构(32 位与 64 位)。

所以我继续从本网站(谢天谢地,我公司的 IS 团队还没有发现这个网站!!!)。但是我不知道 openssh 需要哪些软件包作为其依赖项。我检查了我的 Ubuntu 64 位机器。通过var\cache\apt\archive按日期排序,我意识到在那台机器上安装 openssh 的那天,安装了以下软件包:

  • openssh-sftp 服务器
  • openssh-服务器
  • openssh-客户端
  • libck-connector0

所以我做了以下事情:

  • 我从以下网址下载了上述 32 位版本的 debs网站然后运行sudo dpkg -i *.deb。它说它需要ssh-import-id包。
  • 我下载ssh-import-id并再次运行上述命令。它说“ssh-import-id尚未按要求配置python-requests”。
  • 我下载了它并运行了命令。它说“python-requests尚未按要求配置python-urllib3”。
  • 于是我下载python-urllib3并运行了该命令。这次它显示“libpython2.7-stdlib:i386 (2.7.9-ubuntu3)python-urllib3 (<< 1.9.1-3)安装”

我猜我安装了错误的版本,而且在安装失败的每个步骤中,有些软件包已安装,有些未安装,而已安装的软件包配置不正确。所以每次运行时sudo dpkg -i,我都应该卸载之前安装的软件包。

我觉得这很痛苦。而且很难知道并安装所有依赖项的正确版本。有什么方法可以:

  1. 捕获虚拟机上当前安装的软件包列表,
  2. 将其上传到某个网站,
  3. 指定下一步要安装的内容,然后
  4. .deb作为回报,该网站会告诉我我需要哪些包

我应该从上述网站手动下载所有这些内容,然后安装它们。

有这样的办法吗?我还有什么其他选择吗?

答案1

下载并安装适合您的架构的 gdebi.deb。
下载 openssh-server.deb。右键单击它并选择“使用 gdebi 安装”选项。Gdebi 将逐一告诉您缺少的依赖项。下载每个依赖的 deb 包并使用 Gdebi 逐一安装它们。我知道当需要满足许多依赖项时这是一件非常痛苦的事情,但这是我所知道的唯一安全方法。我只是希望您能有耐心。

相关内容