Jak pobrać całe repozytorium za pomocą apt-get?

8

Czy jest jakiś sposób na pobranie wszystkich repozytoriów Ubuntu apt-get? Szukam czegoś takiego:

sudo apt-get install --download-only *

Aby uzyskać dostęp do pobranego repozytorium w katalogu /var/cache/apt/archives/.

Nejat
źródło
Tak. Rzeczywiście zmieniłem adres repozytoriów na komputer lokalny i chcę pobrać wszystko stamtąd.
Nejat
Prawdopodobnie nie chcesz czegoś takiego: apt-mirror.github.io
azzid
Próbowałem tego, ale nie działa poprawnie, gdy zmieniam adres repozytoriów w mirror.list. Gdzie jak te same adresy działają dobrze, gdy zdefiniowano w sources.list. Więc szukam alternatywnego sposobu.
Nejat
Czy masz wystarczająco dużo miejsca na dysku, aby pomieścić wszystkie te pakiety?
blade19899

Odpowiedzi:

9

Przede wszystkim nie jest to wygodny sposób. Zamiast tego powinieneś użyć metody wspomnianej tutaj . Ale jako odpowiedź na pytanie.

  • Najpierw utwórz plik zawierający nazwy wszystkich dostępnych pakietów apt-cache.

    apt-cache  dumpavail |grep -oP "(?<=Package: ).*" >> packagelist
    

    Spowoduje to utworzenie pliku packagelistze wszystkimi dostępnymi pakietami.

  • Teraz utwórz prosty skrypt, aby pobrać wszystkie pakiety obecne w pliku packagelist

    #!/bin/bash
    for package in `cat packagelist`
     do
        apt-get install -y --download-only $package   
     done
    
  • Zapisz to.

  • Zrób to za pomocą

    chmod +x your_script_name
    
  • Teraz otwórz terminal i zaloguj się jako root

    sudo -i
    cd /folder/of/you/script
    ./you_script_name
    

Będzie pobrać wszystkie dostępne pakietu zależnie od /etc/apt/sources.list w /var/cache/apt/archiveskatalogu

g_p
źródło
0

Możesz użyć narzędzia o nazwie apt-cacher. Możesz sprawdzić ten link, aby uzyskać więcej informacji. Mam nadzieję, że to pomoże.

Avishek Saha
źródło
To nie pobiera wszystkich repozytoriów. Po otrzymaniu niektórych pakietów tylko te są buforowane. Chcę jakoś buforować je wszystkie.
Nejat
Następnie możesz użyć apt-mirror sprawdź ten link
Avishek Saha