[2026-09-22] eagle: personal/plans/lampac-disable-1xbet-ads.md personal/plans/watchlist-tmdb-missing-marker.md personal/tech/lampac-deployment.md personal/tech/lampac-torrserver.md
This commit is contained in:
1 parent
c835707a13
commit
c9d1f21383
4 files changed
+392
-24
No files matched your search
@@ -1,5 +1,8 @@
|
||||
# Отключение рекламы 1xbet в Lampa (онлайн-балансеры)
|
||||
|
||||
> ⚠️ **СТАТУС: НЕ ПРИМЕНЕНО.** Alex сказал: «Я БЛЯДЬ НЕ ПРОСИЛ ГАСИТЬ ОНЛАЙН».
|
||||
> План оставлен как справка — что где лежит. Ничего не менялось.
|
||||
|
||||
**Дата:** 2026-09-22
|
||||
**Статус:** 🔴 ПЛАН — требует подтверждения Alex перед применением
|
||||
**Связано:** [[personal/tech/lampac-deployment]], [[personal/plans/watchlist-tmdb-missing-marker]]
|
||||
|
||||
@@ -45,28 +45,36 @@ Sonarr : 13 сериалов, added >= 20.09: 0 — авто-закачек НЕ
|
||||
(вырезанный `sync-down`) в git — **всё ещё НЕ сделан**, единственный хвост
|
||||
этого пункта.
|
||||
|
||||
### 2. Имя в карточке — из источника (TMDB/КП), НЕ из `.md` — ⏳ В РАБОТЕ
|
||||
### 2. Имя в карточке — из источника (TMDB/КП) — ✅ ВЫПОЛНЕНО (2026-09-22)
|
||||
|
||||
Alex: *«че по имени в карточке? оно должно из источника ставиться»* + *«делай»*.
|
||||
Alex: *«че по имени в карточке? оно должно из источника ставиться»* + *«иди делать он»*.
|
||||
|
||||
Сейчас генератор пишет в карточку `it["name"]` = название **из `.md`**:
|
||||
**Сделано:** `tmdb_details()` теперь тянет `title` (ru-RU) + `original_title` +
|
||||
`year` из `release_date`. В `enrich()` имя/оригинал/год подставляются из источника,
|
||||
`.md` остаётся fallback'ом (год из `.md` не перетирается — он может быть точнее
|
||||
для локальных премьер).
|
||||
|
||||
```python
|
||||
# gen_watchlist.py, блок записи карточки (~строка 733)
|
||||
card_body = {"card": {
|
||||
"name": it["name"], # ← из .md, не из TMDB/КП
|
||||
"title": it["name"], # дублируется намеренно:
|
||||
"original": it["original"], # CardController ищет attribute name,
|
||||
"original_title": it["original"], # в ответе ключи title/original_title
|
||||
...
|
||||
}}
|
||||
Прошлая версия этого пункта (объяснение, «что нужно») **отменена — сделано**:
|
||||
|
||||
```
|
||||
в .md: TMDB ru-RU:
|
||||
'Смерть единорога' → 'Смерть Единорога' ← регистр из источника
|
||||
'Everything…' → 'Всё везде и сразу'
|
||||
'Простите за бесп…'→ orig='Sorry to Bother You'
|
||||
year: null → 2025 / 2018 / 2012 / 1972
|
||||
```
|
||||
|
||||
Требование Alex: «Отображать как в tmdb/kp», «Ничего не укорачивать».
|
||||
**Нужно:** брать имя из источника (TMDB `title`/`name` из `tmdb_details()`,
|
||||
либо `name` документа КП) и писать его в `card.title` + `watchlist.json[].name`.
|
||||
Функция `tmdb_details()` уже тянет детали и кэширует — там есть `poster_path`,
|
||||
но **имени она сейчас не сохраняет**, надо добавить.
|
||||
**Миграция кэша:** 367 записей без поля `title` дотягиваются при первом
|
||||
обращении (проверка `d.get("title")` в начале `tmdb_details`).
|
||||
|
||||
**Боевой прогон (EXIT=0):** 376 позиций, без года 1 (`Волшебный участок: Фильм`),
|
||||
296 с русским названием + оригиналом. Коммит **`53e5803`** (запушен).
|
||||
|
||||
🔴 **Питфолл:** `setsid nohup` НЕ спасает от обрыва ssh — прогон умирал дважды.
|
||||
Решение: `systemd-run --user --unit=gen-watchlist --scope <script>`.
|
||||
|
||||
Детали: [[personal/tech/lampac-deployment#✅ Название и год карточки — ИЗ TMDB, не из `.md` (2026-09-22)]]
|
||||
|
||||
|
||||
⚠️ Осторожно с `original`: это EN-название, нужен RU/title из TMDB при
|
||||
`language=ru-RU`. Проверить на 3 позициях, где `.md`-название ≠ название TMDB
|
||||
|
||||
@@ -394,6 +394,107 @@ if norm(title) not in missing:
|
||||
(`$H` = `/srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/lampac`),
|
||||
`kraken:kraken`, бэкапы `/tmp/movies-watchlist.md.bak-*` + `.bak-questions` рядом.
|
||||
|
||||
## ✅ Название и год карточки — ИЗ TMDB, не из `.md` (2026-09-22)
|
||||
|
||||
**Требование Alex (дословно):** *«че по имени в карточке? оно должно из источника
|
||||
ставиться.»* + ранее *«БЛЯДЬ ... Ничего не укорачивать. Отображать как в tmdb/kp.»*
|
||||
|
||||
### Что было не так
|
||||
|
||||
Генератор писал `it["name"] = название из .md`, `it["year"] = год из .md`.
|
||||
Проверено сырьём — TMDB отдаёт **другое**:
|
||||
|
||||
```
|
||||
в .md: TMDB ru-RU: TMDB en-US:
|
||||
'Смерть единорога' → 'Смерть Единорога' 'Death of a Unicorn' ← регистр!
|
||||
'Everything…' → 'Всё везде и сразу' 'Everything…' ← русское
|
||||
'Духless' → 'Духless' 'Soulless'
|
||||
```
|
||||
|
||||
Плюс `year` вообще приходил `null`, хотя TMDB знает `release_date`, а в кэше
|
||||
деталей **не было поля с названием** — только `cast/country/genres/overview/
|
||||
poster_path/runtime/tagline/vote`.
|
||||
|
||||
### Фикс: `tmdb_details()` тянет имя + год
|
||||
|
||||
```python
|
||||
url = (f"https://api.themoviedb.org/3/{mtype}/{tmdb_id}"
|
||||
f"?api_key={api_key}&language=ru-RU&append_to_response=credits")
|
||||
ru_title = d.get("title") or d.get("name") or ""
|
||||
orig_title = d.get("original_title") or d.get("original_name") or ""
|
||||
date = d.get("release_date") or d.get("first_air_date") or ""
|
||||
year = int(date[:4]) if re.match(r"^\d{4}", date) else None
|
||||
out = {..., "title": ru_title, "original_title": orig_title,
|
||||
"en_title": en_title, "year": year, "release_date": date}
|
||||
```
|
||||
|
||||
В `enrich()` — приоритет **источник → `.md` как fallback**:
|
||||
|
||||
```python
|
||||
src_name = (d.get("title") or "").strip()
|
||||
if src_name:
|
||||
it["name"] = src_name # русское название TMDB
|
||||
src_orig = (d.get("original_title") or "").strip()
|
||||
if src_orig:
|
||||
it["original"] = src_orig # оригинал
|
||||
if it.get("year") is None and d.get("year"):
|
||||
it["year"] = d["year"] # год из release_date
|
||||
```
|
||||
|
||||
⚠️ Год из `.md` **не перетирается**, если он там был — он может быть точнее для
|
||||
локальных премьер РФ.
|
||||
|
||||
### 🔴 Миграция старого кэша деталей
|
||||
|
||||
367 записей были **без поля `title`**. Добавлена проверка в начале
|
||||
`tmdb_details()`: если у записи нет `title` — перезапрашивается из TMDB
|
||||
(остальные 8 полей не теряются, запись заменяется целиком).
|
||||
|
||||
```python
|
||||
if key in details:
|
||||
d = details[key]
|
||||
if d.get("title"): # уже мигрировано
|
||||
return d
|
||||
# иначе падаем дальше в запрос
|
||||
```
|
||||
|
||||
### Боевой прогон (EXIT=0)
|
||||
|
||||
```
|
||||
376 позиций | без года: 1 (из 376) | 296 с русским названием + оригиналом
|
||||
|
||||
'Смерть единорога' → 'Смерть Единорога' orig='Death of a Unicorn' year=2025
|
||||
'Everything…' → 'Всё везде и сразу' orig='Everything…' year=2022
|
||||
'Простите за бесп…' → чисто orig='Sorry to Bother You' year=2018
|
||||
'Духless' → 'Духless' orig='Духless' year=2012
|
||||
'Бумбараш' → 'Бумбараш' orig='Бумбараш' year=1972
|
||||
'Я ругаюсь' → orig='I Swear' · 'Гамнет' → orig='Hamnet'
|
||||
'Марти Великолепный'→ orig='Marty Supreme'
|
||||
```
|
||||
|
||||
Единственная позиция без года: **`Волшебный участок: Фильм`** — в TMDB год
|
||||
не проставлен.
|
||||
|
||||
Коммит `lampac-scripts` **`53e5803`** (запушен: `1122b71..53e5803 main -> main`).
|
||||
|
||||
### 🔴 Питфолл прогона: `setsid nohup` НЕ спасает от обрыва ssh
|
||||
|
||||
Прогон умирал **дважды** на `client_loop: send disconnect: Broken pipe` —
|
||||
ssh-сессия забирала группу процессов с собой. Рабочее решение:
|
||||
|
||||
```bash
|
||||
systemd-run --user --unit=gen-watchlist --scope /tmp/gen-runner.sh
|
||||
# Running scope as unit: gen-watchlist.scope ← отвязан от сессии
|
||||
```
|
||||
|
||||
Обёртка `~/lampac-tmp/run_gen_systemd.sh` пишет лог в `/tmp/gen-run.log`
|
||||
и добавляет `EXIT=$?` в конец. Проверка: `pgrep -f gen_watchlist.py`.
|
||||
|
||||
⚠️ **Путь к `.md` — на уровень ВЫШЕ lampac:**
|
||||
`$H/obsidian/family/documents/movies-watchlist.md`, где
|
||||
`$H` = `/srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f`.
|
||||
Ошибочно подставлял `$H/lampac/obsidian/...` → `[ERR] нет источника`.
|
||||
|
||||
## 🔴🔴 Источники воспроизведения: торренты ≠ «смотреть онлайн» (2026-09-22)
|
||||
|
||||
**Вопрос Alex:** *«у меня есть определенные сомнения что через torrserver идут,
|
||||
@@ -438,14 +539,85 @@ FlixCDN · Gencit · HDVB · Kinobase · Kinogo · Kinoteatrkg · Kinotochka ·
|
||||
LeProduction · Mirage · Phantom · PizdatoeHD · RuDub · RutubeMovie · Spectre ·
|
||||
VeoVeo · Vibix · VideoDB · Videoseed · VkMovie · Zetflix · ZetflixDB`
|
||||
|
||||
### Почему «Торренты» пусто
|
||||
### Почему «Торренты» пусто — ✅ РАЗОБРАНО ПОЛНОСТЬЮ (2026-09-22)
|
||||
|
||||
TorrServer **работает** (`docker exec lampac curl -s http://127.0.0.1:9085/echo`
|
||||
→ `MatriX.135`), но по этим фильмам **нет раздач** — нет сидов в трекере.
|
||||
Это не поломка.
|
||||
**Вывод: TorrServer и вся торрент-цепочка ИСПРАВНЫ. Чинить нечего.**
|
||||
|
||||
🔴 **TorrServer НЕДОСТУПЕН снаружи контейнера** — `curl http://127.0.0.1:9085/*`
|
||||
с хоста даёт `Connection refused`. Проверять **только** через `docker exec lampac`.
|
||||
Первая версия объяснения («нет раздач — нет сидов») была **неполной**. Полная
|
||||
диагностика ниже доказала, что раздачи находятся. Отдельный док:
|
||||
[[personal/tech/lampac-torrserver]].
|
||||
|
||||
#### TorrServer жив и качает
|
||||
|
||||
```bash
|
||||
docker exec lampac sh -c 'curl -s http://127.0.0.1:9085/echo' # -> MatriX.135
|
||||
```
|
||||
|
||||
Тест живым магнитом (Big Buck Bunny) — раздача добавилась и пошла:
|
||||
|
||||
```json
|
||||
{"title":"probe","name":"Big Buck Bunny","stat":3,
|
||||
"stat_string":"Torrent working","total_peers":343,"active_peers":7,
|
||||
"connected_seeders":5,"bytes_written":6918,"bytes_read":49072}
|
||||
```
|
||||
|
||||
⚠️ Тестовая раздача **удалена** после проверки:
|
||||
`POST /ts/torrents {"action":"rem","hash":"<hash>"}` → HTTP 200.
|
||||
|
||||
#### Торрент-поиск работает по всей цепочке
|
||||
|
||||
```
|
||||
JacRed /api/v1.0/torrents?search=Матрица → HTTP 200, 74 КБ, magnet ✅
|
||||
трекеры: kinozal, torrentby, rutor, rutracker
|
||||
PidTor /lite/pidtor?title=Матрица&year=1999 → HTTP 200, 8435 Б, раздача ✅
|
||||
jac.red → 144.31.3.10, HTTP 200 ✅
|
||||
/lite/events → "Pid<s>T</s>or" присутствует ✅
|
||||
```
|
||||
|
||||
#### 🔴 Почему я поначалу решил, что TorrServer сломан — питфолл маршрутов
|
||||
|
||||
**TorrServer НЕ доступен по порту 9085 для клиента.** Lampac проксирует его
|
||||
под префиксом **`/ts/`** на порт **9118**:
|
||||
|
||||
```
|
||||
http://127.0.0.1:9118/ts/echo -> MatriX.135
|
||||
http://127.0.0.1:9118/ts/{*suffix} -> прокси на TorrServer API
|
||||
http://127.0.0.1:9118/ts/stream -> воспроизведение
|
||||
http://127.0.0.1:9118/ts/playlist -> плейлист
|
||||
http://127.0.0.1:9118/ts/download/ -> скачивание
|
||||
```
|
||||
|
||||
Мои первые запросы `GET http://127.0.0.1:9085/torrents` → 404, и я принял это
|
||||
за поломку. Снаружи контейнера порт 9085 вообще даёт `Connection refused`.
|
||||
Проверять **только** через `docker exec lampac` либо через `/ts/` на 9118.
|
||||
|
||||
🔴 **Метод запроса ВАЖЕН — и `400` вместо `404` = маршрут существует:**
|
||||
|
||||
```
|
||||
POST /ts/torrents с телом [] -> [] ✅ список раздач
|
||||
POST /ts/torrents с телом {} -> 400 (неверный формат тела)
|
||||
GET /ts/torrents -> 404 (метода нет)
|
||||
GET /ts/settings -> 403 (нужна авторизация ts:tspass)
|
||||
```
|
||||
|
||||
#### 🔴 Вероятная причина пустого списка у Alex: `min_sid: 15`
|
||||
|
||||
```json
|
||||
"PidTor": { "enable": true, "enabled": false, "redapi": "http://jac.red",
|
||||
"min_sid": 15, "torrs": null, "auth_torrs": null }
|
||||
```
|
||||
|
||||
Раздачи с числом сидов **< 15 отсекаются**. Редкие/старые фильмы дадут пусто
|
||||
именно из-за этого. Проверка по конкретному фильму:
|
||||
|
||||
```bash
|
||||
curl -s "http://127.0.0.1:9118/lite/pidtor?title=<название>&year=<год>"
|
||||
docker logs lampac 2>&1 | grep -i pidtor
|
||||
```
|
||||
|
||||
⚠️ **README PidTor устарел:** там написано «пункт появляется только если заданы
|
||||
`torrs`/`auth_torrs`, иначе список пустой». Фактически при `null` `/lite/pidtor`
|
||||
отдал 8435 байт с рабочей раздачей. Верить факту, не README.
|
||||
|
||||
### `vast.js` — НЕ виновник (проверено сырьём)
|
||||
|
||||
@@ -490,7 +662,12 @@ $H/wwwroot/sisi/plugins/modification.js (22 КБ):
|
||||
```
|
||||
|
||||
План и варианты: [[personal/plans/lampac-disable-1xbet-ads]].
|
||||
Статус: **ждёт выбора Alex** (гасить онлайн полностью / частично / оставить).
|
||||
|
||||
🔴🔴 **СТАТУС: НЕ ПРИМЕНЕНО И НЕ БУДЕТ.** Alex: *«Я БЛЯДЬ НЕ ПРОСИЛ ГАСИТЬ
|
||||
ОНЛАЙН, ЕБЛАН! Я СКАЗАЛ ЧИНИТЬ torrserver!»* Задача была — **диагностировать
|
||||
TorrServer**, а не гасить онлайн. План откачен, `init.conf` не менялся.
|
||||
Док оставлен как справка, где лежит выключатель; применять только по прямому
|
||||
указанию Alex.
|
||||
|
||||
## 🚀 Деплой генератора на Кра́кен (проверено 2026-09-22)
|
||||
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
# TorrServer на Кра́кене — диагностика (исправен)
|
||||
|
||||
**Дата:** 2026-09-22
|
||||
**Вывод:** 🔴 **ЧИНИТЬ НЕЧЕГО. TorrServer и вся торрент-цепочка работают.**
|
||||
**Связано:** [[personal/tech/lampac-deployment]], [[personal/plans/lampac-disable-1xbet-ads]]
|
||||
|
||||
---
|
||||
|
||||
## Вопрос Alex
|
||||
|
||||
> «по просмотру: у меня есть определенные сомнения что через torrserver идут,
|
||||
> там только пункт "смотреть онлайн" работает и он добавляет вотермарк и рекламу
|
||||
> 1xbet - это точно с торрентов? потому что если пункт "торренты" выбрать
|
||||
> при просмотре - то там пусто.»
|
||||
|
||||
## Ответ: сомнения Alex верны по рекламе. Но TorrServer исправен.
|
||||
|
||||
### Реклама 1xbet — НЕ от TorrServer
|
||||
|
||||
| Пункт UI | Механизм | Источник потока | Реклама |
|
||||
|---|---|---|---|
|
||||
| **«Торренты»** | `PidTor` → `JacRed` → magnet → `TorrServer` | P2P-раздача | **НЕТ** |
|
||||
| **«Смотреть онлайн»** | `Online` + `OnlineRUS` (20 балансеров) | чужой CDN сайта | **ЕСТЬ (1xbet)** |
|
||||
|
||||
TorrServer не вставляет рекламу. Баннеры рисует плеер-обёртка онлайн-источника.
|
||||
|
||||
## 🔴 Все проверки — сырьём, не догадкой
|
||||
|
||||
### 1. TorrServer жив и качает
|
||||
|
||||
```bash
|
||||
# изнутри контейнера (снаружи порт 9085 закрыт!)
|
||||
docker exec lampac sh -c 'curl -s http://127.0.0.1:9085/echo'
|
||||
# -> MatriX.135
|
||||
```
|
||||
|
||||
✅ **Раздача добавилась и пошла качаться** (тест магнитом Big Buck Bunny):
|
||||
|
||||
```json
|
||||
{"title":"probe","name":"Big Buck Bunny","hash":"dd8255ec...","stat":3,
|
||||
"stat_string":"Torrent working","total_peers":343,"active_peers":7,
|
||||
"connected_seeders":5,"bytes_written":6918,"bytes_read":49072,
|
||||
"torrent_size":276445467}
|
||||
```
|
||||
|
||||
⚠️ Тестовая раздача **удалена** после проверки:
|
||||
`POST /ts/torrents {"action":"rem","hash":"..."}` → HTTP 200.
|
||||
|
||||
### 2. JacRed находит раздачи
|
||||
|
||||
```bash
|
||||
curl -s "http://127.0.0.1:9118/api/v1.0/torrents?search=Матрица"
|
||||
# HTTP 200, 74 КБ
|
||||
```
|
||||
|
||||
Трекеры в выдаче: `kinozal`, `torrentby`, `rutor`, `rutracker`.
|
||||
Магниты на месте: `magnet:?xt=urn:btih:3A44F276AA59110B5765458EA013863CFD5BFBFA`
|
||||
|
||||
### 3. PidTor выдаёт торренты в UI
|
||||
|
||||
```bash
|
||||
curl -s "http://127.0.0.1:9118/lite/pidtor?title=Матрица&year=1999"
|
||||
# HTTP 200, 8435 байт
|
||||
```
|
||||
|
||||
Ответ содержит рабочий торрент:
|
||||
`/lite/pidtor/s61065ea115b7cc3e8db9fb5ab1f6f327f08bd1c9?tr=...`
|
||||
|
||||
В `/lite/events` PidTor присутствует как источник: `"name":"Pid<s>T</s>or"`.
|
||||
|
||||
### 4. `jac.red` резолвится
|
||||
|
||||
```
|
||||
getent hosts jac.red -> 144.31.3.10
|
||||
curl http://jac.red -> HTTP 200
|
||||
```
|
||||
|
||||
## 🔴 Маршруты — главный питфолл разбора
|
||||
|
||||
TorrServer **НЕ доступен по порту 9085 напрямую** — lampac проксирует его
|
||||
под префиксом **`/ts/`** на порт **9118**:
|
||||
|
||||
```
|
||||
http://127.0.0.1:9118/ts/echo -> MatriX.135 (кто ты)
|
||||
http://127.0.0.1:9118/ts/{*suffix} -> прокси на TorrServer API
|
||||
http://127.0.0.1:9118/ts/stream -> воспроизведение
|
||||
http://127.0.0.1:9118/ts/playlist -> плейлист
|
||||
http://127.0.0.1:9118/ts/download/ -> скачивание
|
||||
```
|
||||
|
||||
Проверять **только изнутри контейнера** (`docker exec lampac`) — снаружи
|
||||
порт 9085 даёт `Connection refused`.
|
||||
|
||||
### Метод запроса ВАЖЕН
|
||||
|
||||
```
|
||||
POST /ts/torrents с телом [] -> [] ✅ список раздач
|
||||
POST /ts/torrents с телом {} -> 400 (неверный формат)
|
||||
GET /ts/torrents -> 404 (метода нет)
|
||||
GET /ts/settings -> 403 (нужна авторизация ts:tspass)
|
||||
```
|
||||
|
||||
**400 вместо 404 = маршрут существует.** Это ключевой признак при диагностике.
|
||||
|
||||
## 🔴 Конфиг: где что лежит
|
||||
|
||||
### `current.conf` (эффективный, слитый из base.conf + init.conf)
|
||||
|
||||
```json
|
||||
"TorrServer": {
|
||||
"releases": "MatriX.135",
|
||||
"tsport": 9085,
|
||||
"defaultPasswd": "ts",
|
||||
"limit_map": [{ "pattern": "^/ts/", "map": { "limit": 50, "second": 1 } }]
|
||||
},
|
||||
"JacRed": {
|
||||
"typesearch": "webapi",
|
||||
"disableJackett": true,
|
||||
"webApiHost": "http://ns3bg91xvuqfvq9h.cfhttp.top",
|
||||
"Red": { "trackers": ["rutracker","rutor","kinozal","nnmclub",
|
||||
"megapeer","bitru","toloka","lostfilm","baibako","torrentby",
|
||||
"hdrezka","selezen","animelayer","anilibria","anifilm"] }
|
||||
},
|
||||
"PidTor": {
|
||||
"enable": true,
|
||||
"enabled": false,
|
||||
"redapi": "http://jac.red",
|
||||
"min_sid": 15,
|
||||
"torrs": null, ← README: без этого список ПУСТОЙ
|
||||
"auth_torrs": null ← ...но фактически /lite/pidtor работает
|
||||
}
|
||||
```
|
||||
|
||||
⚠️ **Расхождение с README PidTor:** README говорит «пункт появляется только
|
||||
если заданы `torrs`/`auth_torrs`, иначе список пустой». Фактически при `null`
|
||||
`/lite/pidtor` отдал 8435 байт с рабочей раздачей. README устарел для этой
|
||||
сборки (`MatriX.135`).
|
||||
|
||||
### API JacRed
|
||||
|
||||
```
|
||||
GET /api/v1.0/conf -> {"apikey":true}
|
||||
GET /api/v1.0/torrents?search=... -> список раздач
|
||||
GET /api/v2.0/indexers/{status}/results?Query= -> JacRed/Jackett-формат
|
||||
```
|
||||
|
||||
⚠️ `/jacred`, `/jacred/api` → **404**. Не те пути.
|
||||
|
||||
### Секция `TorrServer.settings.json` (data/ts/)
|
||||
|
||||
```json
|
||||
{"BitTorr": {"CacheSize": 100663296, "ConnectionsLimit": 25,
|
||||
"DisableDHT": false, "DisablePEX": false, "DisableTCP": false,
|
||||
"EnableIPv6": false, "PreloadCache": 0, "ReaderReadAHead": 83,
|
||||
"TorrentDisconnectTimeout": 180, "TorrentsSavePath": "",
|
||||
"UseDisk": false, "RetrackersMode": 1}}
|
||||
```
|
||||
|
||||
## Питфоллы сессии
|
||||
|
||||
1. 🔴 **`/media/movies-radarr` — два разных каталога.** Снаружи `/media/movies-radarr`
|
||||
это SD-пустышка (0 файлов). Реальный путь Radarr = монтируется ИЗ ДРУГОГО
|
||||
диска: `/srv/dev-disk-by-uuid-49e8f586-…/media/movies-radarr` (17 каталогов).
|
||||
Отдельный диск от lampac (`6194539b`). Проверять `docker inspect` маунты,
|
||||
а не `find` по наружному пути.
|
||||
2. 🔴 **`setsid nohup` НЕ спасает от ssh-обрыва.** Прогон генератора дважды
|
||||
умирал (`client_loop: send disconnect: Broken pipe`). Рабочее решение —
|
||||
`systemd-run --user --unit=<name> --scope <script>`: отвязывает от сессии.
|
||||
3. 🔴 **`strings` в контейнере не даёт маршрутов TS** — пустой вывод. Смотреть
|
||||
`README.md` модуля и **пробовать запросы** (404 vs 400), а не парсить бинарник.
|
||||
4. 🔴 **`vast.js` и `modification.js` — НЕ источники рекламы.** VASTPlayer
|
||||
не подключён в `sisi/index.html`; `modification.js` (22 КБ) даёт 0 совпадений
|
||||
на `1xbet|vast|adTag`, домены только `w3.org`. Реклама от онлайн-источников.
|
||||
|
||||
## Если «Торренты» всё же пусто у Alex — что проверить
|
||||
|
||||
1. Что именно за фильм (есть ли раздачи в принципе — старые/редкие могут быть без сидов)
|
||||
2. `curl "http://127.0.0.1:9118/lite/pidtor?title=<название>&year=<год>"` — отдаёт ли
|
||||
3. `docker logs lampac | grep -i pidtor` — доходит ли запрос
|
||||
4. `min_sid: 15` — раздачи с сидами < 15 **отсекаются**. Возможно, поэтому пусто
|
||||
Reference in new issue
Block a user