Автор Тема: Локальный репозиторий, зеркало.  (Прочитано 7977 раз)

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Здравствуйте!
Возникла задача сделать 1 Alt сервер с локальным репозиторием для обновления других машин в локальной сети (без доступа к интернету)
Нашел Мануал по настройке Однако из-за малого опыта с работой Linux вопрос застопорился...
Что сделал:
1) Создал на виртуалке Alt
2) Примонтировал Диск на 50 ГБ
3) По инструкции установил sisyphus-mirror и nginx
4) Запустил синхронизацию репозиториев в ручную: su -l -c 'sisyphus-mirror -i' repo
Далее в инструкции написано - используйте..

Как настроить клиент-сервер ?

Если в source.list добавлять ссылки
rpm [p8] ftp://192.168.0.105/rep p8/branch/x86_64 classic
rpm [p8] ftp://192.168.0.105/rep p8/branch/x86_64-i586 classic
rpm [p8] ftp://192.168.0.105/rep p8/branch/noarch classic
то возникают ошибки
Получено: 1 ftp://192.168.0.105 p8/branch/x86_64 release
Ошибка ftp://192.168.0.105 p8/branch/x86_64 release
  Unable to fetch file, server said 'Failed to open file.  '

Пройдя по http://192.168.0.105/ попадаешь на стандартный сайт (с ссылками, wiki, форумы и т.п.)
Пройдя по ftp://192.168.0.105/ отображается пустая папка mirror

Что дальше делать как с этим работать ???

cat /etc/nginx/sites-available.d/repo.conf
server {
  listen 80;
    server_name altlinux;

      access_log /var/log/nginx/repo-access.log;
        error_log /var/log/nginx/repo-error.log;

           location / {
                root /rep;
                     autoindex on;
                        }
                        }
cat /etc/sisyphus-mirror/sisyphus-mirror.conf
# source mirror
#SRCROOT=rsync://rsync.altlinux.org/ALTLinux
SRCROOT=rsync://mirror.yandex.ru/altlinux
#SRCROOT=rsync://mirror.yandex.ru/altlinux
#SRCROOT=rsync://ibiblio.org/Linux/distributions/altlinux
#SRCROOT=rsync://ftp.linux.kiev.ua/ALTLinux

# distination directory
DESTROOT=/rep
# example: we can use sisyphus-mirror for synchronize repos to removable media
#DESTROOT=/media/disk/ALTLinux

# repos for sync
LIST="Sisyphus"
#LIST="Sisyphus 4.0/branch updates backports people/shrek"

# architectures for sync
ARCH="noarch i586 x86_64 x86_64-i586 x86_32"

# repos for search hardlinks
#LINK_LIST="Sisyphus p7/branch t7/branch"

# speed limit in Kb/s (--bwlimit=)
#SPEED=512
#SPEED=

# other argumets for rsync
# recommended for non-interactive mode:
ARGS="-rltmvH --delete-delay --delete-excluded --stats"
# recommended for interactive mode:
#ARGS="-rltvhmH --progress --delete-delay --delete-excluded --stats"

# if 1, print output to stdout
INTERACTIVE=0

# temp directory for synchronization
TMPDEST=.new

# backup type - READ README.UTF8
#BACKUP_TYPE=one
#BACKUP_TYPE=snapshots

# directory for backups
#BACKUP_DIR=/var/ftp/ALTLinux/previous-state
#BACKUP_DIR=/var/ftp/ALTLinux/archive

# if you do not want to download some packages, use this file
EXCLUDE_FILE=/etc/sisyphus-mirror/exclude

# this file needed when ARCH variable is used
INCLUDE_FILE=/etc/sisyphus-mirror/include

# directory for custom configs and logs
RSHOME="$HOME/.sisyphus-mirror"

# number of tries
#MAXATTEMPTS=10

# rsync protocol timeout (--timeout)
#TMOUT1=500

# pause between attempts
#TMOUT2=15

# http proxy server with HTTP CONNECT (host:port)
#RSYNC_PROXY=localhost:3128

Может есть более подробная инструкция прям для чайников  ;-)
Буду крайне признателен за помощь и разъяснения.
Заранее спасибо!
« Последнее редактирование: 08.11.2019 09:15:11 от sb »

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Re: Локальный репозиторий, зеркало.
« Ответ #1 : 06.11.2019 19:24:49 »
Всё делается гораздо проще https://www.altlinux.org/Alterator-mirror
Сноси Винду, переходи на Линукс ! :)

