Как сделать зеркало debian

Настройка зеркала архивов Debian

Зеркалировать или нет?

Хотя мы высоко ценим все новые зеркала, каждый будущий держатель зеркала должен быть уверен, что он может ответить на следующие вопросы, перед тем как начнёт создавать собственное зеркало:

Что зеркалировать

Главная страница зеркала перечисляет архивы, доступные для зеркалирования.

Более точную информацию о размерах зеркала смотрите на странице размер зеркала.

Архив debian-security/ содержит обновления безопасности, выпущенные командой безопасности Debian. Хотя это кажется интересным для каждого, мы не рекомендуем нашим пользователям использовать зеркала для получения обновлений безопасности, а даже наоборот просим их загружать обновления напрямую с нашей распределённой службы security.debian.org. НЕ рекомендуется зеркалировать debian-security.

Откуда зеркалировать

Заметьте, что ftp.debian.org не является каноническим местом размещения пакетов Debian, это лишь один из нескольких серверов, которые обновляются с внутреннего сервера Debian. Существует множество открытых зеркал, поддерживающих rsync, которые вполне подходят в качестве источника для зеркалирования. Используйте близкий к вам (в смысле его сетевого размещения) сервер.

Как зеркалировать

Рекомендуемым методом зеркалирования является набор сценариев ftpsync, который доступен в двух видах:

В качестве протокола зеркалирования мы настоятельно рекомендуем использовать rsync.

Не используйте собственные сценарии и не используйте rsync в режиме одного прохода. Использование ftpsync гарантирует, что обновления осуществляются так, что apt работает нормально. В частности, ftpsync обрабатывает переводы, содержимое и другие файлы метаданных, чтобы при работе apt не возникли ошибки при выполнении проверок в случае, когда пользователь обновляет список пакетов во время обновления зеркала. Более того, этот инструмент также создаёт trace-файлы, содержащие дополнительную информацию, которая полезна для определения того, работает зеркало или нет, какие архитектуры на нём доступны, а также откуда оно обновляется.

Частичное зеркалирование

Принимая во внимание большой размер архива Debian, можно посоветовать зеркалировать лишь часть архива. Открытые зеркала должны содержать все выпуски (тестируемый, нестабильный и т. д.), но можно ограничить набор архитектур. В файле настройки ftpsync имеются опции ARCH_EXCLUDE и ARCH_INCLUDE для этой цели.

Когда зеркалировать

Главный архив обновляется четыре раза в день. Зеркала обычно начинают обновляться около 3:00, 9:00, 15:00 и 21:00 (всё время по UTC), но это не фиксированное время, и вы не должны опираться на эти времена при зеркалировании.

Важно, чтобы ваше зеркало было синхронизировано с основным архивом. Как минимум 4 обновления в течение 24 часов требуются для того, чтобы гарантировать, что ваше зеркало является действительным отражением архива. Помните, зеркала, которые не синхронизированы с основным архивом, не будут указаны в списке официальных зеркал.

Учтите, что если ваш сайт настроен на работу с проталкивающим механизмом, вам нет необходимости беспокоиться обо всём этом.

Проталкивающее зеркалирование

Проталкивающее зеркалирование — это форма зеркалирования, которую мы разработали для уменьшения времени, требуемого для того, чтобы изменения в архиве достигли зеркал. Сервер зеркала использует триггер SSH, чтобы сказать клиентскому зеркалу обновить себя. Более подробное описание того, как это работает, почему оно безопасно, а также как настроить проталкивающее зеркалирование, смотрите в полном разъяснении.

Рекомендуемые добавочные установки

Более того, убедитесь, что включены перечени файлов каталога (с полными именами файлов) и выполняется переход по символьным ссылкам. Если вы используете Apache, то можно использовать следующие настройки:

Как добавить зеркало в список зеркал

Если вы хотите, чтобы ваше зеркало было представлено в официальном списке зеркал, то

После настройки зеркала его следует зарегистрировать в Debian, тогда оно будет включено в официальный список зеркал. Для подачи заявки используется простая веб-форма.

Вопросы и о проблемах можно писать на mirrors@debian.org.

Списки рассылки

Существует два открытых списка рассылки касательно зеркал Debian, debian-mirrors-announce и debian-mirrors. Всем сопровождающим зеркал настоятельно рекомендуется подписаться на список на новостной список рассылки, поскольку он используется для распространения важных новостей. Этот список модерируется, количество сообщений в нём крайне мало. Второй список рассылки предназначен в первую очередь для общих обсуждений и открыт для всех.

Если у вас имеются какие-либо вопросы, ответы на которые вы не нашли на этих страницах, то вы можете связаться с нами по адресу mirrors@debian.org или задать ваши вопросы через IRC, канал #debian-mirrors в сети irc.debian.org.

