Yum: можно ли синхронизировать локальный репозиторий с удаленным?

Автор: dvc Дата: 09.09.2005 10:46 Собственно сабж.
Я это представляю как (в идеальном варианте).
Есть локальный репозиторий на сервере. С него можно и установку проводить на клиентов и обновляться локальным клиентам. Но как быть с появляющимися регулярно обновлениями? Давать каждому клиенту доступ до удаленного репозитория - дюже круто. Особенно если конфигурации в сетке одинаковые.
Время от времени на него конечно можно ручками складывать целые диски с обновлениями, но мы получаем большое запаздывание. Закачивать всё, что есть с удаленного сервера на локальный - тоже не лучший вариант, трафик будет больше, чем нужно для работы, в десятки (если не в сотни) раз.
Было бы просто великолепно, если бы yum на сервере работал, как прокси - получал запросы от клиентов на пакет, сравнивал версии у себя и на удаленном репозитории, скачивал по необходимости, отдавал клиенту, складывал к себе в обновления и перестраивал базу репозитория. В совсем идеальном варианте надо было бы еще и чистить старые версии пакетов в локальном репозитории. А также иметь возможность настраивать правила для закачки удаленных пакетов в зависимости от их размера или общего трафика закачек пакетов за месяц или еще как-то (хотя бы черный/белый лист пакетов), чтобы можно было не беспокоиться, что за радость иметь самую свежую версию kde придется снять последние штаны (всё таки не антивирусные базы обновляем).
Таким образом, скачиваться будут только те пакеты, которые используются в данной сетке и скачиваться они будут один раз и так часто и много, как мы захотим.

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

Как полуавтоматический вариант - получение списков установленных пакетов с клиентов и сервера(ов) (и обобщенный, усеченный до списка без повторений), поиск обновлений для них и отправка по мылу уведомления админу - типа "есть то-то и то-то для клиентов, и вот еще вот это для сервера(ов), если нужно знаешь где взять".

Какие есть решения, позволяющие приблизиться к идеалу?
Re: yum: можно ли синхронизировать локальный репозиторий с удаленным? 09.09.2005 12:06vaborg Несколько раз перечитал, очень тяжело написано Улыбка
Предлагаю настроить на сервере yum как
base - local
update - на ftp.asplinux.ru
и проводить ночные обновления по уснановленому списку в yum.conf

на локальных машинах репозитарии настроить на сервере.
И в целом проблема будет решена, потому как на локальных машинах
update будут локальными. Вам нужно будет только следить за сервером и
какие обновления выкладывают.
Re: yum: можно ли синхронизировать локальный репозиторий с удаленным? 09.09.2005 14:01dvc >Несколько раз перечитал, очень тяжело написано Улыбка
"Сумбур в словах говорит о сумбуре в голове" (с) Л. Толстой Грустный

>и проводить ночные обновления по уснановленому списку в yum.conf

Спасибо. Кажется разобрался. Просто я поначалу не связывался с обновлениями, а просто скопировал dvd с дистрибутивом в /mnt/share (отдельный раздел) и расшарил его по nfs. А чуть попозже достал диски с обновлениями и положил туда же, изменив настройки на клиентах. А yum по умолчанию складывает все пакеты в /var/cashe/yum. Соответственно, то, что я скачал с сервера в общей папке не появляется. Т.е. нужно поменять /var/cashe/yum на /mnt/share... или наооборот. Или символические ссылки сделать.

Один вопрос остался: а что делает yum со старым пакетом, когда закачивает обновленный? Удаляет или складывает рядом?
И что он делает, если при перестраивании репозитория находит несколько версий пакетов?
Re: yum: можно ли синхронизировать локальный репозиторий с удаленным? 09.09.2005 15:16vaborg насколько я знаю у него два разных репозитория для base и update
поэтому обновление уходит в update, а старый остаётся в base.

Ну если всё верно делалось то такая ситуация исключена.
Re: yum: можно ли синхронизировать локальный репозиторий с удаленным? 09.09.2005 19:06Woodoo Можно 3 способами.
1. Синхронизировать репозиторий(и) полностью.
2. Вести у себя (на локальной машине, в локальной сети) "накопительный" репозиторий (т.е. получать и обновлять только те пакеты, которые установлены на станциях), в таком случае нужно синхронизировать только подкаталог ../repodata.
3. В случае, если yum используется только на локальной машине и в /var достаточно места - все пакеты можно просто слить в кэш соответствующего репозитория.
RSS-материал