Оффлайн igorigor76

  • Завсегдатай
  • *
  • Сообщений: 651
Re: Локальный репозиторий, зеркало.
« Ответ #2 : 06.11.2019 20:30:09 »
На всякий случай, может пригодится: https://forum.altlinux.org/index.php?topic=39284.msg314588#msg314588

P.S.
2) Примонтировал Диск на 50 ГБ
Мало будет.
« Последнее редактирование: 06.11.2019 20:32:38 от igorigor76 »

Оффлайн Koi

  • alt linux team
  • ***
  • Сообщений: 1 893
  • валар дохаэрис
    • Канал на youtube
Re: Локальный репозиторий, зеркало.
« Ответ #3 : 06.11.2019 20:42:57 »
Как еще один вариант, я деал в ручную rsync.
https://www.altlinux.org/APT_%D0%B2_ALT_Linux/CreateRepositoryMirror#rsync
Хотя мне не нужно было полное зеркало для обновления других, просто для сборок пакетов и дистрибутива. Всего заняло 28г.

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Re: Локальный репозиторий, зеркало.
« Ответ #4 : 07.11.2019 15:49:36 »
Всё делается гораздо проще https://www.altlinux.org/Alterator-mirror

Есть некоторые успехи.
Подключил вирт. диск на 100 ГБ.
Т.к. Локальное зеркало находится /srv/public/mirror было необходимо изменить путь зеркалирования в другую папку (подключенный диск)
/rep/localrep /srv/public/mirror none rw,bind,auto 0 0 После чего в сервере обновлений (http://localhost:8080) скачалось зеркало на 22ГБ.

Тут возник вопрос.
1) Если мы на нашем сервере (репозитория) зайдём в нашу папку /rep/local/5.1/branch/files/noarch/RPMS/ и */files/x86_64 то увидим скаченные пакеты .rpm
Но если проверить через ftp://172.16.0.54/mirror/5.1/branch/files/noarch/RPMS/  то там будет Пусто!

2) В sources.list Клиент-сервере прописал (может не правильно?)
rpm [updates] ftp://192.168.0.105/mirror/5.1/branch/ x86_64 classic
#rpm [p8] ftp://192.168.0.105/mirror/5.1/branch/ x86_64-i586 classic
rpm [updates] ftp://192.168.0.105/mirror/5.1/branch/ noarch classic
3) При скачивании пакета apt-get install vlc
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Некоторые пакеты установить невозможно. Это может означать, что Вы
потребовали невозможного, либо пользуетесь нестабильным репозиторием.
Часть необходимых пакетов либо ещё не создана, либо была удалена
из каталога 'Входящие'.

Так как для выполнения Вашего запроса достаточно одной операции, то
скорее всего этот пакет просто невозможно установить. Сообщите, пожалуйста,
об этом как о найденной ошибке в пакете.
Эти сведения могут помочь найти выход из ситуации:

Следующие пакеты имеют неудовлетворенные зависимости:
  vlc: Требует: vlc-interface-qt4
       Требует: vlc-plugin-ffmpeg
       Требует: vlc-mini
       Требует: vlc-plugin-pulseaudio
