debmirror - сценарий с поддержкой ftp, http, hftp и хранилищ пакетов для создания частичного зеркала Debian
debmirror [опции] каталог_копии
Эта программа скачивает и сопровождает частичное локальное зеркало Debian. Она может копировать любое сочетание архитектур, дистрибутивов и разделов. Полностью поддерживается передача файлов по ftp и хранилища пакетов. Она также выполняет блокирование и создаёт файлы, отслеживающие обновления.Для поддержки хранилищ пакетов эта программа копирует в три этапа.
1. скачивание файлов Packages и Sources Сначала она скачивает все файлы Packages и Sources для того подмножества Debian, получение которого было указано. 2. удаление неизвестных файлов Из локальной копии удаляются все файлы и каталоги, не указанные в списке. 3. скачивание всего остального Файлы Packages и Sources просматриваются в целях создания списка перечисленных в них файлов. К списку добавляются дополнительные файлы. Программа проверяет по списку наличие и актуальность каждого файла, используя для этого размер файла (и, на выбор, md5sum). Скачиваются все необходимые файлы.
каталог_копии Этот необходимый параметр указывает, где будет находиться каталог локальной копии. Если каталог не существует, он будет создан. Будьте аккуратны! Если вы укажете вместо каталога_копии свой домашний каталог, содержимое вашего домашнего каталога гарантированно будет заменено на копию архива Debian! --debug Включить подробный вывод диагностических сообщений, включая копию управляющего соединения протокола ftp. --progress -p Отображать индикатор выполнения при скачивании файлов. --verbose -v Отображать индикатор выполнения между скачиваниями файлов. --source Включать в копию архивы с исходными текстами (по умолчанию). --nosource Не включать в копию архивы с исходными текстами. --md5sums -m Использовать проверку сумм md5 для определения правильности данных, если файл в локальной копии совпадает по размеру. Опция отключена по умолчанию, поскольку такое поведение излишне параноидально и медленно. --passive Скачивать в пассивном режиме. --host=удалённый_узел -h Указывает удалённый узел, с которого нужно скачивать файлы. По умолчанию используется узел ftp.debian.org, но очень приветствуется использование ближайшего зеркала. --user=имя_пользователя -u Указывает имя пользователя, которое необходимо указать для входа на удалённый узел. Полезно при общении с безумными прокси-серверами. По умолчанию используется имя пользователя anonymous. --passwd=пароль_пользователя Указывает пароль пользователя, который необходим для входа на удалённый узел ftp. Опция используется вместе с опцией --user и по умолчанию используется пароль anonymous@. --method=ftp|hftp|http|rsync -e Указывает способ скачивания файлов. В настоящее время поддерживаются следующие способы: ftp, hftp (ftp через http-прокси), http или rsync. Для подключения к серверу rsync нужно поместить перед корневым каталогом символ ’:’ (например, :debian, что означает узел::debian). --proxy=http://пользователь:пароль@узел:порт/ Указывает http-прокси (такой как Squid), который нужно использовать при скачивании файлов по http и hftp. --timeout=секунды -t Указывает время ожидания ответа в сетевых соединениях (в FTP или rsync). Укажите большее значение времени ожидания, если скачивание завершается ошибкой. По умолчанию используется время ожидания в 300 секунд. --root=каталог -r Указывает каталог на удалённом узле, который является корневым для архива Debian. По умолчанию используется каталог /debian, который подходит для большинства зеркал. В корневом каталоге находится подкаталог dists/. --dist=один[,другой,..] -d один Указать дистрибутив (sarge, etch, lenny, sid) Debian для копирования. Этот ключ может использоваться несколько раз, а в одной опции может быть указано несколько дистрибутивов, разделённых запятыми. Использование ссылок (stable, testing, unstable) может привести к неожиданным результатам, но вы можете добавить эти ссылки вручную. По умолчанию копируется sid. --section=один[,друогй,..] -s один Указывает раздел Debian для копирования. По умолчанию копируются разделы main,contrib,non-free,main/debian-installer. --arch=одна[,другая,..] -a одна Указывает архитектуры процессоров, для которых нужно скачивать двоичные пакеты. По умолчанию используется опция --arch=i386. При указании --arch=none архитектурно-зависимые двоичные пакеты скачиваться не будут. --postcleanup Удалить все неизвестные файлы и каталоги в локальной копии только после завершения процесса копирования и только если не было ошибок. Такое поведение используется по умолчанию. --cleanup Удалить все неизвестные файлы и каталоги в локальной копии (смотри шаг 2 выше). --nocleanup Не удалять неизвестные файлы и каталоги из локальной копии после завершения процесса копирования. --ignore=регулярное_выражение Никогда не удалять файлы, чьи имена совпадают с указанным регулярным выражением. Опция может быть указана несколько раз. --exclude=регулярное_выражение Никогда не скачивать файлы, чьи имена совпадают с указанным регулярным выражением. Опция может быть указана несколько раз. --exclude-deb-section=регулярное_выражение Никогда не скачивать файлы, раздел Debian которых (games, doc, oldlibs, science, …) совпадает с регулярным выражением. Опция может быть указана несколько раз. --limit-priority=регулярное_выражение Ограничить скачивание файлами, чьи приоритеты Debian (required, extra, optional, …) совпадают с регулярным выражением. Опция может быть указана несколько раз. --include=регулярное_выражение Не исключать файлы, чьи имена совпадают с регулярным выражением. Опция может быть указана несколько раз. --skippackages Не скачивать повторно файлы Packages и Sources. Полезно, если вы знаете, что они актуальны. --adddir каталог Дополнительно скачивать файлы Packages и Sources из указанного каталога на удалённом узле (каталог относительно корня архива Debian). Если вы в прошлом пользовались опцией вида --adddir dists/proposed-updates, то теперь вы должны воспользоваться опцией следующего вида: --dist <dist>-proposed-updates. Эта возможность в настоящее время устарела и скоро будет удалена. --getcontents Скачивать файлы Contents.архитектура.gz. --max-batch=число Скачать не более max-batch файлов (и игнорировать оставшиеся). --rsync-batch=число Скачивать не более указанного количества файлов при каждом вызове rsync, а затем повторить. --ignore-missing-release Не завершить работу с ошибкой, если отсутствует файл Release. --ignore-release-gpg Не завершить работу с ошибкой, если отсутствует файл Release.gpg. --dry-run Изобразить процесс копирования. При указании этой опции программа по-прежнему будет скачивать файлы метаданных в каталог .temp, но не будет заменять старые файлы метаданных, не будет скачивать файлы deb и архивы с исходными текстами и только лишь изобразит процесс очистки. --rsync-options=опции Указать использование альтернативных опций rsync. По умолчанию используются опции -aIL --partial. Нужно соблюдать осторожность при указании альтернативных опций, чтобы не нарушить работу программы. Лучше просто добавить необходимые опции к указанным выше. В большинстве случаев добавляют опцию --bwlimit=x, чтобы избежать забивания канала.
--ignore-small-errors Обычно debmirror докладывает об ошибке, если не удалось скачать какой либо deb-файл или архив исходных текстов. При этом он не обновляет метаданные, что приводит к нарушению целостности зеркала. В большинстве ситуаций это правильное поведение и оно указывает на то, что во время скачивания произошло что-то плохое и скачивание необходимо повторить. Но некоторые вышестоящие зеркала бывают и в самом деле неисправны. Указание --ignore-small-errors заставит debmirror игнорировать пропущенные или повреждённые deb-файлы и архивы исходных текстов, но по-прежнему будет педантично проверять файлы метаданных. --pdiff=use|mirror|none Если файл Release содержит записи о файлах pdiff, debmirror попытается обновить файлы Packages и Sources с их помощью, но не включит их в копию. Это поведение применяется по умолчанию и называется ’use’, оно позволяет избежать наличия файлов pdiff для быстрого локального зеркала. Указание --pdiff=mirror включит скачанные файлы в копию. Указание --pdiff=none заставит полностью проигнорировать эти файлы. --help Отобразить краткую справку по использованию программы.
Размер зеркала для только двоичных пакетов одной архитектуры процессора (в мегабайтах):| sarge | etch | sid | all ---------+-------+------+-------+------- main | 8816 | 9126 | 10777 | 20577 contrib | 126 | 118 | 291 | 363 non-free | 282 | 345 | 464 | 666 d-i | 44 | 28 | 31 | 78 all | 9187 | 9536 | 11476 | 21502Размер зеркала по процессорным архитектурам (в мегабайтах):
| sarge | etch | sid | all ---------+-------+------+-------+------- source | 9339 | 9419 | 11495 | 17521 all | 4478 | 5047 | 6160 | 10459 alpha | 4256 | 3906 | 4732 | 9708 amd64 | 3644 | 3635 | 4877 | 9152 arm | 3445 | 3193 | 3933 | 7845 hppa | 4112 | 3713 | 4541 | 9167 i386 | 4422 | 3979 | 5005 | 10477 ia64 | 4709 | 4489 | 5316 | 11043 m68k | 3372 | 3072 | 3664 | 7139 mips | 3631 | 3364 | 4099 | 8237 mipsel | 3560 | 3319 | 4049 | 8106 powerpc | 4208 | 3967 | 4742 | 9915 s390 | 3673 | 3452 | 4144 | 8489 sparc | 3761 | 3585 | 4390 | 8893Все числа отражают состояние архива на 9 декабря 2005 года и не учитывают издержек файловой системы (которые составят 1-2 гигабайта в случае ext2/3).
debmirror /mirror/debianПросто создать копию в каталоге /mirror/debian, используя значения опций по умолчанию.
debmirror -a i386,sparc -s main -h ftp.kernel.org \ -d sid -d etch /home/me/debian/mirror --nosource \ --progressСоздать копию двоичных пакетов процессорных архитектур i386 и sparc, только раздел main, включая только нестабильную и тестируемую версии Debian. Скачивать с ftp.debian.org.
debmirror -e rsync -r :debian /home/me/debian/mirrorСоздать копию с помощью rsync. В качестве сервера rsync использовать ftp.debian.org::debian.
~/.gnupg/trustedkeys.gpg debmirror использует gpgv для проверки файлов Release и Release.gpg, используя связку ключей по умолчанию ~/.gnupg/trustedkeys.gpg. Она может быть изменена посредством переопределения и экспорта переменной GNUPGHOME, в результате чего будет использоваться связка ключей $GNUPGHOME/trustedkeys.gpg. Для добавления ключа к связке вы можете импортировать его со связки ключей debian (в случае архива debian), воспользовавшись следующей командой: gpg --keyring /usr/share/keyrings/debian-archive-keyring.gpg --export \ | gpg --import или скачать ключ с сервера ключей: gpg --keyserver keyring.debian.org --recv-keys <key ID> <идентификатор_ключа> можно найти в сообщении об ошибке gpgv, выданном debmirror: gpgv: Signature made Tue Jan 23 09:07:53 2007 CET using DSA key ID 2D230C5F
Авторские права от 2001 на данную программу принадлежат Джо Хессу (Joey Hess) <joeyh@debian.org>, в соответствии с условиями GNU GPL, авторские права от 2003 принадлежат Госвину фон Бредерлову (Goswin von Brederlow) <brederlo@informatik.uni-tuebingen.de>.Автор снимает с себя любую ответственность за повреждения вашей системы, неожиданные счета за использование канала, расплавление сети зеркал Debian, и другие последствия, причиной которых может стать данный сценарий. Обратитесь к разделу ОТКАЗ ОТ ГАРАНТИЙ (NO WARRANTY) лицензии GPL.
Нынешний: Госвин фон Бредерлов (Goswin von Brederlow) <brederlo@informatik.uni-tuebingen.de> Предыдущие авторы: Джо Хесс (Joey Hess) <joeyh@debian.org>,
Джоерг Вендланд (Joerg Wendland) <joergland@debian.org>
Перевод на русский язык выполнил Владимир Ступин <wheelof@gmail.com>.
Загрузи канал – создай частичное зеркало на своём компьютере прямо сегодня!
perl v5.10.1 | DEBMIRROR (1) | 2010-12-12 |