Как скачать все хранилище с помощью apt-get?


8

Есть ли способ просто загрузить все репозитории Ubuntu, используя apt-get? Я ищу что-то вроде:

sudo apt-get install --download-only *

Так что я могу получить доступ к загруженному хранилищу в каталоге /var/cache/apt/archives/.



Да. Действительно, я изменил адрес репозиториев на локальный компьютер, и я хочу скачать все оттуда.
Неджат

Вы, вероятно, не хотите что-то вроде: apt-mirror.github.io
azzid

Я пробовал это, но он не работает должным образом, когда я изменяю адрес хранилища в mirror.list. Где одни и те же адреса работают хорошо, когда определены в sources.list. Поэтому я ищу альтернативный путь.
Неджат

Достаточно ли у вас дискового пространства для размещения всех этих пакетов?
blade19899

Ответы:


9

Прежде всего, это не удобный способ. Вместо этого вы должны использовать метод, упомянутый здесь . Но как ответ на вопрос.

  • Сначала создайте файл, который содержит имена всех доступных пакетов, использующих apt-cache.

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

    Это создаст файл packagelistсо всеми доступными пакетами.

  • Теперь создайте простой скрипт для загрузки всех пакетов, представленных в файле. packagelist

    #!/bin/bash
    for package in `cat packagelist`
     do
        apt-get install -y --download-only $package   
     done
    
  • Сохрани это.

  • Сделайте его исполняемым с помощью

    chmod +x your_script_name
    
  • Теперь откройте терминал и войдите как root

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

Он загрузит все доступные пакеты в зависимости от вашего /etc/apt/sources.list в /var/cache/apt/archivesкаталоге


0

Вы можете использовать инструмент под названием apt-cacher. Вы можете проверить эту ссылку для получения дополнительной информации. Надеюсь, поможет.


Сюда не попадают все репозитории. Когда вы получаете некоторые пакеты, они кешируются. Я хочу каким-то образом кешировать их все.
Неджат

Тогда вы можете использовать apt-mirror, чтобы проверить эту ссылку
Avishek Saha
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.