Packup – Arch Linux 中通过 USB 驱动器快速共享更新的脚本

内容

  1. 更新:
  2. Packup – Arch Linux 中通过 USB 驱动器快速共享更新的脚本
    1. 在两个系统上执行的步骤(离线和在线系统)
    2. 在启用 Internet 的(在线)系统上执行的步骤
    3. 在离线系统上执行的步骤
    4. 帮助我们帮助您:

更新:

看起来 Packup GitHub 存储库已被删除。 我在互联网上的任何地方都找不到它。 我建议大家寻找其他选择。

不久前,我们编写了一个指南,描述了如何 在 Ubuntu 中离线安装软件包 及其衍生物。 今天,我们将在 Arch Linux 中做同样的事情。 本指南教您在任何离线 Arch Linux 系统上安装软件包。 如果您有很多 Arch Linux 系统,这样做可以大大节省您的 Internet 带宽。 您无需在网络上的所有 Arch Linux 系统上重复下载或更新软件包。 只需更新一个 Arch Linux 系统(让我们称之为主系统或服务器系统)并将下载的更新从主系统传递到网络中的所有其他 Arch 系统。 其他系统是否必须具有 Internet 连接并不重要。 这是哪里 收拾行李 派上用场。 这是一个简单的脚本,允许您通过 USB 记忆棒或外部硬盘共享更新。 Packup 实用程序的主要目标是减少 Internet 带宽或允许任何离线系统以可能的方式使用 吃豆人 以及任何 AUR 辅助程序,例如 . 这个简短的教程描述了如何通过 USB 或外部驱动器将更新快速共享到任何离线 Arch Linux 系统。

Packup – Arch Linux 中通过 USB 驱动器快速共享更新的脚本

出于本指南的演示目的,我们将使用两个 Arch Linux 系统,一个有 Internet 连接,另一个没有 Internet 连接。 而且,我们还需要有足够可用空间的 U 盘或外置硬盘。

在两个系统上执行的步骤(离线和在线系统)

在所有系统上安装 NodeJS。 NodeJS 在默认存储库中可用,因此您可以使用 Pacman 安装它,如下所示。

$ sudo pacman -S nodejs npm

如果你想传输 AUR 包,你必须在你的 Arch Linux 系统上安装任何 AUR 助手。 参考以下链接安装 .

  • 如何在 Arch Linux 中安装 Yay

在启用 Internet 的(在线)系统上执行的步骤

转到您的 Internet 连接系统,然后插入您的 USB 或外部驱动器。 更改为您的 USB 驱动器并克隆 Packup 项目。

$ cd /run/media/sk/bce5f14a-097a-41c5-88ec-c38e20410182/
$ git clone https://github.com/cookiengineer/packup;

Packup GitHub 存储库的内容将被克隆到 USB 或外部驱动器中名为“Packup”的目录中。

切换到“打包”目录:

$ cd packup/

运行以下命令将所有可用的本地包和包索引备份到您的 USB 驱动器。

$ ./backup.js;

这将需要一段时间,具体取决于系统中可用的软件包数量。

最后,运行以下命令:

$ sync;

在移除 USB 驱动器之前,您必须运行上述命令。

现在,安全地移除 USB 驱动器并转到您的离线系统。

在离线系统上执行的步骤

插入 USB 驱动器并转到 USB 驱动器中的“Packup”目录。 我已将我的 USB 驱动器安装在 /mnt.

$ cd /mnt/packup/

接下来,更新 pacman 使用命令的索引:

$ sudo cp ./sync/*.db /var/lib/pacman/sync/;

然后,运行以下命令:

$ ./upgrade.js;

此命令将显示 pacman 命令以从本地包手动更新(使用 吃豆子-U)。

:: Execute this to upgrade from local package cache:  cd "/run/.../packup"; sudo pacman -U gcc-7.1.1-4-x86_64.pkg.tar.xz gdb-common-8.0-1-x86_64.pkg.tar.xz

此外,如果您缺少需要从主计算机(支持 Internet 的系统)下载的软件包,它将显示您需要在另一台计算机上执行的命令(使用“pacman -Sw –cachedir”)。

:: Execute this to download upgrades into local package cache:  cd "/run/.../packup"; sudo pacman -Sw --cachedir "/run/.../packup" geoip ghostscript;

因此,您可以在联网的系统上使用上述命令并下载丢失的软件包,然后在离线系统中再次执行以更新软件包。 听起来,很棒? 的确!

完成 Packup 后,您可以清理 USB 驱动器中的旧软件包,如下所示。

$ cd /path/to/usb/drive/packup/
$ ./clean.js;
$ sync;

不要忘记在移除 USB 驱动器之前运行“同步”命令。

而且,这就是现在的全部。 如您所见,Packup 是一个简单但非常有用的实用程序,需要保留在您的武器库中。 如果你有很多 Arch Linux 系统,你可以使用这个工具来大大节省 Internet 带宽。

资源:

  • 打包 GitHub 存储库

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: Facebook | 推特 | 谷歌加 | 领英 | RSS订阅

祝你有美好的一天!!

在 Arch Linux 中离线安装包节点js包管理PackupPacman 在 Arch Linux 中通过 USB 驱动器快速共享更新