Si jamais ça intéresse quelqu'un, voici un petit truc qui me dépanne bien..
J'utilise automove pour linker mes fichiers dans un dossier complete/sickbeard qui est synchronisé de mon kimsufi à mon NAS, et qui est surveillé par sickbeard pour faire le postprocessing (renommage et déplacement).
Vu que j'ai une connexion adsl vraiment pourrie, la synchro met 3 plombes à se faire, surtout quand y a un paquet de monde dans la file d'attente. Du coup, le dossier coté NAS ne va contenir pendant un moment que le dossier du nouvel épisode, le fichier lui même n'ayant pas encore été transmis car coincé dans les méandres de btsync.
Et le souci, c'est que sickbeard, va au bout d'un moment supprimer ce dossier vide qui pour lui n'a pas lui d'être! L'enflure!
Du coup, la synchronisation btsync propage la suppression, et l'épisode disparait du dossier complete de ma seedbox.
J'ai mis un moment à trouver le coupable de ces disparitions!!! Au début je croyais que c'était automove, j'ai failli leur passer un ticket
Bref, pour remédier à ce genre de souci, j'ai créé un script qui me met d'équerre mon dossier complete/sickbeard.
Je le partage au cas où ça intéresse quelqu'un.
Ses fonctions :
- Décompression des éventuels *.rar *.part1.rar qui trainent, et suppression de toutes les archives
- Mise à plat de tout le dossier (tout ce qui est dans des sous-dossiers, on le rapatrie à la racine, quitte à écraser des readme.txt)
- Suppression des sous-dossiers vides
- Supression des fichiers qui servent à rien (txt, nfo)
==> Au final on obtient un dossier propre avec que des mkv à la base
==> Comme ça Sickbeard me supprime plus mes épisodes
Voilà le script que j'ai mis ici :
/usr/share/scripts-perso/flattendir.sh
#!/bin/bash
# Script de post-traitement automove
# Dossier sur lequel appliquer le traitement
DIR="/home/djoole/complete/sickbeard"
cd $DIR
# Décompression puis suppression des archives
for line in $(find $DIR -type f -name "*.part1.rar"); do
unrar e -y $line
done
for line in $(find $DIR -type f -regex ".*\.part.\.rar"); do
rm -f $line
done
for line in $(find $DIR -type f -name "*.rar"); do
unrar e -y $line
rm -f $line
done
for line in $(find $DIR -type f -regex ".*\.r[0-9][0-9]"); do
rm -f $line
done
# Déplacement de tous les fichiers imbriqués au niveau racine de DIR
mv -f $DIR/*/* $DIR > /dev/null 2>&1
# Suppression des dossiers vides
find $DIR -type d -empty -exec rmdir {} \; > /dev/null 2>&1
# Bis repetita car parfois tout ne passe pas du 1er coup
mv -f $DIR/*/* $DIR > /dev/null 2>&1
find $DIR -type d -empty -exec rmdir {} \; > /dev/null 2>&1
# Suppression des fichiers inutiles
find $DIR -type f -regextype posix-awk -regex "(.*\.txt|.*\.nfo|.*\.sfv)" -exec rm -f {} \;
Ensuite, reste plus qu'à appeler ce script juste après le move d'automove, donc il faut bidouiller le fichier /var/www/rutorrent/plugins/autotools/move.php et rajouter ces lignes juste après la ligne 107 (
$mailto_file = "";)
$torrent_name = $torrent->name();
$flattenops = shell_exec('/usr/share/scripts-perso/flattendir.sh');
Voilou