J'aimerais pouvoir déplacer des fichiers téléchargés par transmission au nom de mon utilisateur principal.
J'ai ajouté cet utilisateur au groupe debian-transmission, mais cela ne suffit pas, seul le propriétaire a l'autorisation d'écriture sur les fichiers téléchargés.
Alors je vois quelques possibilités:
Alors, quel est votre conseil pour aboutir à une bonne solution?
La solution proposée par @sverker est bonne, mais je vous suggère de modifier la configuration de la transmission afin qu'elle modifie le umask avec lequel sont écrits les fichiers téléchargés. La configuration est stockée dans
~/.config/transmission/settings.json
Recherchez et modifiez la valeur "umask". Notez que le format json utilise la notation décimale, jetez donc un coup d'œil au tableau et recherchez une valeur pour le nouvel umask (ex: 22).
Umask Created Files Created Directories
-------------------------------------------------------------
000 666 (rw-rw-rw-) 777 (rwxrwxrwx)
002 664 (rw-rw-r--) 775 (rwxrwxr-x)
022 644 (rw-r--r--) 755 (rwxr-xr-x)
027 640 (rw-r-----) 750 (rwxr-x---)
077 600 (rw-------) 700 (rwx------)
277 400 (r--------) 500 (r-x------)
puis dans un terminal:
#echo $((8#022))
18
Enfin changez la valeur umask à 18
Transmission, au moins en tant que démon, a la possibilité d'exécuter un script à la fin d'un torrent. Vous devriez être capable de dire à ce script de chmod à 664 à la fin. À partir de là, les fichiers doivent être accessibles et accessibles en écriture à partir de votre utilisateur principal. Vous pouvez créer un script contenant ces lignes:
#!/usr/bin/env bash
chmod -R 664 ${TR_TORRENT_DIR}
exit 0
Vous pouvez ensuite rendre ce script exécutable et le placer à un endroit où le démon de transmission peut y accéder, comme/usr/local/bin ou quelque chose d'autre.
Ensuite, vous indiquez à transmission-daemon de lancer le script à la fin du torrent. Vous pouvez le faire par interface graphique ou avoir cette ligne dans votre fichier /etc/transmission-daemon/settings.json
:
"script-torrent-done-filename": "/usr/local/bin/your-script.sh",
Et ça devrait être ça. Le concept du script-torrent-done est assez puissant, je l'utilise pour trier les torrents en films/musique/etc. en fonction de son contenu, mais c'est un script un peu plus long :)
Vous devriez lire sur ACL , cela vous permet d'ajouter des autorisations supplémentaires, comme l'ajout d'autorisations pour votre utilisateur principal.
par exemple Sudo setfacl -d -R u:gael:rw /home/transmission
permet à votre utilisateur de lire et d’écrire dans ce répertoire. -d est par défaut , ce qui signifie que les fichiers créés dans ce répertoire auront ces nouvelles autorisations. Habituellement, vous utilisez -m au lieu de -d. Exécuter avec -m pour appliquer aux fichiers existants.
Vous pouvez créer un script pour exécuter la commande setfacl afin de vous assurer que tous les fichiers sont corrects, comme l'a suggéré Sverker;