Aktualizace:
Vypadá to, že úložiště Packup GitHub bylo odstraněno. Nikde na internetu jsem to nenašel. Doporučuji vám všem, abyste hledali jiné alternativy.
Před chvílí jsme napsali průvodce, který popisoval, jak instalovat balíčky offline v Ubuntu a jeho deriváty. Dnes totéž uděláme v Arch Linuxu. Tato příručka vás naučí instalovat balíčky na libovolné offline systémy Arch Linux. Tímto způsobem můžete výrazně ušetřit šířku pásma internetu, pokud máte mnoho systémů Arch Linux. Nemusíte opakovaně stahovat balíčky nebo aktualizovat všechny systémy Arch Linux ve vaší síti. Stačí aktualizovat jeden systém Arch Linux (říkejme tomu hlavní nebo serverový systém) a předat stažené aktualizace z hlavního systému všem ostatním systémům Arch v síti. Nezáleží na tom, zda ostatní systémy musí mít připojení k internetu nebo ne. Zde je Packup přijde vhod. Jedná se o jednoduchý skript, který vám umožňuje sdílet aktualizace přes USB klíčenku nebo externí pevný disk. Hlavním cílem nástroje Packup je snížit šířku pásma internetu nebo povolit jakékoli offline systémy možným způsobem pomocí pacman a všechny pomocné programy AUR, jako je Yay . Tento stručný návod popisuje, jak rychle sdílet aktualizace přes USB nebo externí disk s jakýmkoli offline systémem Arch Linux.
Packup – skript pro rychlé sdílení aktualizací přes USB disk v Arch Linuxu
Pro demonstrační účely této příručky budeme používat dva systémy Arch Linux, jeden s připojením k internetu a druhý bez připojení k internetu. A také potřebujeme USB klíčenku nebo externí HDD s dostatečným prostorem.
Kroky, které je třeba provést na obou systémech (offline a online systémech)
Nainstalujte NodeJS na všechny systémy. NodeJS je k dispozici ve výchozích úložištích, takže jej můžete nainstalovat pomocí Pacman, jak je znázorněno níže.
$ sudo pacman -S nodejs npm
Pokud chcete přenášet balíčky AUR, musíte mít na svém systému Arch Linux nainstalovaného libovolného pomocníka AUR. Nainstalujte Yay pomocí následujícího odkazu .
- Jak nainstalovat Yay In Arch Linux
Kroky, které je třeba provést v systému s podporou internetu (online)
Přejděte do systému připojeného k internetu a zapojte USB nebo externí disk. Přejděte na jednotku USB a naklonujte projekt Packup.
$ cd /run/media/sk/bce5f14a-097a-41c5-88ec-c38e20410182/
$ git clone https://github.com/cookiengineer/packup;
Obsah úložiště Packup GitHub bude naklonován do adresáře s názvem „Packup“ na vašem USB nebo externím disku.
Přepněte se do adresáře "Packup":
$ cd packup/
Spuštěním následujícího příkazu zazálohujte všechny dostupné místní balíčky a index balíčků na váš USB disk.
$ ./backup.js;
To bude chvíli trvat v závislosti na počtu dostupných balíčků ve vašem systému.
Nakonec spusťte následující příkaz:
$ sync;
Před vyjmutím jednotky USB musíte spustit výše uvedený příkaz.
Nyní bezpečně vyjměte jednotku USB a přejděte do systému offline.
Postup v offline systému
Zapojte USB disk a přejděte do adresáře "Packup" na USB disku. Připojil jsem svůj USB disk pod /mnt .
$ cd /mnt/packup/
Dále aktualizujte index pro pacman pomocí příkazu:
$ sudo cp ./sync/*.db /var/lib/pacman/sync/;
Potom spusťte následující příkaz:
$ ./upgrade.js;
Tento příkaz zobrazí příkaz pacman k ruční aktualizaci z místních balíčků (pomocí 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
Navíc, pokud vám chybí balíčky, které je třeba stáhnout z hlavního počítače (systém s podporou internetu), zobrazí se příkaz, který musíte provést na druhém počítači (pomocí "pacman -Sw --cachedir").
:: Execute this to download upgrades into local package cache: cd "/run/.../packup"; sudo pacman -Sw --cachedir "/run/.../packup" geoip ghostscript;
Můžete tedy použít výše uvedený příkaz v systému připojeném k internetu a stáhnout chybějící balíčky a znovu je spustit v offline systému, aby se balíčky aktualizovaly. Zní dobře? Opravdu!
Jakmile skončíte s Packup, můžete vyčistit staré balíčky z jednotky USB, jak je znázorněno níže.
$ cd /path/to/usb/drive/packup/
$ ./clean.js;
$ sync;
Před vyjmutím USB disku nezapomeňte spustit příkaz „sync“.
A to je zatím vše. Jak můžete vidět, Packup je jednoduchý, ale velmi užitečný nástroj, který je třeba mít ve vašem arzenálu. Máte-li mnoho systémů Arch Linux, můžete tento nástroj použít k výraznému snížení šířky internetového pásma.