Files
2026-08-20 04:18:38 +09:00

5.4 KiB

XLX-Pistarscript-panel-Install

Памятка по развёртыванию собственного XLX-рефлектора (мультирежимный DMR/D-Star/YSF рефлектор) вместе с самописной веб-панелью регистрации позывных и набором файлов для хотспотов Pi-Star. Репозиторий не содержит кода — это пошаговая инструкция автора, описывающая порядок установки и связывание трёх своих репозиториев (xlxd-debian-installer, reg, pistar), а также cron-задание, которое выкладывает базы DMR ID в веб-каталог, откуда их забирают хотспоты.

Исходный текст инструкции сохранён как README.upstream.md — он является первоисточником, ниже приводится его разбор.

Стек

  • Bash, cron.
  • Debian-сервер с Apache2 + PHP (ставит xlxd-debian-installer), каталог рефлектора /xlxd, веб-каталог /var/www/xlxd.
  • Веб-панель регистрации (репозиторий reg) — хранит данные в db.json и генерирует dmrid.dat.
  • Клиентская сторона — хотспоты Pi-Star, забирающие файлы ID по HTTP.

Структура

  • README.upstream.md — оригинальная инструкция автора (единственный содержательный файл репозитория).
  • README.md — этот файл.

Внешние компоненты, на которые ссылается инструкция:

  • xlxd-debian-installer — установщик самого рефлектора (форк, отдельный репозиторий).
  • reg — панель регистрации и администрирования позывных, разворачивается в /var/www/xlxd/reg.
  • pistar — каталог файлов для хотспотов, разворачивается в /var/www/xlxd/pistar.

Как запустить/установить

  1. Установка рефлектора:
git clone https://github.com/viktor138irk/xlxd-debian-installer
/root/xlxd-debian-installer.sh
  1. Панель регистрации позывных:
cd /var/www/xlxd
git clone https://github.com/viktor138irk/reg
chmod 666 /var/www/xlxd/reg/db.json
chmod 666 /var/www/xlxd/reg/dmrid.dat
ln -s /var/www/xlxd/reg/dmrid.dat /xlxd/dmrid.dat

Симлинк подставляет базу, которую ведёт панель, на место базы ID, читаемой демоном xlxd.

  1. Файлы для Pi-Star:
cd /var/www/xlxd
git clone https://github.com/viktor138irk/pistar
nano /xlxd/dmrid.sh

Содержимое /xlxd/dmrid.sh:

#!/bin/bash
echo $(date) >> /var/log/dmrid.log
curl -o /var/www/xlxd/pistar/DMRIds.dat https://www.pistar.uk/downloads/DMRIds.dat
cp /xlxd/dmrid.dat /xlxd/DMRIdsYKT.dat
sed -i -e 's/;/\t/g' /xlxd/DMRIdsYKT.dat
cp /xlxd/DMRIdsYKT.dat /var/www/xlxd/pistar/DMRIdsYKT.dat
rm /xlxd/DMRIdsYKT.dat

Скрипт скачивает мировую базу DMRIds.dat с pistar.uk и рядом кладёт локальную базу рефлектора, конвертируя разделитель ; в табуляцию (формат, который ожидает Pi-Star).

  1. Права и расписание:
chmod 755 /xlxd/dmrid.sh
echo "* * * * * /xlxd/dmrid.sh" >> /var/spool/cron/crontabs/root
echo "@reboot /root/restartall.sh" >> /var/spool/cron/crontabs/root

Конфигурация

  • Пути жёстко зашиты: /xlxd (рабочий каталог рефлектора), /var/www/xlxd (веб-корень), /var/www/xlxd/reg, /var/www/xlxd/pistar.
  • Имя локальной базы для хотспотов — DMRIdsYKT.dat.
  • Источник мировой базы ID — https://www.pistar.uk/downloads/DMRIds.dat.
  • Расписание cron — ежеминутно (* * * * *).
  • Права 666 на db.json и dmrid.dat нужны, чтобы панель под www-data могла их перезаписывать.

Состояние

Рабочая памятка, соответствующая реально развёрнутой инсталляции. Последний коммит 2025-07-12, всего 3 коммита (первичный импорт и две правки README).

Что не доделано

  • Скрипт /xlxd/dmrid.sh существует только в виде текста в инструкции — в репозитории его нет, при установке он набирается вручную.
  • Упомянутый /root/restartall.sh (запуск по @reboot) нигде не описан и в репозитории отсутствует.
  • Запуск раз в минуту избыточен: каждая минута тянет полную мировую базу DMR ID с внешнего сайта.
  • Нет описания репозиториев reg и pistar, нет проверок ошибок и логирования результата (в лог пишется только дата запуска).