Инструменты пользователя

Инструменты сайта


software:nas:configure_rsync_mirror_ubuntu-releases

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
software:nas:configure_rsync_mirror_ubuntu-releases [2025/03/29 11:31] – создано vladpolskiysoftware:nas:configure_rsync_mirror_ubuntu-releases [2025/03/29 15:26] (текущий) – [Дополнения и Файлы] vladpolskiy
Строка 8: Строка 8:
 =====Подготовка к работе===== =====Подготовка к работе=====
 Настройка Web-сервера и службы rsync описаны в статье [[software:nas:configure_rsync_mirror|Настройка Rsync зеркал репозиториев на DSM 7.2]]. Поэтому повторятся не будем, а перейдем к созданию папок, настройке **службы rsync**, созданию **скриптов** и **планировщику задач** на Synology Nas в DSM 7.2 Настройка Web-сервера и службы rsync описаны в статье [[software:nas:configure_rsync_mirror|Настройка Rsync зеркал репозиториев на DSM 7.2]]. Поэтому повторятся не будем, а перейдем к созданию папок, настройке **службы rsync**, созданию **скриптов** и **планировщику задач** на Synology Nas в DSM 7.2
 +
 +====Рабочая станция====
 +  *  <fc #22b14c>Устанавливаем редактор</fc> [[https://notepad-plus-plus.org/|Notepad++]] <fc #22b14c>- бесплатный текстовой редактор исходного кода. Работая в среде MS Windows, его использование регулируется</fc> [[https://ru.wikipedia.org/wiki/GNU_General_Public_License|GNU General Public License]].
 +
 +==== Создание папок ====
 +
 +Создадим в корне сайта папку для нашего репозитория, в примере папка будет называться **repo**. В ней будут распологаться папки зеркал и скрытую папку для скриптов, в примере папка будет называться **.scripts**.  
 +{{:software:nas:nas_repo_rsync_new_folder_1.png?|}}
 +===Файл .htaccess===
 +<fc #22b14c>В Notepad++ на локальной машине создадим файл **.htaccess** — это локальный конфигурационный файл веб-сервера Apache, который позволяет управлять настройками сайта, с содержанием одной единственной строки</fc> 
 +<code>
 +Options +Indexes
 +</code> 
 +{{:software:nas:rsync_mirror_dsm_18.png?|}}
 +<fc #22b14c>и сохраняем как, указываем имя:.htaccess и тип файла:"все файлы".</fc>
 +{{:software:nas:rsync_mirror_dsm_19.png?|}}
 +<fc #22b14c>Перетаскиваем файл .htaccess в окно программы File Station</fc>
 +{{:software:nas:rsync_mirror_dsm_20.png?|}}
 +<fc #22b14c>В браузере вводим IP адрес нашего сервера и убеждаемся, что индексация папок работает.</fc>
 +{{:software:nas:rsync_mirror_dsm_21.png?|}}
 +<note blue>
 +<fc #22b14c>**Примечание** Без файла .htaccess Synology запрещает доступ к странице без файла index.html, index.php и т.д. и необходимо редактировать конфигурационный файл пакета Apache HTTP Server 2.4, что требует определенных навыков в работе с Synology. 
 +Файл .htaccess  можно создать средствами пакета Synology Office, который установит нам кучу не нужных для зеркала пакетов, а после все не нужное удалить.</fc>
 +{{:software:nas:rsync_mirror_dsm_22.png?|}}
 +</note>
 +В каталоге **repo** создадим папку **ubuntu_releases** для нашего зеркала
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_1.png?|}}
 +====Создание скриптов====
 +В папке **.scripts** создадим файл скрипта загрузки **mirror_ubuntu_releases.sh** и файл исключения при зеркалировании **mirror_ubuntu_releases_list.txt**
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_2.png?|}}
 +в файле скрипта пропишем следующее
 +<code bash>
 +#!/bin/bash -x
 +rsync -avr --exclude-from='/volume1/web/.scripts/mirror_ubuntu_releases_list.txt' rsync://mirror.yandex.ru/ubuntu-releases/ /volume1/web/repo/ubuntu_releases/
 +</code>
 +**rsync** - загрузить зеркало с адреса **%%rsync://mirror.yandex.ru/ubuntu-releases/%%** в каталог **%%/volume1/web/repo/ubuntu_releases/%%** исключив указанное в файле **%%/volume1/web/repo/.scripts/mirror_ubuntu_releases_list.txt%%**
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_3.png?|}}
 +в файле **mirror_ubuntu_releases_list.txt** укажем директории архива **%%yandex.ru/ubuntu-releases/%%** которые планируем исключить 
 +<details><summary>«См.вариант исключения»</summary>:!: оставим для зеркалирования только свежие релизы Ubuntu focal, jammy и noble. Остальные исключим за ненадобностью и экономией места на диске
 +<code bash>
 +14.04/
 +14.04.6/
 +16.04/
 +16.04.7/
 +18.04/
 +18.04.6/
 +include/
 +oracular/
 +plucky/
 +releases/
 +streams/
 +trusty/
 +xenial/
 +FOOTER.html
 +HEADER.html
 +robots.txt
 +</code>
 +</details>
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_4.png?|}}
 +Изменим рекурсивно права на папки
 +<code bash>
 +sudo chown -R VladPolskiy:root /volume1/web/repo
 +sudo chmod -R 755 /volume1/web/repo
 +</code>
 +{{:software:nas:nas_repo_rsync_new_folder_16.png?|}}
 +====Настройка Планеровщика задач====
 +В панели управления в разделе Планировщик задач создадим Запланированную задачу в виде Скрипта, заданного пользователем
 +{{:software:nas:nas_repo_rsync_new_folder_9.png?|}} 
 +Во вкладке общие понятное для нас Имя задачи (примером mirror_ubuntu_releases.sh), пользователь root
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_5.png?|}}
 +Во вкладке расписание Выполнить в сегодняшнее число, время запуска через несколько минут от текущего времени (не забываем сверить наше время и времы и часовой пояс на Synology NAS) для проверки работы автоматизации.
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_7.png?|}}
 +На вкладке Настройки задачи Указываем отправлять сведения о запуски и свой адрес электронной почты, для получения отчетов и в окне Выполнить каманду вставляем следующую команду на запуск нашего скрипта
 +<code bash>
 +bash /volume1/web/.scripts/mirror_ubuntu_releases.sh
 +</code>
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_6.png?|}}
 +Ок, соглашаемся с возможными последствиями
 +{{:software:nas:nas_repo_rsync_new_folder_13.png?|}}
 +Подтверждаем вводом пароля Администратора
 +{{:software:nas:nas_repo_rsync_new_folder_14.png?|}}
 +если все вышеописанное выполнено по инструкции, в назначенное время (в примере в 12:20) должен запуститься скрипт mirror_ubuntu_releases.sh
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_8.png?|}}
 +Заходим в директорю web/repo/ubuntu_releases в File Station для проверки работы нашего скрипта
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_9.png?|}}
 +Выставляем необходимый день и время обновления нашего репозитория в Планеровщике Задач и проверим отображение репозитория в браузере
 +{{:software:nas:nas_repo_rsync_ubuntu_releases_10.png?|}}
 +=====Дополнения и Файлы=====
 +  * [[software:nas:configure_rsync_mirror|См. Настройка Rsync зеркал репозиториев на DSM 7.2]]
 +  * [[software:nas:configure_rsync_mirror_separate_folder|См. Настройка Rsync зеркал в отдельной папке на DSM 7.2]]
 +  * {{ :software:nas:example_mirror_releases_scripts.rar |Файлы папок и скриптов из данного руководства}}
 +  * [[gitea>]]https://git.wwoss.ru/VladPolskiy/Setting_Rsync_DSM_7.2
software/nas/configure_rsync_mirror_ubuntu-releases.1743237080.txt.gz · Последнее изменение: vladpolskiy