LinuxForum.Fans
Тема

Создание локального зеркала репозитория (rsync)

Автор: desiro 11 сообщений 7982 просмотров
#111911

Доброго всем времени суток!
Помогите решить проблему. Не могу понять как настроить создание локальной копии репозитория при помощи rsync.
Как будет выглядеть команда (и вообще какова последовательность действий) для создания и синхронизации локального зеркала (например OSS), например от сюда rsync://ftp.chg.ru/opensuse/ (взято отсюда http://mirrors.opensuse.org/list/11.3.html). Заранее благодарен.

#111913
text

#! /bin/bash

rsync -rltuzv --stats --progress --delete --delete-excluded \ --exclude "ppc/" \ --exclude "ppc64/" \ --exclude "x86_64/" \ mirror.suse.ru::opensuse/update/11.3/ /home/user/bin/repos/11.3

Еще можно глянуть сдесь http://www.gtkdb.de/index_7_1028.html - подробней некуда.
И читаем документацию про rsync....

#111917

а здесь тогда что находится ? http://mirror.suse.ru/distribution/11.3/repo, и здесь http://mirror.suse.ru/repositories/
дело в том, что я покатолько учус, прошу меня понять, можето пошагово растолковать все строчки, что бы понял принцип действия

rsync -rltuzv --stats --progress --delete --delete-excluded \
--exclude "ppc/" \
--exclude "ppc64/" \
--exclude "x86_64/" \
mirror.suse.ru::opensuse/update/11.3/ /home/user/bin/repos/11.3

--exclude я так понял это исключения, а почему тогда "ppc/"(и что это), "ppc64/" (это для 64-битных систем?), "x86_64/"

#111937
desiro написал:

--exclude я так понял это исключения, а почему тогда "ppc/"(и что это), "ppc64/" (это для 64-битных систем?), "x86_64/"

Правильно поняли. ppc - это для архитектуры PowerPC - оно вам надо? (кстати, в 11,3 я их уже вроде не наблюдаю...) x86_64 - нужно только если у вас есть 64-битные системы... Для экономии места можно так-же исключить src/ (нужно довольно редко)

desiro написал:

а здесь тогда что находится ? http://mirror.suse.ru/distribution/11.3/repo, и здесь http://mirror.suse.ru/repositories/
А это уж вам лучше знать, коли вы туда залезли....
Как правило нужны два локальных зеркала:
1. Источник инсталяции - делается из установочного DVD путем распаковки ISO в папку и расшаривания по протоколам ftp и/или http. Зеркалить его с сайта нет никакой необходимости, так как пакеты там не меняются.
2. Источник обновлений - делается в папке и периодически обновляется с помощью вышеприведенных скриптов. Также может быть расшарен внутри локалки...

Для отдельных пакетов, которые ставятся дополнительно из разных репозиториев и сохраняются в локальных копиях при включенной опции "Сохранять загруженные пакеты" в папке /var/cache/zypp/packages целесообразно аналогично создать собственный репозиторий (просто расшарив и эту папку и указав в менеджере пакетов или с помощью createrepo) Зеркалировать у себя всю тучу сторонних репов с нужным и не очень хламом - не очень умная мысль...

desiro написал:

прошу меня понять, можето пошагово растолковать все строчки, что бы понял принцип действия

Про --exclude вы поняли. Последняя строка откуда и куда зеркалим. Опции rsync - смотрим в документации по rsync!!! Оно и на русском есть, воспользуйтесь уже поиском....

#112107

Большое спасибо за подробный ответ, вроде все проясняется smile

#112681
UTiM написал:
1. Источник инсталяции - делается из установочного DVD путем распаковки ISO в папку и расшаривания по протоколам ftp и/или http. Зеркалить его с сайта нет никакой необходимости, так как пакеты там не меняются.

Смысл есть, на устоновочном dvd есть не все пакеты, которые имеются в этом репозитории, по этому один раз синхронизировать можно и даже нужно, у меня без полной версии репа не ставились обновления некоторые из за зависимостей... Вот скрипт

text

#!/bin/bash
rsync -avi --delete-after --exclude /rpm/src/ --progress mirror.yandex.ru::opensuse/update/11.3/ /home/niorix/repo/update -h
rsync -avi --delete-after --exclude /src/ --exclude *debuginfo* --exclude *debugsource* --progress mirror.yandex.ru::opensuse/packman/11.3/ /home/niorix/repo/packman/11.3 -h
rsync -avi --delete-after --progress mirror.yandex.ru::opensuse/repositories/KDE:/Release:/45/openSUSE_11.3/ /home/niorix/repo/KDE45 -h
rsync -avi --delete-after --exclude /oss/suse/i586 --progress mirror.yandex.ru::opensuse/distribution/11.3/repo/oss /home/niorix/repo/oss -h
#112838

Репозиториев есть много хороших и разных. Тянуть себе все подряд бездумно, особенно начинающим... Делать зеркало обычно для экономии трафика и скорости при переустановках, а чаще - для общественного использования в корпоративной сети, а там более важна стабильность. Поясню на всякий случай...

Официальные репозитории:
.../opensuse/distribution/11.3/repo/oss - официальный репозиторий, то из чего сделан DVD (если из него на DVD попало не все - возможно тому были причины...)
.../opensuse/distribution/11.3/repo/non-oss - официальный репозиторий, дополнительное закрытое ПО (Opera, Acrobat и пр.) в DVD не входит, но лучше бывает брать непосредственно у "производителей".
.../opensuse/update/11.3/ - официальные обновления

Остальное из вышепредложенного при установке не гаррантирует отсутствия глюков, требует определенной квалификации и понимания - зачем оно вам нужно....
.../Release:/45/openSUSE_11.3/ - последняя версия KDE для SUSE - без навыка можете легко поломать систему и... стать постоянным читателем нашего форума wink
.../opensuse/packman/11.3/ - крупнейшая "репо-помойка", часто необходимая для установки проприетарный кодеков и прочей "мультимедии" - хотите тащить из нее все подряд - ваше дело...

#112886
UTiM написал:
.../Release:/45/openSUSE_11.3/ - последняя версия KDE для SUSE - без навыка можете легко поломать систему и... стать постоянным читателем нашего форума 

Лучше сказать было нельзя. Браво! :D

#113740
UTiM написал:
.../Release:/45/openSUSE_11.3/ - последняя версия KDE для SUSE - без навыка можете легко поломать систему и... стать постоянным читателем нашего форума 

После переноса из Фактори проблем при обновлении не было (при правильном подходе типа zypper dup --from KDE45), но все вышеупомянутое лишь для примера, можно почитать о репозиториях и сделать свой список "по образу и подобию", а то что тянуть все подряд бессмысленно - согласен, так что desiro, дерзайте!

#115654

Большое спасибо за информацию, все принял к сведению, буду дерзать :)

#118513

Ну репозиторий я слил, наконец-то. Теперь встала другая проблема. Реп лежит в ДМЗ на FTP-сервере, рабочая машина во внутренней сети, между ними соответственно МЭ, указываю адрес в меню добавления репозитория, не может установить соединение, т.е. не пускает МЭ, хотя из браузера на этот FTP-сервер захожу. Получается, я так понял, надо открыть какой-то порт на МЭ для выхода Yast в ДМЗ. По какому порту он соединяется (порыл справку, инет, нигде найти не смог)? И второй вопрос, можно ли этот порт поменять (в конфиге Yast упоменания о порте тоже не видать)?

Войдите или зарегистрируйтесь, чтобы ответить.