[2026-09-22] eagle: personal/plans/kraken-media-inventory-cleanup.md personal/tech/lampac-deployment.md personal/tech/skill-lampac-kraken-deploy.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-22 21:57:37 +06:00
1 parent 7eb8e6ff26
commit 329bd9fc36
3 files changed
+278 -21

No files matched your search

+158 -14
View File
@@ -5,7 +5,8 @@ related:
- '[[personal/plans/lampac-watchlist-plugin]]'
- '[[personal/plans/lampac-kraken]]'
- '[[personal/tech/lampac-deployment]]'
status: deletion-approved-awaiting-transmission-decision
- '[[personal/tech/kraken-truenas-media-copies]]'
status: transmission-stopped-manifest-ready-awaiting-answers
tags:
- kraken
- media
@@ -233,6 +234,87 @@ Alex подтвердил все три вопроса: группа 4 (копи
есть у ~40 из ~104; группа 3 (30,1 ГБ) — именно те, что закрыты. Детали и метод:
[[personal/tech/kraken-truenas-media-copies]].
## ✅ ШЕСТЬ ШАГОВ — ВЫПОЛНЕНО 4 из 6 (2026-09-22)
### Шаг 1 — дамп API Radarr/Sonarr ✅ ВЫПОЛНЕН
```
/tmp/arr-backup-20260922-215428/
radarr-movies.json 170 КБ
radarr-queue.json 129 Б
radarr-status.json 868 Б
sonarr-series.json 55 КБ
sonarr-queue.json 129 Б
sonarr-status.json 836 Б
```
| | Значение |
|---|---|
| Radarr | **6.4.4.10685**, 34 фильма, **12 с файлами**, очередь 0 |
| Sonarr | **4.0.20.3014**, 13 сериалов, очередь 0 |
🔴 **У Sonarr 13 сериалов, но файлы есть только у 4** (Our Flag Means Death,
Stranger Things, The Cyberfarm, Rick and Morty). Остальные 9 — **фантомы**
(записи без файлов): `Magical Police Department` · `The Meeting Place Cannot be Changed` ·
`MOZU` · `Delicious in Dungeon` · `Double or Quits` · `Severance` · `Futurama` ·
`True Detective` · `Brassic`.
⚠️ **`Brassic`** — в Sonarr есть запись, на диске `/media/series` лежит `Brassic (Season 1)`
(3,62 ГБ). Файлы вне библиотеки Sonarr — рассинхрон раскладки.
### Шаг 2 — стоп Transmission ✅ ВЫПОЛНЕН
`sudo docker stop transmission` → `Exited (0)`. Обратно поднимать после удаления раздач.
### Шаг 3 — чистка раздач ⏳ ГОТОВ к запуску (план построен, см. выше)
240 id в `/tmp/tr-remove-ids.txt`. Механика: контейнер остановлен → правим
`/srv/.../docker/transmission/torrents/*.torrent` + `resume/*.resume` + строку в `settings.json`.
### Шаг 4 — удаление файлов ⏳ МАНИФЕСТ ГОТОВ, ждёт подтверждения
**41 путь на диске, 693,3 ГБ.** Все пути проверены `-e` → отсутствующих 0.
| Путь | ГБ |
|---|---|
| `media/movies` | 309,69 |
| `media/movies-radarr` | 234,59 |
| `media/series` | 3,62 |
| `media/series-sonarr` | 116,14 |
| 37 папок мультфильмов (группы 3+4) | 29,3 |
| **ИТОГО** | **693,3** |
**Верификация состава `movies`/`movies-radarr`:** сверены все 51 + 11 позиций
против утверждённого списка — **все утверждены**, лишнего нет.
⚠️ **В `movies/` есть «сироты» — `.nfo`, `.srt`, постеры без видео:**
`Master.i.Margarita.2023` · `Pchelovod.2024` · `Планета обезьян Новое царство_2024` ·
`Леон (авторская версия)` · `Самолетом, поездом, машиной (1987)` · `Ворон_2024`.
Самого фильма нет, инвентарь (считает только видеофайлы) их не видел.
Удалять их правильно — это мусор от ранее удалённых фильмов.
### ⚠️ Расхождение 693 ГБ против 828 ГБ — РАЗОБРАНО
В манифест не попали **7 папок мультфильмов (42,1 ГБ)** из-за несовпадения имён папок
в скрипте: `смешарики. новый сезон. 2020` (26,43) · `Corpse.Bride.2005` (7,90) ·
`Тайна третьей планеты (1981)` (3,38) · `чебурашка` (1,97) ·
`The.Super.Mario.Bros.Movie.2023` (1,46) · `the.secret.life.of.pets.(480p)` (0,94).
**Это баг имён в манифесте, не логики.** Добавить — итог станет **735,4 ГБ**.
Остальные ~72 ГБ расхождения — короткометражки, оставленные по решению Alex.
Артефакты: `/tmp/delete-manifest.txt` (41 путь), `/tmp/step3b.sh` (сбор + верификация),
`/tmp/step3_manifest.sh` (первая версия), `/tmp/verify_movies.py` (сверка состава),
`/tmp/chk.py` (список путей cartoons).
### Шаги 5–6 — rescan + проверка ⏳ НЕ НАЧАТЫ
## ⚠️ Открытые вопросы, блокирующие шаг 4 (заданы Alex'у)
1. **Добавить 7 пропущенных папок мультфильмов?** Да → 735,4 ГБ. Нет → 693,3 ГБ.
2. **`documentaries-series` (235,6 ГБ) и `documentaries` (71,9 ГБ) — не в списке,
копий на TrueNAS нет.** Точно оставляем?
## 🔴 Порядок удаления (утверждён) — 6 шагов
1. **Дамп API** Radarr + Sonarr в файл (`/tmp/radarr-dump-*`, `/tmp/sonarr-dump-*`).
@@ -266,19 +348,63 @@ Funhouse 8,87 · Мортал Комбат 2 4,15 · + 7 мелких
Также 6 раздач без файлов в `downloads/complete/radarr` и `downloads/radarr` (9–98 ГБ).
Это «мёртвый вес» в списке — удалять из Transmission без потерь.
### ⚠️ Открытый вопрос по категории C (ждёт решения Alex)
### ✅ РЕШЕНИЕ ALEX по категории C и недокачанным (2026-09-22)
Категория C (204 раздачи, 1005,6 ГБ) включает раздачи, чьи файлы **вне** списка на
снос: `Шпион 2015` (25,9) · `Секс Education` (25,8) · `Лука 2021` (22,4) ·
`Сияние 1980` (40,4) · `Терминал 2004` (17,7) · `Хорошие парни` (16,4) и др.
Если удалить раздачу, а файл оставить — Transmission о нём забудет, файл останется.
Не потеря, но сидирование прекратится.
> «да. плюс недакачанные если в transmission есть останавливай и тоже сноси. C - целиком»
**Вопрос Alex:** удалять все раздачи категории C, или только соответствующие
111 позициям? Второе аккуратнее.
Правила удаления раздач (утверждены):
Артефакты: `/tmp/tr-list.json` (сырой ответ API), `/Users/admin/transmission-classified.json`
Скрипты: `/tmp/tr_diag.sh` (сбор, чтение), `/tmp/tr_classify.py` (классификация)
```
data_missing (ERR=3 «No data found») -> снести из списка
путь в delete_set (C) -> снести ЦЕЛИКОМ
status=0 (stopped) и percentDone < 100% -> снести (недокачанные)
```
### План удаления раздач — посчитан
| | Раздач | ГБ |
|---|---|---|
| **СНЕСТИ** | **240** | **1 769,0** |
| оставить | 9 | 20,0 |
По причинам: `data_missing` 21 · `in_delete_set` 230 · `stopped_incomplete` 161
(пересечения — одна раздача может попасть в несколько причин).
**Остаются 9 раздач** — только документалки вне списка сноса:
`Sky.Sharks.2022` · `The.Way.of.the.Cheetah` · `Thailands.Wild.Cats` ·
`Jade.Eyed.Leopard` · `The.Frozen.Kingdom.of.the.Snow.Leopard` · `Russias.Wild.Tiger` ·
`The.Real.Black.Panther` · `Тайная жизнь собак` · `King Cobra`
(все `/media/documentaries*`, 100%, сидируются).
Артефакты: `/tmp/tr-list.json` (сырой ответ API), `/Users/admin/transmission-classified.json`,
`/Users/admin/transmission-remove-plan.json`, `/tmp/tr-remove-ids.txt` (240 id через запятую).
Скрипты: `/tmp/tr_diag.sh` (сбор, чтение), `/tmp/tr_classify.py` (классификация),
`/tmp/step2_plan.py` (план удаления).
### ✅ Transmission ОСТАНОВЛЕН (2026-09-22)
```
sudo docker stop transmission → transmission Exited (0)
```
⚠️ **Следствие:** RPC (`:9091`) недоступен, пока контейнер стоит. Правки состояния —
через файлы в `/srv/.../docker/transmission/` (bind-mount → `/config` в контейнере).
`torrents/` + `resume/` + `settings.json`.
### ⚠️ Питфолл: Radarr/Sonarr API и URL base
`curl http://127.0.0.1:7878/api/v3/...` → **HTTP 307** (редирект, тело пустое).
У обоих установлен `UrlBase`: `/radarr` и `/sonarr` (порт TorrServer-транзит: контейнеры
публикуют `7878->7878` и `8989->8989`, но приложение слушает под префиксом).
**Правильно:**
```bash
curl -sL -H "X-Api-Key: $KEY" "http://127.0.0.1:7878/radarr/api/v3/movie"
curl -sL -H "X-Api-Key: $KEY" "http://127.0.0.1:8989/sonarr/api/v3/series"
```
Ключ: `sudo grep -oE '<ApiKey>[^<]+' <config dir>/config.xml | sed 's/<ApiKey>//'`
(32 символа). Без `-L` и без префикса ответ пустой — легко принять за «API лежит».
Скрипт: `/tmp/step1c.sh`
### 🔴 TorrServer/Lampa к `media/` отношения не имеют
@@ -321,12 +447,30 @@ Lampa **не участвуют**. Поэтому 24 «watchlist»-фильма
- [x] **Сверка с TrueNAS** — доксериалы/документалки копий не имеют (307 ГБ уникальны)
- [x] **Список на снос утверждён Alex'ом** — 111 позиций, 828,3 ГБ
- [x] **Диагностика Transmission** — 249 раздач, классифицированы
- [ ] Шаг 6a — дамп API Radarr/Sonarr
- [ ] Шаг 6b — стоп Transmission + чистка раздач (ждёт ответа по категории C)
- [ ] Шаг 6c — удаление файлов по 111 позициям
- [x] **Шаг 6a — дамп API Radarr/Sonarr** ✅ `/tmp/arr-backup-20260922-215428/`
- [x] **Шаг 6b — стоп Transmission** ✅ `Exited (0)`; план чистки: 240 раздач, 1769 ГБ
- [ ] Шаг 6b-2 — удалить 240 раздач из Transmission (файлы состояния, контейнер стоит)
- [ ] Шаг 6c — удаление файлов: манифест 41 путь / 693,3 ГБ готов, **ждёт ответа на 2 вопроса**
- [ ] Шаг 6d — rescan Radarr/Sonarr/Jellyfin
- [ ] Шаг 6e — проверка df/docker + приёмка Alex'ом
- [ ] Шаг 6f — обновить доки + коммит
- [ ] Уборка: `rm -rf /Users/admin/personal` (побочный артефакт, см. ниже)
## 🎯 ГДЕ МЫ СЕЙЧАС (для следующей сессии)
**Transmission остановлен. Файлы не удалены. Манифест построен и верифицирован.**
Чтобы продолжить:
1. Получить от Alex ответ на 2 вопроса выше (7 папок мультфильмов; доксериалы).
2. Собрать финальный манифест (`/tmp/step3b.sh`, добавить 7 путей при необходимости).
3. Удалить 240 раздач из Transmission (контейнер остановлен → файлы состояния).
4. `xargs rm` по манифесту с логом.
5. `docker start transmission`, rescan Radarr/Sonarr/Jellyfin.
6. `df -h` до/после → приёмка Alex'ом → коммит.
⚠️ **`rm -rf` на папки `movies`/`movies-radarr`/`series`/`series-sonarr` целиком** —
именно так устроен манифест (41 путь = 4 папки + 37 папок мультфильмов).
Внутренний отбор не пофайловый, а по целым папкам.
### ⚠️ Побочный артефакт, требует уборки