Описание тега compost-tea
У меня есть ряд зеркал репозиториев дистрибутива RedHat Юм, которые обновляются на ежедневной основе. Команды, которые используются для выполнения этой задачи являются:
инструмент --repoid=${я} --каталог скачивания=${destdir, в} --gpgcheck -я ... скачать-метаданные-downloadcomps --новейшая --удалить
createrepo -с помощью SHA256 --checkts-обновление-рабочие=4 -г $destdir, в/$fn/comps.xml
Переменные (я, destdir и ФН) задаются в скрипте, который выдает команды. Это работает все очень хорошо, и команда использует зеркала для хорошего эффекта.
Проблема в том, что через год или около того, одно из хранилищ накопилась внушительная стопка updateinfo в XML-файлы, с именами шаблон <хэш>-updateinfo.xml.gz: 456MB в каталоге верхнего и 28.45 GB в подкаталоге repodata. Репозиторий содержит только 4 ГБ файлов пакета.
Клиенты, которые делают ням makecache на этот РЕПО в конечном итоге с файла repmod.xml 4ГБ.
Мои вопросы
- Почему эти файлы накапливаются, хотя я --удалить задан.. ?
- Я могу удалить их, не нарушая репозиторий?
- Параметры, которые я использую наиболее оптимальный? Мы хотим зеркало полное РЕПО, но только последнюю версию каждого пакета.
Редактировать 4/6/2018
После глубокого копания я нашел еще несколько намеков, что эти файлы на самом деле не требуется.
В <хэш>updateinfo.xml.gz файлы в корневом каталоге репозитория все более или менее одинакового размера, около 3,8 м. файлы в каталог repodata (который создается/обновляется createrepo) постоянно растут в размерах за счет все файлы в корневом каталоге, объединяемых.
например: в этот каталог repodata, у меня 129 сжатых файлов. Первый файл имеет средний же размер, как те, в верхней части каталога, последний является огромной и 129 теги обновления, против Первого только 1.
# л -тр
общая 29г
-RW-р-р-- 1 корень 3,5 м 28 сентября 2016 6f9c8bca09bb360b0ac2c18231168d45aa6ef51254fee7b791c6d09693677f4c-updateinfo.xml.gz
...
-RW-р-р-- 1 корень 465 млн. 17 мая 03:21 1696bec0516791660751bb4a319b287f2a3a5ecfee086aefb73285f07cad3ac5-updateinfo.xml.gz
директорию типа drwxr-XR-х 3 корень корень 20к 22 мая 12:37 ../
# gzip в -постоянного тока 1696bec0516791660751bb4a319b287f2a3a5ecfee086aefb73285f07cad3ac5-updateinfo.xml.gz >updateinfo-big.xml
# gzip в -постоянного тока 6f9c8bca09bb360b0ac2c18231168d45aa6ef51254fee7b791c6d09693677f4c-updateinfo.xml.gz >updateinfo.xml
# команда grep '<обновления>' updateinfo.xml |туалет -л
1
# команда grep '<обновления>' updateinfo-big.xml |туалет -л
129
# команды ls -1 *updateinfo.в формате XML.ГЗ|туалет -л
129
# л updateinfo*
-RW-р-р-- 1 корень 2.4 г 4 июня 17:09 updateinfo-big.xml
-RW-р-р-- 1 корень 18М июня 4 17:10 updateinfo.xml
Я думаю, что инструмент должен удалить все существующие updateinfo.xml.gz файлы в корневом каталоге до createrepo работает над ним. Клиент получает последний сжатый файл из каталога repodata, когда он делает makecache, и расстегивает его.
Я двинул стек в каталог резервного копирования после разноски этот вопрос и увидел, что никаких негативных последствий для клиентов.