E: Извините, `битые' пакеты
« Последнее редактирование: 08.11.2019 09:14:19 от sb »

Оффлайн igorigor76

  • Завсегдатай
  • *
  • Сообщений: 651
Re: Локальный репозиторий, зеркало.
« Ответ #5 : 07.11.2019 19:01:57 »
Может быть права проверить на каталог для ftp сервера.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 926
    • Домашняя страница
    • Email
Re: Локальный репозиторий, зеркало.
« Ответ #6 : 07.11.2019 20:18:59 »
Смотрите alterator-mirror.
Андрей Черепанов (cas@)

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Re: Локальный репозиторий, зеркало.
« Ответ #7 : 08.11.2019 08:53:24 »
Может быть права проверить на каталог для ftp сервера.

На весь каталог права -R 777
ls -l /rep/localrep/5.1/branch/files/noarch/
итого 608
drwxrwxrwx 2 root root 618496 ноя  8 08:36 RPMS

Допускается ли что на ftp файлы не отображаются? Скрин ниже

P.S. Настраивал локальный репозиторий на astra linux, там при обращении к каталогу по ftp всё видно было.

модераториал: если прикрепляете картинку к сообщению, то не дублируйте её вставкой в текст сообщения: одного экземпляра картинки вполне достаточно.
« Последнее редактирование: 08.11.2019 09:30:04 от sb »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 926
    • Домашняя страница
    • Email
Re: Локальный репозиторий, зеркало.
« Ответ #8 : 08.11.2019 09:01:17 »
Все каталоги смотрите.
Андрей Черепанов (cas@)

Оффлайн andrew_b

  • Завсегдатай
  • *
  • Сообщений: 535
Re: Локальный репозиторий, зеркало.
« Ответ #9 : 08.11.2019 09:53:42 »
Допускается ли что на ftp файлы не отображаются?
Если у вас перекрыт 20 порт.

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Re: Локальный репозиторий, зеркало.
« Ответ #10 : 08.11.2019 10:20:36 »
Извиняюсь за дублирование скринов.
Все каталоги смотрите.
Можно по конркетнее?
В консоли все права и каталоги как я писал ранее доступны на запись и чтение
В FTP ещё раз просмотрел. Папки где содержатся rpm отображаются как пустые.
Содержание к примеру /mirror/5.1/branch/noarch/base/ системные файлы присутствуют

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Re: Локальный репозиторий, зеркало.
« Ответ #11 : 08.11.2019 10:35:56 »
Допускается ли что на ftp файлы не отображаются?
Если у вас перекрыт 20 порт.

Все настройки дефолтные я не вижу что бы кто-то слушал 20 порт.
Его точно намеренно не закрывал.
Брандмауэр отключён.

netstat -ntulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 127.0.0.1:10026             0.0.0.0:*                   LISTEN      2964/clamsmtpd
tcp        0      0 0.0.0.0:13                  0.0.0.0:*                   LISTEN      634/xinetd
tcp        0      0 0.0.0.0:47407               0.0.0.0:*                   LISTEN      663/rpc.mountd
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      658/rpcbind
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      804/nginx -g daemon
tcp        0      0 0.0.0.0:52881               0.0.0.0:*                   LISTEN      786/rpc.statd
tcp        0      0 172.16.0.54:53              0.0.0.0:*                   LISTEN      4063/named
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN      634/xinetd
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      679/sshd
tcp        0      0 127.0.0.1:953               0.0.0.0:*                   LISTEN      4063/named
tcp        0      0 0.0.0.0:54205               0.0.0.0:*                   LISTEN      663/rpc.mountd
tcp        0      0 0.0.0.0:53759               0.0.0.0:*                   LISTEN      663/rpc.mountd
tcp        0      0 0.0.0.0:34689               0.0.0.0:*                   LISTEN      -
tcp        0      0 0.0.0.0:2049                0.0.0.0:*                   LISTEN      -
tcp        0      0 :::51781                    :::*                        LISTEN      663/rpc.mountd
tcp        0      0 :::40549                    :::*                        LISTEN      663/rpc.mountd
tcp        0      0 :::111                      :::*                        LISTEN      658/rpcbind
tcp        0      0 :::8080                     :::*                        LISTEN      530/guile18
tcp        0      0 :::53                       :::*                        LISTEN      4063/named
tcp        0      0 :::22                       :::*                        LISTEN      679/sshd
tcp        0      0 :::45143                    :::*                        LISTEN      663/rpc.mountd
tcp        0      0 :::631                      :::*                        LISTEN      1/init
tcp        0      0 :::44921                    :::*                        LISTEN      786/rpc.statd
tcp        0      0 :::36895                    :::*                        LISTEN      -
tcp        0      0 :::2049                     :::*                        LISTEN      -
udp        0      0 127.0.0.1:962               0.0.0.0:*                               786/rpc.statd
udp        0      0 0.0.0.0:53228               0.0.0.0:*                               786/rpc.statd
udp        0      0 0.0.0.0:2049                0.0.0.0:*                               -
udp        0      0 172.16.0.54:53              0.0.0.0:*                               4063/named
udp        0      0 0.0.0.0:68                  0.0.0.0:*                               1324/dhclient
udp        0      0 0.0.0.0:69                  0.0.0.0:*                               634/xinetd
udp        0      0 0.0.0.0:111                 0.0.0.0:*                               658/rpcbind
udp        0      0 0.0.0.0:50294               0.0.0.0:*                               1324/dhclient
udp        0      0 0.0.0.0:50401               0.0.0.0:*                               663/rpc.mountd
udp        0      0 0.0.0.0:5353                0.0.0.0:*                               472/avahi-daemon: r
udp        0      0 0.0.0.0:36130               0.0.0.0:*                               663/rpc.mountd
udp        0      0 0.0.0.0:46540               0.0.0.0:*                               472/avahi-daemon: r
udp        0      0 0.0.0.0:41628               0.0.0.0:*                               -
udp        0      0 0.0.0.0:827                 0.0.0.0:*                               658/rpcbind
udp        0      0 0.0.0.0:56184               0.0.0.0:*                               663/rpc.mountd
udp        0      0 :::2049                     :::*                                    -
udp        0      0 :::53                       :::*                                    4063/named
udp        0      0 :::111                      :::*                                    658/rpcbind
udp        0      0 :::59749                    :::*                                    663/rpc.mountd
udp        0      0 :::51648                    :::*                                    -
udp        0      0 :::36374                    :::*                                    663/rpc.mountd
udp        0      0 :::64033                    :::*                                    1324/dhclient
udp        0      0 :::46740                    :::*                                    663/rpc.mountd
udp        0      0 :::43684                    :::*                                    786/rpc.statd
udp        0      0 :::827                      :::*                                    658/rpcbind

lsof -i
COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd      1    root   48u  IPv6  10009      0t0  TCP *:ipp (LISTEN)
avahi-dae  472  _avahi   12u  IPv4  11328      0t0  UDP *:5353
avahi-dae  472  _avahi   13u  IPv4  11329      0t0  UDP *:46540
ahttpd     530 _ahttpd   12u  IPv6  11545      0t0  TCP *:webcache (LISTEN)
xinetd     634    root    5u  IPv4  13233      0t0  TCP *:daytime (LISTEN)
xinetd     634    root    6u  IPv4  13234      0t0  UDP *:tftp
xinetd     634    root    8u  IPv4  13235      0t0  TCP *:ftp (LISTEN)
rpcbind    658     rpc    6u  IPv4  13421      0t0  UDP *:sunrpc
rpcbind    658     rpc    7u  IPv4  13425      0t0  UDP *:827
rpcbind    658     rpc    8u  IPv4  13426      0t0  TCP *:sunrpc (LISTEN)
rpcbind    658     rpc    9u  IPv6  13427      0t0  UDP *:sunrpc
rpcbind    658     rpc   10u  IPv6  13428      0t0  UDP *:827
rpcbind    658     rpc   11u  IPv6  13429      0t0  TCP *:sunrpc (LISTEN)
rpc.mount  663    root    7u  IPv4  13543      0t0  UDP *:56184
rpc.mount  663    root    8u  IPv4  13554      0t0  TCP *:47407 (LISTEN)
rpc.mount  663    root    9u  IPv6  13557      0t0  UDP *:59749
rpc.mount  663    root   10u  IPv6  13560      0t0  TCP *:45143 (LISTEN)
rpc.mount  663    root   11u  IPv4  13563      0t0  UDP *:36130
rpc.mount  663    root   12u  IPv4  13566      0t0  TCP *:53759 (LISTEN)
rpc.mount  663    root   13u  IPv6  13569      0t0  UDP *:36374
rpc.mount  663    root   14u  IPv6  13572      0t0  TCP *:40549 (LISTEN)
rpc.mount  663    root   15u  IPv4  13575      0t0  UDP *:50401
rpc.mount  663    root   16u  IPv4  13578      0t0  TCP *:54205 (LISTEN)
rpc.mount  663    root   17u  IPv6  13581      0t0  UDP *:46740
rpc.mount  663    root   18u  IPv6  13584      0t0  TCP *:51781 (LISTEN)
sshd       679    root    3u  IPv4  13834      0t0  TCP *:ssh (LISTEN)
sshd       679    root    4u  IPv6  13845      0t0  TCP *:ssh (LISTEN)
rpc.statd  786 rpcuser    6u  IPv4  14481      0t0  UDP localhost.localdomain:962
rpc.statd  786 rpcuser    8u  IPv4  14501      0t0  UDP *:53228
rpc.statd  786 rpcuser    9u  IPv4  14506      0t0  TCP *:52881 (LISTEN)
rpc.statd  786 rpcuser   10u  IPv6  14509      0t0  UDP *:43684
rpc.statd  786 rpcuser   11u  IPv6  14512      0t0  TCP *:44921 (LISTEN)
nginx      804    root    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      808  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      809  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      810  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      811  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      812  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      817  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      821  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      822  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      823  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
nginx      831  _nginx    7u  IPv4  14859      0t0  TCP *:http (LISTEN)
dhclient  1324    root    6u  IPv4  17280      0t0  UDP *:bootpc
dhclient  1324    root   20u  IPv4  17240      0t0  UDP *:50294
dhclient  1324    root   21u  IPv6  17241      0t0  UDP *:64033
sshd      2921    root    3u  IPv4  21606      0t0  TCP 192.168.0.105:ssh->192.168.0.217:65006 (ESTABLISHED)
clamsmtpd 2964    mail    3u  IPv4  21770      0t0  TCP localhost.localdomain:10026 (LISTEN)
sshd      2978    soto    3u  IPv4  21606      0t0  TCP 192.168.0.105:ssh->192.168.0.217:65006 (ESTABLISHED)
cupsd     3742    root    4u  IPv6  10009      0t0  TCP *:ipp (LISTEN)
named     4063   named   21u  IPv6  33678      0t0  TCP *:domain (LISTEN)
named     4063   named   23u  IPv4  33683      0t0  TCP altlinux.localdomain:domain (LISTEN)
named     4063   named   24u  IPv4  33684      0t0  TCP localhost.localdomain:rndc (LISTEN)
named     4063   named  512u  IPv6  33677      0t0  UDP *:domain
named     4063   named  514u  IPv4  33682      0t0  UDP altlinux.localdomain:domain
sshd      9418    root    3u  IPv4  38602      0t0  TCP altlinux.localdomain:ssh->172.16.3.62:49201 (ESTABLISHED)
sshd      9423    soto    3u  IPv4  38602      0t0  TCP altlinux.localdomain:ssh->172.16.3.62:49201 (ESTABLISHED)
sshd      9969    root    3u  IPv4  40083      0t0  TCP altlinux.localdomain:ssh->172.16.3.62:49217 (ESTABLISHED)
sshd      9974    soto    3u  IPv4  40083      0t0  TCP altlinux.localdomain:ssh->172.16.3.62:49217 (ESTABLISHED)

Оффлайн Security

  • Начинающий
  • *
  • Сообщений: 6
Re: Локальный репозиторий, зеркало.
« Ответ #12 : 13.11.2019 16:57:45 »
Удалось получить доступ к зеркалу с клиент-серверных машин.
Возможно кому-то поможет.

1) Изменил Nginx:
 В конфиге (/etc/nginx/sites-enabled.d/repo.conf) дописал полное имя и IP адрес через пробелы. И указал папку зеркала "localrep"
Спойлер
server {
listen 80;
server_name altlinux altlinux.localdomain 192.168.0.105;

access_log /var/log/nginx/repo-access.log;
error_log /var/log/nginx/repo-error.log;

location / {
root /rep/localrep;
autoindex on;
            }
        }
2) Изменил source.list в клиентах с ftp на http (т.к. rep пакеты по не понятной для меня причине не отображались по ftp)
Спойлер
rpm [p8] http://192.168.0.105/5.1/branch/ x86_64 classic
# rpm [p8] ftp://192.168.0.105/mirror/5.1/branch/ x86_64-i586 classic
rpm [p8] http://192.168.0.105/5.1/branch/ noarch classic

И О ЧУДО!
apt-get install (имя пакета из каталога зеркала) начинает скачивать!

Вопрос к "старожилам" Простите за сумбур ниже

1) Почему в настройках сервера обновлений http://localhost:8080/ указано что скачено 21 ГБ: Стабильная ветка ALT Linux 5.1 mirror.yandex.ru x86_64 (21 Гб).
Мой 100ГБ диск достаточно быстро переполнился ежедневным зеркалированием Пакеты дублируются в деректориях к примеру /5.1/branch/files/noarch/ и /5.1/branch/noarch/
Верно ли я понял что зеркалирование в данном случае "обычное копирование всей базы", оно не умеет дозаписывать или обновлять версии пакетов.

2) Файлы rep на зеркале датированы 2007 - 2014 годом.  :-o

3) Как развёртывать пакеты не состоящие в скаченном зеркал?
К примеру аналог команды в cmd "tree". Брать в других репозиторях и из кеша apt копировать нужные пакеты в папку зеркала ?

Спасибо за развёрнутые ответы.  :-)

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: Локальный репозиторий, зеркало.
« Ответ #13 : 13.11.2019 17:06:11 »
Возникла задача сделать 1 Alt сервер с локальным репозиторием для обновления других машин в локальной сети (без доступа к интернету)
Есть ещё вариант поставить Squid с большим кэшем. apt, соответственно, настроить на использование прокси.

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 043
  • ITS
Re: Локальный репозиторий, зеркало.
« Ответ #14 : 14.11.2019 11:15:40 »
Возми за основу все же мой вариант https://forum.altlinux.org/index.php?topic=39284.msg314588#msg314588
sisyphus-mirror и proftpd