Как организовать зеркало образов Debian для USB/CD/DVD
Чтобы держать зеркало образов CD Debian, вам нужна машина под управлением Linux или другого клона Unix с постоянным надёжным подключением к Интернет. Зеркала образов CD Debian хранят образы CD и DVD .iso различного размера, файлы jigdo (.jigdo и .template), файлы BitTorrent (.torrent) и проверочные файлы для этих образов (SHA512SUMS* и SHA256SUMS*).
- Главный сайт
- Зеркалирование через HTTP/FTP не рекомендуется
- Рекомендуется зеркалирование с помощью rsync
- Зеркалирование с помощью jigdo-lite не рекомендуется
- Рекомендуется зеркалирование с помощью jigdo-mirror
- Как организовать автоматическое зеркало
- Отказ от зеркалирования отдельных файлов
- Как называются образы .iso и каков их размер
- Регистрация зеркала
Главный сайт
URL главного сайта приведён ниже. Однако, пожалуйста берите образы с другого близлежащего зеркала (списки зеркал: HTTP/FTP, rsync), если это возможно. Доступ к главному сайту сразу после выхода нового выпуска может быть ограничен.
Учитывайте также огромный объём данных, хранящихся в этих каталогах — см. подробную информацию о том, как уменьшить размер путём отказа от части файлов ниже.
- Образы стабильного дистрибутива (при выходе нового выпуска обновляются):
https://cdimage.debian.org/debian-cd/
rsync://cdimage.debian.org/debian-cd/ - Еженедельные образы:
https://cdimage.debian.org/cdimage/weekly-builds/
rsync://cdimage.debian.org/cdimage/weekly-builds/ - Ежедневные образы:
https://cdimage.debian.org/cdimage/daily-builds/
rsync://cdimage.debian.org/cdimage/daily-builds/
Зеркалирование через HTTP/FTP не рекомендуется
Для обновления зеркала не следует использовать FTP или HTTP. Эти методы передачи данных сопряжены с высокой вероятностью ошибок из-за чрезвычайно большого размера файлов.
Более того, HTTP и FTP не производят проверку целостности загруженных данных, весьма вероятно, что обрыв связи при загрузке или повреждение данных при передаче вообще не будет замечено.
Рекомендуется зеркалирование с помощью rsync
Программа rsync — удачное решение этих проблем. Она менее эффективна, чем другие способы зеркалирования, специфичные для Debian, но её проще настроить. Более того, она обеспечивает то, что все файлы будут переданы корректно, и что метаданные (например, отметки времени) будут сохранены так же, как и данные файла.
См. примеры --include и --exclude в разделе Отказ от зеркалирования отдельных файлов. На отдельной странице доступен список зеркал rsync.
Используйте параметры --times --links --hard-links --partial --block-size=8192. При этом будут сохранены время последнего изменения, символические и жёсткие связи, и будут использоваться блоки размером 8192 байта (наиболее подходящие для образов CD). Если время последнего изменения и размер те же самые, rsync не будет трогать файл вообще, так что --times действительно надо использовать всегда.
Зеркалирование с помощью jigdo-lite не рекомендуется
Последние версии программы jigdo-lite поддерживают пакетную загрузку нескольких образов. Однако, мы не рекомендуем использовать для создания зеркал дисков Debian jigdo-lite — лучше использовать jigdo-mirror.
Рекомендуется зеркалирование с помощью jigdo-mirror
На самом деле, это означает: зеркалировать файлы .iso с помощью jigdo-mirror, а затем (если вы хотите зеркалировать также другие файлы, например, .jigdo и .template) запустить rsync для синхронизации каталога. При этом будут загружены остальные файлы. В настройке могут помочь скрипты на этой странице.
Многие люди сопровождают "обычные" зеркала Debian (debian/), или просто имеют хорошую связь с таким зеркалом. Это означает, что у них уже есть файлы .deb, содержащиеся на образах USB/CD/DVD. Очевидный вопрос: почему бы не использовать те же самые файлы на образах USB/CD/DVD?
jigdo-mirror — это программа, позволяющая генерировать наборы образов USB/CD/DVD Debian, используя файлы "нормального" зеркала и несколько дополнительных файлов шаблонов jigdo.
Для начала, вам понадобятся файлы шаблонов jigdo. См. ссылки на странице информации jigdo. Нужно загрузить файлы для каждой архитектуры, для которой вы хотите собрать образы.
Создайте файл ~/.jigdo-mirror для конфигурирования программы. Вот пример:
jigdoDir="/where/you/keep/mirrors/debian-cd/current/jigdo" imageDir="/where/you/keep/mirrors/debian-cd/current/images" tmpDir="/where/you/keep/mirrors/debian-cd/current/images" debianMirror="file:/where/you/keep/mirrors/debian" include='i386/|sparc/|powerpc/|source/'; exclude='-1\.'
Переменные include и exclude содержат список архитектур, для которых вы хотите создать образы (регулярные выражения). Более подробную информацию см. на странице руководства jigdo-mirror или в исходном коде (это скрипт оболочки с обширными комментариями).
После конфигурирования просто запустите jigdo-mirror и она сделает всё самостоятельно. Программа выводит на экран большое количество информации и, вероятно, её работа займёт некоторое время. Поэтому мы предлагаем вам принять меры (запустить с экрана, но перенаправить вывод в файл и т.д.).
Как организовать автоматическое зеркало
Как только становятся доступны новые образы, главный сайт может отправить на зеркала сообщение, чтобы они сразу начинали обновление. Таким образом новые данные "вталкиваются" на зеркала вместо того, чтобы зеркала их "вытягивали" при следующем ежедневном обновлении. Это позволяет быстрее распространять образы новых выпусков.
Если вы хотите, чтобы ваше зеркало входило в систему обновления, посетите эту страницу.
Отказ от зеркалирования отдельных файлов
Чтобы уменьшить размер дискового пространства, необходимого для хранения зеркала дисков Debian, можно отказаться от зеркалирования некоторых файлов. Следующие инструкции описывают ключи командной строки для rsync, но могут помочь даже если вы используете другие инструменты. В случае rsync ключи --include и --exclude рассматриваются в порядке следования в командной строке, и то, загружается файл или нет, определяется первым ключом, шаблон которого соответствует файлу.
- Не загружать исходный код:
--exclude=source/
Не будут зеркалироваться образы, содержащие исходный код. Имейте в виду, что некоторые полагают несоответствующим условиям лицензии GPL нахождение на сервере скомпилированных программ, распространяемых на условиях этой лицензии, если их исходный код на том же сервере отсутствует. - Не загружать полные образы:
--include='*netinst*.iso'
--exclude='*.iso'
Не загружать образы CD/DVD для всех архитектур, за исключением образов для сетевой установки. Мы рекомендуем всегда зеркалировать эти небольшие образы — по соотношению пользы от них к их размеру они чрезвычайно полезны! - Не загружать полные образы для всех архитектур, кроме
i386:
--include='*netinst*.iso'
--include='i386/**.iso' --exclude='*.iso'
Как в прошлом примере, но с загрузкой всех образов USB/CD/DVD для архитектуры i386. - Не загружать полные образы, за исключением первых трёх
дисков для архитектуры i386:
--include='*netinst*.iso' --include='i386/**-[1-3].iso'
--exclude='*.iso'
Полный набор образов для архитектуры i386 может всё ещё быть слишком большим для вас, включая образы DVD и двухслойных DVD. Эта команда не будет загружать образы .iso, за исключением образов для сетевой установки и первых трёх DVD для архитектуры i386. - Не загружать образы для нескольких архитектур, кроме i386:
--exclude=alpha/ --exclude=arm/ --exclude=hppa/ --exclude=hurd/
--exclude=ia64/ --exclude=m68k/ --exclude=mips/ --exclude=mipsel/
--exclude=powerpc/ --exclude=s390/ --exclude=sh/
--exclude=sparc/
Загрузить только полный набор файлов для архитектуры i386, не включая файлы .jigdo, .iso и т.д. для других архитектур.
Проверьте список архитектур до начала зеркалирования, список меняется, и данные примеры могут устареть!
Как называются образы .iso и каков их размер
Различные образы .iso различаются по именам, что позволяет загрузить только нужные файлы:
- *-netinst.iso: Один образ для каждой архитектуры, до 500 МБ
- *-dvd.iso (однослойный DVD): Несколько образов, каждый размером до до 4482 МБ. Для buster имеются до 16 образов DVD для каждой архитектуры. Серверы Debian предоставляют лишь небольшую часть образов DVD в виде файлов .iso для прямой загрузки: 3 для amd64, 3 для i386 и 1 для каждой оставшейся архитектуры. Остальные образы предоставляются только с помощью jigdo.
- *-bd.iso (однослойный Blu-Ray): Как и в случае с DVD, но отдельные образы имеют размер до 23 ГБ. Эти образы доступны только в виде jigdo-файлов для ограниченного набора архитектур (amd64 и i386) и для образов с исходным кодом.
- *-dlbd.iso (двухслойный Blu-Ray): Как и в случае с DVD, но отдельные образы имеют размер до 48 ГБ. Эти образы доступны только в виде jigdo-файлов для ограниченного набора архитектур (amd64 и i386) и для образов с исходным кодом.
- *-STICK16GB*.iso (16ГБ образы для USB): Как и в случае с DVD, но отдельные образы имеют размер до 16 ГБ. Эти образы доступны только в виде jigdo-файлов для ограниченного набора архитектур (amd64 и i386) и для образов с исходным кодом.
Регистрация зеркала
Чтобы сделать ваше зеркало полезным широкой аудитории, вы можете зарегистрировать его в нашем списке зеркал, этом или этом. Тем не менее, поскольку полные образы очень велики, это может привести к трафику в несколько гигабайтов в день.
Вы можете зарегистрировать ваше зеркало либо заполнив форму информации о зеркале (имейте в виду, что поля CDImage-* очень важны), либо отправив сообщение по адресу debian-cd@lists.debian.org.
Мы будем рады появлению любых новых зеркал образов CD. Заранее благодарим вас!