安装镜像而不从官方存储库下载所有软件包

安装镜像而不从官方存储库下载所有软件包

我首先要解释一下情况:

我有一台连接到 wifi 的笔记本电脑和一台无法连接到互联网的台式机(调制解调器离它太远),我想在最后一台电脑上安装一些软件。(两台电脑都运行 Ubuntu 12.04,并通过以太网电缆连接)

我已经寻找过解决方案,但我发现的只是使用一些应该已经安装在“无互联网 PC”上的软件。(Keryx、APTonCD……)

我想要做的是在我的笔记本电脑中创建一个镜像,其中包含我拥有的软件包(位于 /var/cache/apt/archive 中),并且我不想从官方存储库下载所有软件包,实际上我不需要它们。

有人能告诉我是否可以这样做吗?

谢谢,

答案1

有人能告诉我是否可以这样做吗?

是的,这是可能的,而且我整个 Ubuntu 生涯都是这样做的。在一台电脑上下载并在另一台电脑上使用软件包。

AptOnCD 可以作为一个单独的包下载,并安装在没有互联网的电脑上,我假设你可以这样做。但你不需要任何外部软件。虽然我在这里写了这两种方法。

AptOnCD 方法。

下载 AptOnCD

  • 从以下位置下载 AptOnCd这里

    根据部分二进制包,点击与您的机器架构相匹配的链接。如果您使用32位Ubuntu,则需要i386包,如果您的系统是64位,则可以下载amd64。

在此处输入图片描述

新的链接会给您带来一个页面,只需单击软件包版本链接即可。

在此处输入图片描述

然后点击新页面中的下载链接。

在此处输入图片描述

  • 将下载的.deb文件放在您的主目录中。

  • 打开终端,当您仍在主目录中时,运行此命令来安装该包
    sudo dpkg -i ./sudo dpkg -i aptoncd_0.1.98+bzr117-1.2_all.deb(AptOnCD 没有其他依赖项,因此可以独立安装). 文件名可能根据您选择的版本和架构而有所不同。

  • 安装完成后,按Super+A调出 Dash 应用程序镜头。在字段中输入aptoncd,单击图标即可启动它。

创建 ISO 文件作为存储库源使用。

当你启动AptOnCD时,软件会在默认窗口运行,该窗口只有两个按钮“创建”和“恢复”。
在此处输入图片描述

  • 点击创造按钮。它将自动扫描您计算机/var/cache/apt/archives文件夹中的所有.deb文件。扫描完成后,您将看到类似于下图的窗口。

在此处输入图片描述

  • 如果有的话,您可以添加其他文件夹中的其他包,例如下载的 aptoncd 包。也可以选择单个包。

  • 完成该过程后,单击“刻录”按钮,将出现如下所示的新窗口。

在此处输入图片描述

  • 在此窗口中,键入 iso 文件的名称,它将在其中创建该 iso,并选中“创建元包”选项,如果您想要安装所有包含的软件包,则无需在 Internet 上安装单个软件包。单击申请按钮。

  • 一段时间后,根据软件包的数量,它会询问您是否要立即刻录 iso 文件。您现在可以刻录 CD/DVD,但我选择否。检查主文件夹以查看是否已创建 iso 文件。

将 iso 文件添加为目标计算机中的源存储库。

  • 将 iso 文件复制到目标计算机中。我假设你将其复制到你的主文件夹中,并且 iso 文件的名称是aptoncd.iso

  • 打开终端,输入sudo mount ./aptoncd.iso /media/apt要挂载的 iso 目录/media/apt。如果提示“目录不存在”,则只需使用此命令创建一个目录sudo mkdir /media/apt,然后再次尝试挂载。

  • 挂载后,运行此命令将此新 cdrom 添加为存储库源。 sudo apt-cdrom add如果您看到类似的消息Repeat this process for the rest of the CDs in your set.,则该过程成功。

从新的 aptoncd 存储库安装

  • 如果您想安装一个包,只需将 iso 安装到/media/apt文件夹中即可。(参见上面的部分)。
  • 然后打开终端并运行sudo apt-get install package-name

本地存储库方法。

有很多比使用 AptOnCD 更简单的方法。尽管我已经包含了 AptOnCD 方法,因为问题中提到了这一点。

将所有 .deb 文件复制到目标计算机

您需要将从/var/cache/apt/archives文件夹下载的所有 .deb 文件复制到目标无互联网计算机中的合适文件夹中。我建议您复制名为 的文件夹中的所有文件,debs该文件夹本身位于名为 的文件夹中LocalRepo。这意味着 .deb 文件位于LocalRepo/debs文件夹中。您可以将LocalRepo文件夹放在任何您想要的地方。例如,我将其放在我的主目录中,即/home/anwar

因此,文件夹结构如下:

-/
 -/家
   -/安瓦尔
    -/LocalRepo
     -/debs

debs文件夹包含您下载的所有 deb 文件。

生成包索引文件

  • 打开终端并转到文件夹上方的文件夹Debs。在此示例中,它是/home/anwar/LocalRepo

  • LocalRepo文件夹中运行此命令:
    apt-ftparchive packages . > Packages
    它将Packages在 LocalRepo 目录中创建一个文件。

在存储库源列表中添加本地存储库

  • /etc/apt/sources.list以 root 权限打开文件
    sudo gedit /etc/apt/sources.list

  • 在文件顶部sources.list,放置如下一行。

     deb file:/home/anwar/LocalRepo /
    

    /home/anwar/LocalRepo用放置文件夹的实际目录名替换LocalRepo

  • 保存文件并退出 gedit。

更新软件包索引以便能够从本地仓库安装

  • sudo apt-get update在终端中运行,它将创建一个有关可用存储库的存储库源列表。因此,您新创建的本地存储库将被识别。

从本地存储库安装包。

  • 然后运行sudo apt-get install package-name
    package-name用实际的包替换)来安装您想要的存储库。

笔记:您将始终收到有关您的存储库不是“经过验证”的警告。在这种情况下,您可以忽略此类警告,因为您是从“经过验证”来源的软件包(即官方 Ubuntu 软件包档案)创建的存储库。

您可以通过--allow-unauthenticated在命令中添加开关来覆盖此警告。例如

 sudo apt-get install --allow-unauthenticated package-name

创建一个受信任的存储库:

如果你想创建一个受信任的本地存储库,你应该读这个。这是一篇关于这个话题的非常简单和非常好的文章

相关内容