GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak vytvořit server úložiště Ubuntu

Tato příručka ukáže, jak nakonfigurovat server místního úložiště založený na Ubuntu Bionic, ale lze jej přizpůsobit předchozí verzi Ubuntu nebo dokonce jakékoli distribuci používající Aptitude jako hlavní systém správy balíčků, jako je Debian nebo Mint. Obvykle budete chtít nastavit místní úložiště, abyste ušetřili šířku pásma internetu.

V tomto tutoriálu se naučíte:

  • Jak nainstalovat požadovaný software na server
  • Jak vybrat, která úložiště se mají zrcadlit na serveru
  • Jak zrcadlit výběr úložišť lokálně na serveru
  • Jak nakonfigurovat klienta Linux pro použití serveru místního úložiště

Jak je uvedeno výše, neuvažujeme o veřejném nebo národním zrcadle pro tento tutoriál, ale pokud jej chcete implementovat, zvažte následující:

  • Šířka pásma vaší sítě se stává velmi důležitou
  • Musíte zaregistrovat úložiště do seznamu zrcadel Ubuntu
  • Zrcadlo musíte synchronizovat alespoň čtyřikrát denně
  • Protože musíte zrcadlit všechny předchozí verze, možná budete potřebovat 2 TB nebo více místa na disku


Aktualizace seznamu balíčků z místního úložiště.

Požadavky na software a použité konvence

Softwarové požadavky a konvence příkazového řádku systému Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém Ubuntu 18.04.2 (Bionic Beaver) LTS
Software Apache http 2.x, apt-mirror
Jiné Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz, Minimálně 200 GB místa na disku pro úložiště
Konvence # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz
$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel

Jak vytvořit server úložiště Ubuntu krok za krokem

  1. Instalace požadovaného softwaru na server.

    Jako první krok potřebujeme nainstalovat Apache HTTP Server, který je součástí balíčku s názvem apache2 , pomocí příkazu:

    $ sudo apt install apache2

    Instalace Apache HTTP

    Poté se ujistěte, že služba běží při spuštění:

    $ sudo systemctl enable apache2
    

    Pokud je vše v pořádku, přesuneme se do výchozího adresáře DocumentRoot (což je /var/www/html).
    Tam pak můžeme vytvořit podadresář /var/www/html/ubuntu a přiřadit jej příslušnému vlastníkovi, v tomto případě www-data (uživatel, pod kterým běží Apache HTTP).

    $ sudo mkdir -p /var/www/html/ubuntu
    $ sudo chown www-data:www-data /var/www/html/ubuntu
    

    Důrazně se doporučuje, aby DocumentRoot nebo alespoň podsložka ubuntu byla na souborovém systému, který patří k logickému svazku; tímto způsobem jej můžeme zvětšit online bez prostojů.
    V době mého testování je 171,5 GiB absolutně minimální prostor potřebný pro zrcadlení balíčků src; takže pro plánování do budoucna se doporučuje mít na disku alespoň 300 GiB.

    Toto je hlavně odhad při výběru jedné verze Ubuntu; pokud je potřeba zrcadlit balíčky pro různé verze, požadavky na prostor se značně zvýší.

  2. Hlavním nástrojem, který nám umožňuje vytvořit místní úložiště, je apt-mirror , pro instalaci spusťte:

    $ sudo apt install apt-mirror
    

    V případě, že balíček není nalezen, nezapomeňte nejprve aktualizovat seznam balíčků pomocí:

    $ sudo apt update
    
  3. Výběr repozitářů k zrcadlení na serveru.

    Jakmile je apt-mirror nainstalován, můžeme vytvořit záložní kopii jeho konfiguračního souboru /etc/apt/mirror.list , poté se ujistěte, že řádek obsahuje volbu set base_path ukazuje na správnou cestu k našemu úložišti (ve výchozím nastavení je /var/spool/apt-mirror ).

    $ sudo cp /etc/apt/mirror.list /etc/apt/mirror.list.org
    

    Nyní tedy můžete pomocí svého oblíbeného editoru (například vi nebo nano) změnit volbu base_path v souboru mirror.list na /var/www/html/ubuntu; musíte také určit, že zrcadlíte bionické distro (změňte příslušně, pokud máte jinou verzi Ubuntu) repozitáře, vždy v konfiguračním souboru mirror.list.

    konfigurační soubor mirror.list

    V případě, že na disku nemáte mnoho místa, můžete se rozhodnout nezrcadlit balíčky src; takže zakomentujete relativní řádky:

    konfigurační soubor mirror.list

    Dále zkopírujete důležitý skript do /var/www/html/ubuntu/var/

    $ sudo mkdir -p /var/www/html/ubuntu/var 
    $ sudo cp /var/spool/apt-mirror/var/postmirror.sh /var/www/html/ubuntu/var/
    
  4. Zrcadlení vybraných úložišť lokálně na serveru.

    Nyní je čas vytvořit místní zrcadlo, mějte na paměti, že počáteční zrcadlení (z archive.ubuntu.com pouze pro tento tutoriál) může zabrat spoustu času a zpomalit vaše připojení, takže bych vám doporučil začít tuto úlohu v noci.
    Chcete-li začít zrcadlit vzdálené repozitářské balíčky na místní server, jednoduše spusťte příkaz:

    $ sudo apt-mirror
    

    Pokud potřebujete, můžete tento proces přerušit (klasickou kombinací CTRL+C) a restartovat později; bude pokračovat od místa, kde bylo přerušeno.

    Nakonec se dostaneme do bodu, kdy jsou provedeny skripty clean.sh a postmirror.sh, což je znamením, že proces zrcadlení byl dokončen.

    Konec procesu zrcadlení.

  5. Konfigurace procesu automatické synchronizace pomocí plánovače cron.

    Po dokončení naší první synchronizace musíme vytvořit úlohu cron, abychom se ujistili, že máme automaticky aktuální místní úložiště; například chceme, aby se tato úloha spouštěla ​​každou noc ve 2:00, a proto:

    $ sudo crontab -e
    

    Poté upravíme crontab a přidáme následující řádek:

    00 	02 	*	 *	 *	/usr/bin/apt-mirror
    

    A uložte a ukončete (pomocí vi, nano nebo jiného nastaveného editoru).

