Merge remote-tracking branch 'origin/main'

This commit is contained in:
Syncthing
2026-05-30 18:01:11 +00:00
2 changed files with 30 additions and 1 deletions
+25 -1
View File
@@ -124,11 +124,15 @@ Sleep управляется `htpc-sleep-guard` — Python-скрипт + system
| Сервис | Статус | Роль |
|---|---|---|
| `htpc-sleep-guard` | **active/enabled** | актуальный guard |
| `htpc-sleep-guard` | **active/enabled** | актуальный guard (SSH + торренты + rsync-файл) |
| `transmission-sleep-guard` | disabled | старый, отключён (дублировал и держал ингибитор постоянно) |
### Логика guard
**Всегда (вне зависимости от времени):**
- Активная SSH сессия → держит inhibitor (HTPC не спит)
- Файл `/tmp/rsync-active` существует → держит inhibitor (rsync, бэкап и т.п.)
**Дневное окно (11:0023:00):**
- Торренты активны → держит systemd inhibitor (HTPC не спит)
- Торренты не активны → inhibitor не держится, machine idle
@@ -147,6 +151,26 @@ Sleep управляется `htpc-sleep-guard` — Python-скрипт + system
- **409 retry**: при HTTP 409 от Transmission обновляет `X-Transmission-Session-Id` и повторяет запрос
- **suspend trigger**: при переходе из "hold → release" вызывает `systemctl suspend` (без sudo, через polkit/logind)
Патч 2026-05-30 (rsync-active триггер):
- Добавлена функция `rsync_active()` — проверяет существование файла `/tmp/rsync-active`
- Guard держит inhibit пока файл существует (вне зависимости от времени)
- Исправлена обработка ошибок: `torrents_active()` и `ssh_active()` обёрнуты в отдельные `try/except`
- Использование: `touch /tmp/rsync-active` (включить), `rm /tmp/rsync-active` (выключить)
### rsync-active триггер
Любой процесс может держать HTPC в бодрствующем состоянии, создав файл `/tmp/rsync-active`:
```bash
# Запретить сон (например, перед долгим rsync/bkp)
touch /tmp/rsync-active
# Разрешить сон (после завершения)
rm /tmp/rsync-active
```
Guard проверяет файл каждые 60 секунд. Сервис: `systemctl --user status htpc-sleep-guard`.
### Разбудить/усыпить вручную
```bash
+5
View File
@@ -44,6 +44,11 @@ print('Magic packet sent')
ping -c 5 192.168.1.86
```
### Sleep management
HTPC использует `htpc-sleep-guard` — см. [[htpc-system#Автосон / Sleep management]].
Чтобы не дать HTPC уснуть во время долгой операции: `touch /tmp/rsync-active` на HTPC.
По окончании: `rm /tmp/rsync-active`.
### Если не просыпается
WoL должен быть включён в BIOS/UEFI. Проверить настройки на HTPC (пока он живой):
```bash