Замечания для закрытых (частичных) зеркал

Если вы хотите, чтобы ваше зеркало было доступно только в вашей сети, либо вам требуются только определённые наборы пакетов (например, только стабильный выпуск), то утилита debmirror тоже вам подойдёт.

Источник

Добавление репозитория в Debian, примеры sources.list

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian

Данная статья является частью единого цикла статьей про сервер Debian.

Цели статьи

Введение

Существуют repository не только для операционных систем, но и для программ. Там могут быть как уже скомпилированные и готовые к установке пакеты, так и исходные коды программных продуктов. Большинство репозиториев содержат готовые пакеты. Это относится и к стандартным репозиториям Debian.

Помимо официальных списков реп (транскрипция от сокращения repo), есть сторонние, которые поддерживают производители программ либо энтузиасты. Нужно внимательно относиться к сторонним репозиториям, не добавлять их бездумно. Там может располагаться любое ПО, в том числе не то, что заявлено изначально. Либо они могут быть взломаны для размещения вредоносных программ.

Управлением пакетами и работой с repository lists в Debian занимаются отдельные утилиты:

В данной статье мы не будем рассматривать их отличия, так как это тема отдельного повествования. Все они работают со стандартным списком источников, который в общем случае располагается в /etc/apt/sources.list.

Если у вас еще не настроен сервер с Debian, рекомендую мои материалы на эту тему:

Список репозиториев в sources.list

Изначально, содержимое sources.list будет зависеть от того, какой источник для пакетов вы выбрали во время установки debian. К примеру, в моем случае он выглядит следующим образом.

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian

В общем случае файл sources.list имеет следующую структуру:

deb и deb-srcтип архива, бинарные пакеты (deb) или пакеты с исходным кодом (deb-src)
http://site.example.com/debianurl репозитория
distributionпсевдоним релиза (buster, stretch и т.д.), либо класс релиза (stable, oldstable и т.д.)
componentmain, contrib или non-free набор пакетов

Про псевдонимы релизов и наборы пакетов мы поговорим ниже более подробно в соответствующем разделе.

Помимо основного файла sources.list, репозитории могут располагаться в отдельных файлах в директории /etc/apt/sources.list.d. Формат файлов такой же, как и у основного. Обычно туда добавляют отдельно в каждый файл набор источников для какой-то определенной программы. Например, proxmox размещает в отдельном файле свой платный репозиторий.

Типы официальных репозиториев в Debian

Stable

Стабильная ветка официального текущего релиза Debian. То есть это самая свежая и актуальная версия, которую рекомендуется использовать. Официальный репозиторий стабильной ветки содержит проверенный набор программ, зачастую не очень свежих версий. Это плата за надежность. В production рекомендуется использовать пакеты именно из репозитория stable.

В этом репозитории регулярно публикуются все актуальные обновления текущего релиза. Он формируется из ветки Testing, которая в момент релиза новой версии превращается в Stable.

Oldstable

Testing

Testing содержит в себе текущее состояние разработки нового стабильного релиза. После его выхода, testing становится stable. Пакеты в testing попадают из репы unstable. В общем случае использовать репозиторий testing следует только для тестовых целей, чтобы посмотреть на новый релиз.

Для этого можно сделать чистую установку текущего релиза, затем изменить repo со stable на testing и обновиться. Вы получите свежую версию тестового релиза, который готовится к выпуску.

Unstable (sid)

Sid это repository с самым свежим программных обеспечением. Проблема только в том, что оно еще не протестировано достаточным образом для использования. Если вы точно уверены, что вам нужен новый софт и он не сломает вам систему, можете поставить его из unstable репозитория. Но в общем случае, делать это не рекомендуется.

Даже если софт из unstable не повредит работе системы, он может нарушить зависимости пакетов, так что потом может быть затруднительно вернуться на stable repo.

Experimental

Experimental repository содержит пакеты и утилиты, которые в данный момент только разрабатываются и находятся в состоянии alpha версии. Этот репозиторий предназначен только для разработчиков и тестировщиков. Если будете его использовать в рабочей системе, с большой долей вероятности, сломаете ее.

Backports

Backports repository выступает как некий компромисс между стабильностью основной ветки и свежим набором программ из ветки testing. Репозиторий backports содержит пакеты преимущественно из testing и немного из unstable (только для обновлений безопасности).

Пакеты из backports там, где это возможно, устанавливаются без новых библиотек, которых нет в стабильной версии. Это сделано, чтобы можно было с большей вероятностью опять вернутся на stable, в случае необходимости.

Если вам нужен софт из веток testing и unstable, лучше использовать backports. Репозиторий создан как раз для того, чтобы не прыгать между этими ветками.

Это все, что касается деления репозиториев по классам релизов. Есть еще небольшое разделение, которое явно нигде не описано и сразу не догадаешься, как оно работает и устроено.

