infra/@kt-station.infra/mirror/CLAUDE.md

mirror — Локальная копия сервера на ПК kt

Канал: MIRROR (сервер → ПК)
Метод: rsync по SSH
Расписание: при старте + каждый час
Статус: active ✓


ЧТО СИНХРОНИЗИРУЕТСЯ

Сервер                           ПК ~/SERVER/
─────────────────────────────────────────────
/opt/claude-workspace/  →→→      workspace/
/var/www/html/files/    →→→      files/
/mnt/beget-s3/          →→→      dataspace/   (--exclude='up/' --exclude='dl/')
/mnt/beget-infra/       →→→      infra/

beget-s3/up/ исключён — UP канал (sshfs) пишет туда с ПК.
beget-s3/dl/ исключён — DL канал (sshfs) монтирует отдельно.


ЗАЩИТА ПАПОК

~/SERVER/         ← chattr +i (нельзя rm -rf ~/SERVER/)
├── workspace/    ← rsync пишет свободно ✓
├── files/        ← rsync пишет свободно ✓
├── dataspace/    ← rsync пишет свободно ✓
│   ├── up/       ← sshfs UP канал (не rsync)
│   └── dl/       ← sshfs DL канал (не rsync)
└── infra/        ← rsync пишет свободно ✓

КОМАНДЫ

# Вручную
bash <(curl -s http://91.218.142.168/files/sync-server.sh)

# Статус таймера
systemctl --user status kt-mirror.timer

# Принудительный запуск
systemctl --user start --no-block kt-mirror.service

СКРИПТЫ

Файл Назначение
scripts/sync-server.sh Rsync всех папок
/var/www/html/files/sync-server.sh Деплой