Удобная система распространения в Интернете файлов, по размеру сходных с яйцами Несуществующих Гигантских Дятлов Михаила Шигорина. Например, образа DVD версии Compact'а 3.0 ;-)
Как оно работает?
Распространитель
скармливает программе jidgo-file его образ и каталог с входящими в него файлами.
Весёлая пила (jigsaw) пробегает по образу, выискивая положение файлов в нём. Вся найденая информация складируется в .template .
Не распознаные участки образа сжимаются и, опять же, закидываются в многострадальный .template .
Местоположение файлов на серверах и сами сервера описываются в .jigdo — вполне человекочитаемом текстовом файле.
Потребитель
указывает jigdo-light местонахождение файла .jigdo, который та с удовольствием скачивает, прихватывая по пути .template
Сравниваются уже имеющиеся у пользователя файловые запасы и файлы, требуемые для воссоздания образа. Недостающее докачивается.
Собсно, имея в наличии все запчасти, jigdo-light заботливо собирает полную копию, которую можно записать на диск.
Why jigdo?
Чем jigdo удобнее простой загрузки iso-шников?
Не требуется загрузка цельных iso-шек
Вас не будет волновать кошерность xdelta-диффа между образами xxx-rc9 и xxx-rc10 (например) ;)
С помощью jigdo можно собрать у себя даже те iso-образы, которые никогда не будут выложены на ftp – например грядущий Compact-3.0 (dvd) ;)
Экономия трафика: например, у вас имеется часть пакетов, присутствующих в собираемом iso. При запуске jigdo попросит вас указать пути, которые должны быть просканированы для поиска этих пакетов
Экономия места на дисках распространителя. Из файлов, и образов из них сделаных, можно хранить только файлы.
Получение iso-образов дистрибутива, используя jigdo
Создание jigdo-темплейтов для распространения iso-образов
Создать темплейт можно при помощи вот такого простенького скрипта (для примера я взял comact 2.3):
В итоге в $iso получаются два файла – .jigdo и .template. Осталось только выложить их на ftp ;)
Замечание:
в получившемся файле .jigdo в секции [Servers] будет только
ALT=ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/Compact/2.3/
соответственно, тот, кто будет собирать образы, скачает пакеты именно оттуда. Т.е. в том случае, если пользователь захочет воспользоваться каким-то другим зеркалом, ему придётся подредактировать файл .jigdo. В дебиане запрос зекрала происходит интерактивно, надо будет посмотреть, как это сделано там.