Die Synology-eigenen Mediendienste (Audio Station, Video Station, usw.) zeigen nur Medien an, die zuvor von der Indizierung gefunden wurden. Normalerweise ist das auch kein Problem, da das Suchen und Indizieren von ganz allein passiert, wenn man Dateien auf den NAS kopiert. Allerdings springt die Indizierung nicht an, wenn Daten „intern“ erzeugt und verarbeitet werden – so zum Beispiel, wenn man per NZBget etwas downloaded und automatisch in die entsprechenden Ordner einsortieren lässt, oder wenn man Musikdateien direkt auf dem NAS umwandeln lässt, wie in dem Beitrag wma2mp3 erläutert. Und da nicht automatisch indiziert wird, werden neue Dateien solange nicht angezeigt, bis man die Indizierung in irgend einer Form antriggert. Das geht auch per Kommandozeile/Script.
Voraussetzung ist: die zu indizierenden Ordner wurden zuvor festgelegt. Dies geschieht am einfachsten im DSM, je nach Version, unter
- „Systemsteuerung“ -> „Medienbibliothek“ -> „Indizierter Ordner“ oder
- „Systemsteuerung“ -> „Medienindizierung“ -> „Indizierter Ordner“
und könnte vielleicht so aussehen:
Der Befehl für die Indizierung lautet synoindex
und bietet einige Funktionen. Die wichtigste ist wohl -R
(reindex). Die komplette Syntax lautet:
$ synoindex -R [all|media|photo|music|video|thumb|dirpath]
Einer der Werte in eckigen Klammern muss angegeben werden. Diese bedeuten folgendes:
Wert | Beschreibung |
---|---|
all |
alles neu indizieren |
media |
Alle Medien der Typen „Foto“, „Musik“ und „Video“ neu indizieren |
photo |
Alle Medien vom Typ „Foto“ neu indizieren |
music |
Alle Medien vom Typ „Musik“ neu indizieren |
video |
Alle Medien vom Typ „Video“ neu indizieren |
thumb |
Video-Vorschauen neu generieren |
dirpath |
Bestimmten Dateipfad neu indizieren (z.B. einen der oben genannten, Benutzer-Home-Verzeichnisse, usw.) |
Um jetzt beispielsweise alle Videos neu zu indizieren müsste folgender Befehl abgesetzt werden:
$ synoindex -R video
Konkret würde das alle Verzeichnisse betreffen, die in der Systemsteuerung das Häkchen bei „Video“ gesetzt haben (siehe Screenshot oben).
Um das Ganze automatisch ablaufen zu lassen, muss man diese Befehlszeile nur noch in ein Script packen und zum Beispiel als Post-Processing-Script bei NZBget hinterlegen.
Ein stark vereinfachtes Python-Script könnte so aussehen …
#!/usr/bin/env python #coding: utf8 import subprocess subprocess.call(["synoindex", "-R", "video"])
… und die Shell-Variante vielleicht so:
#!/bin/sh synoindex -R video
Mit $ synoindex -a [file]
lassen sich auch gezielt einzelne Dateien indizieren. Für weitere Optionen einfach auf der Kommandozeile den Befehl $ synoindex
(ohne weitere Parameter) absetzen, dann werden alle verfügbaren Optionen angezeigt.
Interessante, und deutlich komplexere Varianten, sind hier zu finden:
- Synology – automatic indexing via synoindex (Perl)
- More on the Synology NAS – automatically indexing new files (Python)
- Proxmox: „Failed to connect to Server“ mit Safari auf MacOS - 28. Januar 2023
- Loxone: Benachrichtigung per Telegram - 15. Januar 2022
- Telegram: Nachrichten per Bot von der Heimautomation aufs Handy - 2. Januar 2022
8 Comments