将存储库中的 deb 文件保存到自定义位置以进行离线安装

将存储库中的 deb 文件保存到自定义位置以进行离线安装

可能重复:
如何离线安装软件?

我想从存储库 (apt-get、aptitude) 下载并保存某些应用程序的一些 deb 文件(最好是它们的依赖项)到自定义位置而无需安装,这样我就可以在机器离线时安装这些应用程序。另外我想知道是否可以在 32 位机器上下载 64 位机器的 deb 文件。

答案1

您可以使用以下命令保存所有具有依赖关系的 deb 文件

sudo apt-get --download-only install packagename

这些文件将存储在 /var/cache/apt/archives 下

如果您需要使用另一台机器或操作系统下载 Ubuntu 软件包,请在 Synaptic 中检查所需的软件包,然后选择文件 > 生成包下载脚本。
您可以在此处下载 32 位和 64 位软件包进行离线安装

笔记:
首先运行 apt-get clean,这样目录就是空的。然后如果你想要(比如说)a2ps 包和所有依赖项,你应该输入
sudo apt-get --download-only install a2ps。这些包将存储在 /var/cache/apt/archives 中。你可以使用它进行离线安装。

您还可以在以下网站下载离线安装的软件包, http://packages.ubuntu.com/

答案2

我厌倦了在全新安装后重新安装所有软件,所以这就是我所做的......

mkdir /home/jj/Documents/Repository

并通过循环让它们到达那里...

for i in `ls -1 /var/cache/apt/archives` ; do sudo cp /var/cache/apt/archives/$i /home/jj/Documents/Repository ; done

它们归 root 所有,因此我“chown jj:jj *”,这样我就可以将它们复制到我的备份介质中。(我将 /home 设为 sda3,因此在(重新)安装期间手动分区设置会保存我的 /home 分区)。

要在 1 次 kickstart 中重新安装所有这些:

sudo dpkg -i /home/jj/Documents/Repository/*.deb

这是一个 bash 脚本,因为我们讨厌输入重复的东西。

#!/bin/bash
for i in `ls -1 /var/cache/apt/archives/` ; do sudo cp /var/cache/apt/archives/$i /home/jj/Documents/Repository ; done

您可以忽略此错误“cp:省略目录“/var/cache/apt/archives/partial””

我的是空的。

这是一个清理脚本作者:karthick87

答案3

凯瑞克斯可以从任何在线 Linux 或 Windows 计算机下载任何离线 Ubuntu 计算机的软件包。

只需在离线计算机上创建一个“Keryx 项目”,将其加载到在线计算机上以下载包,然后返回离线计算机进行安装。

答案4

如果它只是来自主存储库的某些内容,并且你不需要依赖项和内容,你可以尝试查找http://packages.ubuntu.com/

您可以将软件包下载到任何地方。但是如果它具有很多依赖项,那么在该站点上搜索所有依赖项并分别下载它们可能会很烦人。

相关内容