docs: подробный README (разбор проекта при переносе в Gitea)
Старый README сохранён как README.upstream.md.
Этот коммит содержится в:
+52
-31
@@ -1,56 +1,77 @@
|
|||||||
Установка XLX
|
# XLX-Pistarscript-panel-Install
|
||||||
|
|
||||||
|
Памятка по развёртыванию собственного XLX-рефлектора (мультирежимный DMR/D-Star/YSF рефлектор) вместе с самописной веб-панелью регистрации позывных и набором файлов для хотспотов Pi-Star. Репозиторий не содержит кода — это пошаговая инструкция автора, описывающая порядок установки и связывание трёх своих репозиториев (`xlxd-debian-installer`, `reg`, `pistar`), а также cron-задание, которое выкладывает базы DMR ID в веб-каталог, откуда их забирают хотспоты.
|
||||||
|
|
||||||
|
Исходный текст инструкции сохранён как [README.upstream.md](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. Установка рефлектора:
|
||||||
|
```sh
|
||||||
git clone https://github.com/viktor138irk/xlxd-debian-installer
|
git clone https://github.com/viktor138irk/xlxd-debian-installer
|
||||||
|
|
||||||
/root/xlxd-debian-installer.sh
|
/root/xlxd-debian-installer.sh
|
||||||
|
```
|
||||||
--------------------------------------------------------------------
|
2. Панель регистрации позывных:
|
||||||
|
```sh
|
||||||
|
|
||||||
Установка панели для регистрации и администрирования позывных:
|
|
||||||
|
|
||||||
|
|
||||||
cd /var/www/xlxd
|
cd /var/www/xlxd
|
||||||
|
|
||||||
git clone https://github.com/viktor138irk/reg
|
git clone https://github.com/viktor138irk/reg
|
||||||
|
|
||||||
chmod 666 /var/www/xlxd/reg/db.json
|
chmod 666 /var/www/xlxd/reg/db.json
|
||||||
|
|
||||||
chmod 666 /var/www/xlxd/reg/dmrid.dat
|
chmod 666 /var/www/xlxd/reg/dmrid.dat
|
||||||
|
|
||||||
ln -s /var/www/xlxd/reg/dmrid.dat /xlxd/dmrid.dat
|
ln -s /var/www/xlxd/reg/dmrid.dat /xlxd/dmrid.dat
|
||||||
|
```
|
||||||
|
Симлинк подставляет базу, которую ведёт панель, на место базы ID, читаемой демоном `xlxd`.
|
||||||
|
|
||||||
---------------------------------------------------------------------
|
3. Файлы для Pi-Star:
|
||||||
|
```sh
|
||||||
Установка скриптов для пистар
|
|
||||||
|
|
||||||
cd /var/www/xlxd
|
cd /var/www/xlxd
|
||||||
|
|
||||||
git clone https://github.com/viktor138irk/pistar
|
git clone https://github.com/viktor138irk/pistar
|
||||||
|
|
||||||
nano /xlxd/dmrid.sh
|
nano /xlxd/dmrid.sh
|
||||||
|
```
|
||||||
---------------------------------------------------------------------
|
Содержимое `/xlxd/dmrid.sh`:
|
||||||
|
```sh
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
echo $(date) >> /var/log/dmrid.log
|
echo $(date) >> /var/log/dmrid.log
|
||||||
|
|
||||||
curl -o /var/www/xlxd/pistar/DMRIds.dat https://www.pistar.uk/downloads/DMRIds.dat
|
curl -o /var/www/xlxd/pistar/DMRIds.dat https://www.pistar.uk/downloads/DMRIds.dat
|
||||||
|
|
||||||
cp /xlxd/dmrid.dat /xlxd/DMRIdsYKT.dat
|
cp /xlxd/dmrid.dat /xlxd/DMRIdsYKT.dat
|
||||||
|
|
||||||
sed -i -e 's/;/\t/g' /xlxd/DMRIdsYKT.dat
|
sed -i -e 's/;/\t/g' /xlxd/DMRIdsYKT.dat
|
||||||
|
|
||||||
cp /xlxd/DMRIdsYKT.dat /var/www/xlxd/pistar/DMRIdsYKT.dat
|
cp /xlxd/DMRIdsYKT.dat /var/www/xlxd/pistar/DMRIdsYKT.dat
|
||||||
|
|
||||||
rm /xlxd/DMRIdsYKT.dat
|
rm /xlxd/DMRIdsYKT.dat
|
||||||
|
```
|
||||||
|
Скрипт скачивает мировую базу `DMRIds.dat` с pistar.uk и рядом кладёт локальную базу рефлектора, конвертируя разделитель `;` в табуляцию (формат, который ожидает Pi-Star).
|
||||||
|
|
||||||
-----------------------------------------------------------------------
|
4. Права и расписание:
|
||||||
|
```sh
|
||||||
chmod 755 /xlxd/dmrid.sh
|
chmod 755 /xlxd/dmrid.sh
|
||||||
|
|
||||||
echo "* * * * * /xlxd/dmrid.sh" >> /var/spool/cron/crontabs/root
|
echo "* * * * * /xlxd/dmrid.sh" >> /var/spool/cron/crontabs/root
|
||||||
|
|
||||||
echo "@reboot /root/restartall.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`, нет проверок ошибок и логирования результата (в лог пишется только дата запуска).
|
||||||
|
|||||||
@@ -0,0 +1,56 @@
|
|||||||
|
Установка XLX
|
||||||
|
|
||||||
|
|
||||||
|
git clone https://github.com/viktor138irk/xlxd-debian-installer
|
||||||
|
|
||||||
|
/root/xlxd-debian-installer.sh
|
||||||
|
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
Установка панели для регистрации и администрирования позывных:
|
||||||
|
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
|
||||||
|
Установка скриптов для пистар
|
||||||
|
|
||||||
|
cd /var/www/xlxd
|
||||||
|
|
||||||
|
git clone https://github.com/viktor138irk/pistar
|
||||||
|
|
||||||
|
nano /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
|
||||||
|
|
||||||
|
-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
chmod 755 /xlxd/dmrid.sh
|
||||||
|
|
||||||
|
echo "* * * * * /xlxd/dmrid.sh" >> /var/spool/cron/crontabs/root
|
||||||
|
|
||||||
|
echo "@reboot /root/restartall.sh" >> /var/spool/cron/crontabs/root
|
||||||
|
|
||||||
Ссылка в новой задаче
Block a user