Загрузка сторонних программ в локальный репозиторий с использованием apt-mirror [duplicate]

Наличие локального репозитория может быть очень полезным. Можно использовать rsync для создания зеркала репозитория, но это приводит к загрузке всех загружаемых версий, даже более старых, и будет включать файлы для архитектур, которые могут не понадобиться.

apt-mirror позволяет один для выборочного выбора частей репозитория. mirrorkit предоставляет интерфейс для apt-mirror.

Каков наилучший способ создания локального зеркала репозитория для выбранных частей архивов Ubuntu?

Например, можно было бы включить:

Main, Restricted, Universe, Multiverse, All Ubuntu и Lubuntu, но исключить другие производные, такие как Kubuntu и Xubuntu. Только AMD64 и i386, но исключают другие архитектуры. Только Доверяющий Тахр, но не Точный Пингвин или Утопический Единорог.

Возможно, вы захотите настроить этот процесс так, чтобы он загружался из локального зеркала, а не из основных архивов.

Как создать локальный репозиторий с помощью apt-mirror и mirrorkit для выбранной архитектуры, выпуска или варианта Ubuntu?

7
задан 21 February 2017 в 16:43

6 ответов

Репозиторий CD и репозиторий программного обеспечения представляют собой два разных компонента (у них даже есть отдельные страницы Launchpad: cdmirrors и archivemirrors). Поэтому их зеркалирование - две разные задачи. Кроме того, в то время как различные ароматы имеют разные папки в репозитории CD, они совместно используют репозиторий программного обеспечения. Таким образом, вы можете выборочно отражать изображения на каждый вкус, но не программное обеспечение. Для репозитория программного обеспечения вы можете выборочно зеркалировать на основе:

release (trusty, precise и т. Д.) Архитектура (amd64, i386 и т. Д.) Тип пакета (двоичный [ deb] vs source [deb-src]) каналы (trusty, trusty-updates, trusty-backports и т. д.) разделов (main, multiverse и т. д.)

To зеркалировать репозиторий программного обеспечения, используйте cdmirrors .

apt-mirror настроен с использованием /etc/apt/mirror.list. Он имеет формат, очень похожий на archivemirrors . В файле конфигурации, установленном пакетом, есть несколько закомментированных опций, в которых перечислены их значения по умолчанию. Если вы хотите, вы можете раскомментировать и изменить их.

Чтобы зеркалировать репозиторий, вам нужно добавить строку к mirror.list, как и для sources.list:

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

По умолчанию используется зеркало только для архитектуры хоста, поэтому, если вы используете 64-разрядный Ubuntu, зеркалируется только amd64. Вам нужно добавить еще одну строку формы:

deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

И для исходных пакетов:

deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

Если вы ищете достаточно полное зеркало, эти строки будут минимальный (я бы также рекомендовал канал -updates):

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe deb http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe deb-i386 http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe

Наконец, вам нужно добавить /etc/apt/mirror.list , чтобы пакеты больше не были доступны в репозитории. Отфильтрован для удаления:

clean http://us.archive.ubuntu.com/ubuntu

Скажите, что ваши переменные (по умолчанию):

set base_path /var/spool/apt-mirror set mirror_path $base_path/mirror set skel_path $base_path/skel set var_path $base_path/var set cleanscript $var_path/clean.sh

Затем:

release (trusty, precise и т. д.) clean.sh (который будет набором команд rm для удаления устаревших пакетов и каталогов) будет /var/spool/apt-mirror/var/clean.sh. (amd64, i386 и т. д.)

Пакет apt-mirror устанавливает задание cron (/etc/cron.d/apt-mirror), которое вы должны отредактировать для включения (по раскомментируя строку, содержащую /usr/bin/apt-mirror). Вы также должны добавить задание cron для запуска clean.sh (я запускаю его еженедельно).

Конечно, вы должны заменить http://us.archive.ubuntu.com./ubuntu на любое зеркало, которое вы предпочитаете.

8
ответ дан 17 July 2018 в 19:27

Репозиторий CD и репозиторий программного обеспечения представляют собой два разных компонента (у них даже есть отдельные страницы Launchpad: cdmirrors и archivemirrors). Поэтому их зеркалирование - две разные задачи. Кроме того, в то время как различные ароматы имеют разные папки в репозитории CD, они совместно используют репозиторий программного обеспечения. Таким образом, вы можете выборочно отражать изображения на каждый вкус, но не программное обеспечение. Для репозитория программного обеспечения вы можете выборочно зеркалировать на основе:

release (trusty, precise и т. Д.) Архитектура (amd64, i386 и т. Д.) Тип пакета (двоичный [ deb] vs source [deb-src]) каналы (trusty, trusty-updates, trusty-backports и т. д.) разделов (main, multiverse и т. д.)

To зеркалировать репозиторий программного обеспечения, используйте cdmirrors .

apt-mirror настроен с использованием /etc/apt/mirror.list. Он имеет формат, очень похожий на archivemirrors . В файле конфигурации, установленном пакетом, есть несколько закомментированных опций, в которых перечислены их значения по умолчанию. Если вы хотите, вы можете раскомментировать и изменить их.

Чтобы зеркалировать репозиторий, вам нужно добавить строку к mirror.list, как и для sources.list:

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

По умолчанию используется зеркало только для архитектуры хоста, поэтому, если вы используете 64-разрядный Ubuntu, зеркалируется только amd64. Вам нужно добавить еще одну строку формы:

deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

И для исходных пакетов:

deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

Если вы ищете достаточно полное зеркало, эти строки будут минимальный (я бы также рекомендовал канал -updates):

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe deb http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe deb-i386 http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe

Наконец, вам нужно добавить /etc/apt/mirror.list , чтобы пакеты больше не были доступны в репозитории. Отфильтрован для удаления:

clean http://us.archive.ubuntu.com/ubuntu

Скажите, что ваши переменные (по умолчанию):

set base_path /var/spool/apt-mirror set mirror_path $base_path/mirror set skel_path $base_path/skel set var_path $base_path/var set cleanscript $var_path/clean.sh

Затем:

release (trusty, precise и т. д.) clean.sh (который будет набором команд rm для удаления устаревших пакетов и каталогов) будет /var/spool/apt-mirror/var/clean.sh. (amd64, i386 и т. д.)

Пакет apt-mirror устанавливает задание cron (/etc/cron.d/apt-mirror), которое вы должны отредактировать для включения (по раскомментируя строку, содержащую /usr/bin/apt-mirror). Вы также должны добавить задание cron для запуска clean.sh (я запускаю его еженедельно).

Конечно, вы должны заменить http://us.archive.ubuntu.com./ubuntu на любое зеркало, которое вы предпочитаете.

8
ответ дан 23 July 2018 в 20:11

Репозиторий CD и репозиторий программного обеспечения представляют собой два разных компонента (у них даже есть отдельные страницы Launchpad: cdmirrors и archivemirrors ). Поэтому их зеркалирование - две разные задачи. Кроме того, в то время как различные ароматы имеют разные папки в репозитории CD, они совместно используют репозиторий программного обеспечения. Таким образом, вы можете выборочно отражать изображения на каждый вкус, но не программное обеспечение. Для репозитория программного обеспечения вы можете выборочно зеркалировать на основе:

  • release (trusty, precise и т. Д.).
  • архитектура (amd64, i386 и т. д.)
  • тип пакета (двоичный [deb] vs source [deb-src])
  • каналы (trusty, trusty-updates, trusty-backports, и т. д.)
  • разделы (main, multiverse и т. д.)

Чтобы зеркалировать репозиторий программного обеспечения, используйте apt-mirror .

apt-mirror сконфигурирован с использованием /etc/apt/mirror.list . Он имеет формат, очень похожий на sources.list . В файле конфигурации, установленном пакетом, есть несколько закомментированных опций, в которых перечислены их значения по умолчанию. Если вы хотите, вы можете раскомментировать и изменить их.

Чтобы зеркалировать репозиторий, вам нужно добавить строку к mirror.list, как и для sources.list:

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

По умолчанию используется зеркало только для архитектуры хоста, поэтому, если вы используете 64-разрядный Ubuntu, зеркалируется только amd64. Вам нужно добавить еще одну строку формы:

deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

И для исходных пакетов:

deb-src http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe

Если вы ищете достаточно полное зеркало, эти строки будут минимальный (я также рекомендую канал -updates):

deb http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty main multiverse restricted universe
deb-i386 http://us.archive.ubuntu.com/ubuntu trusty-security main multiverse restricted universe

Наконец, вам нужно добавить строку clean , чтобы пакеты больше не были доступны в репозитории фильтруются для удаления:

clean http://us.archive.ubuntu.com/ubuntu

Скажем, что ваши переменные являются (по умолчанию):

set base_path    /var/spool/apt-mirror
set mirror_path  $base_path/mirror
set skel_path    $base_path/skel
set var_path     $base_path/var
set cleanscript $var_path/clean.sh

Затем:

  • Репозиторий будет (f29) /var/spool/apt-mirror/mirror/us.archive.ubuntu.com/ubuntu)
  • clean.sh (который будет набором команд rm для удаления устаревших пакетов и каталогов) будет /var/spool/apt-mirror/var/clean.sh.
  • Журналы перейдут на /var/spool/apt-mirror/var.

Пакет apt-mirror устанавливает задание cron (/etc/cron.d/apt-mirror), которое вы должны отредактировать для включения (по раскомментируя строку, содержащую /usr/bin/apt-mirror). Вы также должны добавить задание cron для запуска clean.sh (я запускаю его еженедельно).

Конечно, вы должны заменить http://us.archive.ubuntu.com./ubuntu на любое зеркало, которое вы предпочитаете.

8
ответ дан 5 August 2018 в 01:54

Я рекомендую apt-cacher для тех, у кого ограниченное пространство, или у тех, кто имеет высокие цены на интернет в своих странах.

apt-mirror, предположительно, требует не менее 15 ГБ для каждого аромата (32/64 бит) дистрибутив, который вы хотите. apt-cacher использует только те пакеты, которые вы установили.

Читайте Создайте локальный репозиторий Ubuntu с помощью Apt-Mirror и Apt-Cacher для получения дополнительной информации / инструкций.

2
ответ дан 17 July 2018 в 19:27

Я рекомендую apt-cacher для тех, у кого ограниченное пространство, или у тех, кто имеет высокие цены на интернет в своих странах.

apt-mirror, предположительно, требует не менее 15 ГБ для каждого аромата (32/64 бит) дистрибутив, который вы хотите. apt-cacher использует только те пакеты, которые вы установили.

Читайте Создайте локальный репозиторий Ubuntu с помощью Apt-Mirror и Apt-Cacher для получения дополнительной информации / инструкций.

2
ответ дан 23 July 2018 в 20:11

Я рекомендую apt-cacher для тех, у кого ограниченное пространство, или у тех, кто имеет высокие цены на интернет в своих странах.

apt-mirror, предположительно, требует не менее 15 ГБ для каждого аромата (32/64 бит) дистрибутив, который вы хотите. apt-cacher использует только те пакеты, которые вы установили.

Прочитайте Создайте локальный репозиторий Ubuntu с помощью Apt-Mirror и Apt-Cacher для получения дополнительной информации / инструкций.

2
ответ дан 8 August 2018 в 22:51

Другие вопросы по тегам:

Похожие вопросы: