J'ai fait un petit script qui vérifie si
rtorrent est lancé, et si ce n'est pas le cas le relance.
Je pars du principe que vous avez suivi le tuto ou exécuté le script d'installation fourni sur le forum.
Mais si ce n'est pas le cas il suffit de modifier le code en conséquence.
Loguez vous en root (commande
su sous debian et
sudo sous ubuntu)
Ouvrez un nouveau fichier avec nano avec la commande suivante :
nano /root/rtorrent-ckeck
Donc ici, je vais créer un fichier nommé
rtorrent-check dans
/root, ce n'est effectivement pas le meilleur choix mais je fais au plus simple et au moins seul le root pourra le lire/modifier/supprimer.
A vous d'adapter si vous préférez le mettre ailleurs ou même changer de nom de fichier.
Copiez/collez le code suivant :
#!/bin/bash
users=(user1 user2 user3) # à modifier avec les utilisateurs souhaités
for user in ${users[@]}; do
file=/home/$user/.session/rtorrent.lock # a adapter au besoin
pid=$(ps -u $user -o pid,command | grep '[0-9] rtorrent$' | cut -d "r" -f1) # extraction du pid de rtorrent de l'utilisateur
if [ ! $pid ];then # si rtorrent est actif pid ne sera pas vide
rm -f $file # on supprime rtorrent.lock car ca peut empêcher rtorrent de démarrer
bash /etc/init.d/$user-rtorrent restart
echo "$(date) : le rtorrent de $user a ete redemarre" >> /var/log/rtorrent-check.log
fi
done
Éditez le code selon vos besoins, à la place de
user1 user2 user3, écrivez les noms d'utilisateurs concernés, notez la séparation par un espace entre les différents utilisateurs, bien entendu le nombre d'utilisateurs n'est pas un problème que ca soit plus ou moins que 3.
Enregistrez le fichier et quittez le (Ctrl + O , puis Ctrl + X)
Rendez le exécutable, donc ici
chmod +x /root/rtorrent-check
Maintenant il s'agit d’exécuter ce script de façon automatique toutes les X minutes, pour cela nous allons utiliser crontab.
crontab -e
Rajoutez la ligne suivante à la fin du fichier (il se peut que le fichier soit vide si vous n'avez jamais utilisé crontab)
*/5 * * * * /root/rtorrent-check
Ici, le script va se lancer toutes les 5 minutes.
Voilà c'est terminé, vous pourrez consulter le fichier
/var/log/rtorrent-check.log pour y trouver quand et quel rtorrent a été relancé.