Konfigurace klienta Linux pro použití serveru místního úložiště

  1. Konfigurace seznamu místního úložiště.

    V každém klientovi, který bude používat naše lokální úložiště, musíme upravit konfigurační soubor /etc/apt/sources.list zadáním našeho místního úložiště a zakázáním jakéhokoli vzdáleného.

    V našem případě byly staženy následující repozitáře:

    Místní úložiště serveru

    POZNÁMKA

    Doporučuje se zakomentovat jakýkoli řádek v /etc/apt/sources.list soubor odkazující na úložiště, která nejsou zrcadlena na našem serveru, například v tomto případě libovolný řádek začínající deb-src a obsahující bionic-backports byly okomentovány.

    Pokud tak neučiníte, může se zobrazit chyba
    Release file has not been found při spuštění příkazu apt update na klientovi.

    Nejprve nahradíme jakýkoli řetězec archive.ubuntu.com naší místní zrcadlovou IP, v tomto případě 10.0.0.42. Vaše místní IP adresa se samozřejmě může lišit.

    $ sudo  sed -i.bak0 "s/archive\.ubuntu\.com/10\.0\.0\.\42/g" /etc/apt/sources.list
    

    Tento příkaz vytvoří záložní soubor /etc/apt/sources.list.bak0 a nahraďte všechny archive.ubuntu.com řetězec s 10.0.0.42 .

    Další úprava probíhá opět takto:

    $ sudo  sed -i.bak1 "s/ubuntu/ubuntu\/mirror\/archive\.ubuntu\.com\/ubuntu/g" \ /etc/apt/sources.list
    

    To je nutné, protože apt-mirror připojí cestu mirror/archive.ubuntu.com/ubuntu k naší základní cestě. Zde bude vytvořen další záložní soubor

    /etc/apt/sources.list.bak1.
    

    Pro účely tohoto tutoriálu pouze zrcadlíme balíčky nebo úložiště z archive.ubuntu.com; samozřejmě můžete přidat další neoficiální úložiště do souboru mirror.list na serveru, ale pak tam musíte znovu spustit apt-mirror a podle toho upravit na libovolném klientovi soubor sources.list.

  2. Aktualizujte index místního úložiště.
    Nyní se musíte ujistit, že port 80 není blokován klientským firewallem, a poté můžete spustit:

    $ sudo apt update
    

    A jste připraveni vyrazit.

    Aktualizace seznamu balíčků z místního úložiště.

Závěr

Nastavení místního úložiště v Ubuntu není obtížné, jak by se mohlo zdát, a může se hodit za předpokladu, že máte dostatečné zdroje místní sítě a disku.


Ubuntu
  1. Jak nainstalovat PostgreSQL na Ubuntu 18.04

  2. Jak vytvořit zálohu

  3. Jak nainstalovat Zimbru 8.6 na server Ubuntu 14.04

  1. Jak vytvořit uživatele Sudo na Ubuntu

  2. Jak nainstalovat MySQL na Ubuntu 18.04

  3. Jak nasadit Mattermost na Ubuntu 18.04

  1. Jak nastavit server OpenVPN na Ubuntu 18.04

  2. Jak nainstalovat Minecraft Server na Ubuntu 18.04

  3. Jak nainstalovat Nginx na Ubuntu 20.04