Security updates

Существует отдельный репозиторий только для security updates. Добавить его можно следующим образом:

Смысл этого repo в том, что сюда попадают только обновления безопасности и ничего другого. Вы можете настроить автоматическую установку пакетов из этого репозитория и не переживать о том, что что-то сломается. обновления сюда попадают максимально быстро после выпуска исправлений.

Stable-updates

Еще один отдельный репозиторий для установки пакетов через механизм stable-updates. Добавить его можно следующим образом.

Ветки main, contrib, non-free

Каждый официальный репозиторий Debian имеет по 3 ветки:

Теперь, зная всю теорию по репозиториям в Debian, мы можем проанализировать файл sources.list, который мы получили после установки. В нем подключены 3 репозитория с ветками main.

Это stable repo текущего релиза. Далее идет security repository для установки свежих обновлений безопасности.

И в завершении stable-updates для получения стабильных обновлений до очередного Point Release текущего дистрибутива.

Признаюсь честно, я много лет администрировал сервера с Debian, а до конца не понимал, что у меня записано в sources.list. Разобрался полностью только сейчас, когда писал статью. До этого просто копировал по привычке конфиги с репами. Догадывался о чем там речь, но точно не знал. Теперь восполнил пробел и поделился с вами информацией.

Добавить новый repository в debian

Теперь от теории перейдем к практике. Давайте вручную добавим новый репозиторий в Debian. К примеру, нам нужно установить на сервер стабильную версию MariaDB. Для этого добавим ее репозиторий. Это можно сделать либо в файле sources.list, но лучше создать отдельный в sources.list.d. Назовем его MariaDB.list.

После подключения репозитория, надо добавить его gpg ключ.

Теперь обновим кэш пакетов. Это нужно делать каждый раз после подключения нового репозитория.

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian

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

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian

Как я уже говорил, для настройки нового репозитория, вы могли просто добавить эти же 2 строки с параметрами в sources.list напрямую. Разницы никакой нет.

Зеркало официального репозитория yandex mirror

Repository yandex mirror можно так же использовать для сетевой установки систем.

Sources List Generator (генератор списка репозиториев)

В интернете есть сервисы, которые автоматически формируют sources.list на основе ваших потребностей. Вы можете использовать как свой генератор, так и воспользоваться готовым.

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

К примеру, я указал в List Generator, что мне надо подготовить список репозиториев со следующими параметрами:

В итоге получил вот такой sources.list

К нему еще список gpg ключей для импорта. В принципе, к списку у меня претензий нет. Все по делу. Нужно только проверить php и mariadb repository. Мне предложенные не знакомы.

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

Локальный репозиторий

Дальше создаем каталог для локального репозитория и конфиг.

Конфиг делаем примерно следующего содержания.

Выполняем инициализацию репозитория.

Теперь можно добавлять пакеты в локальный репозиторий следующей командой.

Для того, чтобы подключить локально новый репозиторий, его нужно добавить в sources.list.

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

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian

Архив репозиториев для старых версий

Ниже представляю готовые настройки репозиториев для прошлых версий.

Источник

Как сделать зеркало debian

Введение: Нужно было сделать зеркало Debian в локальной сети университета. Под эти нужны была создана виртуальная машина и установлен «голый» Debian.
IP адрес достался по-наследству от старого зеркала: 192.168.1.200.
Были поставленыVMware Tools. И всё сконфигурировано для работы.

++ Далее пойдем по порядку.

В нашем университете используется прокси-сервер,
и чтобы установить его по умолчанию в файл конфигурации окружения /etc/profile необходимо внести изменения, а именно добавить:

Ставим пакет, который будет выполнять зеркалирование apt-mirror:

apt-get install apt-mirror

Дальше нам надо определиться с файлом конфигурации зеркала. Что будет зеркалироваться и откуда.
Так как через университетский прокси доступно быстрое зеркало http://ftp.mgts.by/debian

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#

# etch’s section
#deb http://ftp.mgts.by/debian etch main contrib non-free

# lenny’s section
deb http://ftp.mgts.by/debian lenny main contrib non-free

# squeeze’s section
deb http://ftp.mgts.by/debian squeeze main contrib non-free

# sid’s section
deb http://ftp.mgts.by/debian sid main contrib non-free

##
## Cleaner configuration example
##

Что бы не было ошибки при выполнении /var/spool/apt-mirror/var/clean.sh надо пропатчить /usr/bin/apt-mirror

Содержание файла apt-mirror.patch:

Логинимся под пользователем apt-mirror:

Запускаем программу зеркалирования:

Оговорюсь, в зависимости от количества дистрибутивов выбранных для зеркалирования и каталогов для зеркалирования объем скачанной информации может быть очень большой.

