Samstag, 15. November 2014

Mit Detox verhunzte Dateinamen (entpackte Pyload-Downloads) auf dem NAS reparieren

Ich schätze mal, ich bin nicht der einzige, der sein QNAP-, Synology- oder sonstiges NAS auch oder vor allem als Download-Station benutzt und hierzu wiederum Pyload im Einsatz hat.

Ich vermute, es liegt an der UnRAR-Funktion von Pyload, dass nach dem Herunterladen im Download-Ordner auf dem NAS manchmal Dateien sind, die sich per Samba nicht öffnen oder woanders hin kopieren lassen. Da, wo deutsche Umlaute rauskommen sollten, entstehen seltsame Sonderzeichen und die Dateien sind dann weder per Samba noch per FTP noch per SSH-Datei-Transfer zugreifbar.

Händisch per cd jedesmal in das entsprechende Verzeichnis zu wechseln und die Problem-Datei(en) per mv umzubenennen ist sehr umständlich. Eine gute Abhilfe schafft hier das Linux-Kommandozeilen-Programm detox:  http://detox.sourceforge.net

Zunächst installiert man auf dem NAS diverse Entwickler-Tools, die man dann zum Kompilieren / Installieren der Anwendung braucht:
ipkg install gcc
ipkg install make
ipkg install grep
ipkg install flex


Dann wird das Paket heruntergeladen, entpackt und kompiliert / installiert:
cd /tmp
wget http://skylink.dl.sourceforge.net/project/detox/detox/1.2.0/detox-1.2.0.tar.bz2
bunzip2 detox-1.2.0.tar.bz2
tar -xvf detox-1.2.0.tar
cd detox-1.2.0
./configure
make
make install


Anwendungsbeispiel:
/usr/local/bin/detox -r -v /share/HDA_DATA/Download
Das bedeutet: im (Pyload-)Download-Ordner und allen Unterordnern (Schalter -r = rekursiv) problematische Zeichen aus Dateinamen entfernen und dabei auch am Bildschirm ausgeben, welche Dateinamen geändert werden (-v = verbose Modus).

Automatisieren lässt sich das ganze per Cronjob oder aber man macht sich auf seinem Windows-PC zum bequemen Aufruf einen Batch, der etwa so aussieht und ein installiertes Putty inkl. plink voraussetzt:
"c:\program files (x86)\putty\plink.exe" NAME_ODER_IP_DES_NAS -P 22 -ssh -l DER_NAS_BENUTZER -pw DAS_NAS_PASSWORT -v /usr/local/bin/detox -r -v /share/HDA_DATA/Download

(Das fett gedruckte ist eine Zeile, wird evtl. von Blog-Software / Browser umgebrochen.)

Achtung: es muss natürlich jeder selbst wissen, ob man auf ein Verzeichnis mit möglicherweisen tausenden von Dateien dieses Programm loslässt!!!
Also im Zweifelsfall erstmal mit kleineren Ordnern probieren und auch die READMEs auf der Projektseite lesen.

Was mich selber etwas nervt bzw. wo Detox mehr macht, als ich gern hätte, ist der Umgang mit Leerzeichen. Diese sind für Samba und andere Netzwerkzugriffe gar kein Problem, werden von Detox aber trotzdem als problematisch betrachtet und durch Unterstriche ersetzt. Wenn also jemand rausfindet, wie man ihm das abgewöhnt, bitte gerne in die Kommentare reinschreiben.




Keine Kommentare: