Avec Transmission il est possible de gérer 2 modes de vitesse (normal et alternatif : alt) en téléchargement et en upload et de planifier selon les heures et jour la bascule entre ces 2 modes (voir le paragraphe Vitesse de mon article Installer et configurer Transmission en tant que démon) La bascule entre ces 2 modes est aussi paramétrable selon les jours et les heures.
Bien que très pratique ce mécanisme n’est pas optimal en effet Transmission passe d’un mode à un autre pour une plage horaire et certains jours données or mon besoin est que Transmission passe du mode normal (sans limitation) au mode alternatif (vitesses limités, mode turtle/tortue) uniquement si un des mes PC est allumé, préservant ainsi ma bande passante pour pouvoir avoir un usage normal d’Internet.
Et dès que tous les PCs sont éteint on re-bascule en mode normal.
Voici le script que j’ai fait :
#!/bin/bash cd $(dirname "${0}") while read HOST_IP; do ping -c 5 -w 15 $HOST_IP > /dev/null RESULT=$? if [ $RESULT -eq 0 ]; then break fi done < alt_speed_IP if [ $RESULT -eq 0 ]; then echo "At least 1 computer on, set alt speed" transmission-remote -as else echo "no computer on, max speed" transmission-remote -AS fi
Ce script attend un fichier alt_speed_IP contenant un liste d’adresse IP à surveiller (1 par ligne)
Pour chacun des adresses IP il essai de les pinguer, si au moins une adresse répond c’est qu’au moins un ordinateur de « bureau » est allumé et qu’il faut mettre Transmission en mode tortue pour préserver la bande passante.
Si au terme du ping de toutes les adresse du fichier alt_speed_IP aucun ordinateur n’a répondu Transmission peut repasser en mode normal.
Le changement de mode se fait avec la commande tranmission-remote du paquet transmission-cli…
Source :
Image par Stephen D’Agostino – its time to organize a show sous CC BY-NC-ND