Поэтому запаситесь терпением и работайте в screen’е 🙂
Должны быть всякие сообщения о том что всё ок. А при ошибке надо гуглить и исправлять.

После окончания успешного зеркалирования выполняем /var/spool/apt-mirror/var/clean.sh:

Чистим от «шлаков». И освобождаются Гигабайты пространства.

Настраиваем автоматизацию по планировщику. Правим планировщик для проверки зеркала каждый день в час ночи и очистки от «мусора» в четыре утра.

В /etc/cron.d/apt-mirror добавляем:

#
# Regular cron jobs for the apt-mirror package
#
0 1 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log
0 4 * * * root /bin/bash /var/spool/apt-mirror/var/clean.sh > /var/spool/apt-mirror/var/cron_cl.log
#

Ставим apache2 для доступа по HTTP к зеркалу:

apt-get install apache2

Делаем доступ к зеркалу через HTTP, для этого создаем симлинк:

Далее делаем, как и положено, ссылку на stable дистрибутив:

Дальше надо сделать доступ по FTP к зеркалу с помощью сервера ProFTPd:

apt-get install proftpd

Конфигурируем его. Правим /etc/proftpd/proftpd.conf под наши нужды:

UseIPv6 off
IdentLookups off

ServerName «Debian mirror»
ServerType standalone
DeferWelcome off

MultilineRFC2228 on
DefaultServer on
ShowSymlinks on

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

# Port 21 is the standard FTP port.
Port 21

User proftpd
Group nogroup
Umask 022 022

TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log

User ftp
Group nogroup
UserAlias anonymous ftp
DirFakeUser on ftp
DirFakeGroup on ftp
# Пускать пользователей с шелом /bin/false и прочей невалидной ерундой
RequireValidShell off
MaxClients 100

Так как ProFTPd не понимает симлинки за пределы текущего FTP-дерева, то сделаем хитрый mount:

Чтобы не пропадал mount после перезагрузки в /etc/fstab вносим изменения, добавляем в конец строчку:

/var/spool/apt-mirror/mirror/ftp.mgts.by/debian /home/ftp/debian none bind

Всё. Готово. Для уверенности можем перезагрузить сервер и понять, что всё будет работать 🙂

1. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от Sakalou Aliaksei Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian on 16-Апр-10, 10:45
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от ffsdmad (ok) on 16-Апр-10, 11:04

как то сложно, наверняка это же можно сделать проще

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
3. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от gyouja on 16-Апр-10, 12:07

Конечно можно. Пакет debmirror гораздо удобнее, причем синкает еще и образы для netboot и т.п.:

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
8. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от ffsdmad (ok) on 19-Апр-10, 11:20

debmirror это который на руби и тормозит по полчаса в процессе обновления и который не умеет снимать блокировки?
спасибо, пользуюсь им же, но уже сыт по горло

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
10. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от RapteR Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian(ok) on 19-Апр-10, 11:35

>debmirror это который на руби и тормозит по полчаса в процессе обновления
>и который не умеет снимать блокировки?
>спасибо, пользуюсь им же, но уже сыт по горло

debmirror это который на перле, не тормозит и с блокировками проблем нет. вот в лог проезжания ниженаписанного скрипта:

Update local repo started at 07:00:01 (04/19/10)
Ubuntu repo updated at 07:01:23
OpenOffice.org repo updated at 07:01:26
UNetBootIn repo updated at 07:01:27
VirtualBox repo updated at 07:01:29
Qutim repo updated at 07:01:30
Qutim.SVN repo updated at 07:01:32
WINE repo updated at 07:01:33
Update complite!

Общий вес репозиториев составляет 47 ГБ и все это перелопачивает 4 пенек ворочия стареньким ide винтом за полторы минуты. Толщина канала в инет 10 мегабит. ЧЯДНТ?

>Конечно можно. Пакет debmirror гораздо удобнее, причем синкает еще и образы для netboot и т.п.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
4. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от Анон on 16-Апр-10, 13:00

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. «+1 + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от RapteR Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian(ok) on 16-Апр-10, 13:59

Убунтологам на заметку. Качается репа + несколько полезных сторонних репозиториев под i368 и amd64.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. «Создание локального зеркала Debian (apt-mirror + ProFTPd + A. « + / –Как сделать зеркало debian. Смотреть фото Как сделать зеркало debian. Смотреть картинку Как сделать зеркало debian. Картинка про Как сделать зеркало debian. Фото Как сделать зеркало debian
Сообщение от PavelR (??) on 16-Апр-10, 16:32

требуется вести собственный форк пакета, т.е. определенные опции сборки + свои патчи применяются к некоторому стандартному пакету. При этом хочется его обновлять патчами «из апстрима», не теряя своих патчей. Подскажите как производить эту процедуру и какие инструменты применять.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *