#1 Le 26/06/2025, à 08:33
- Isaric
Problème de sens de lancement Rclone
Dans /home/isaric/.config/systemd/user/Rclone.service
J'ai
ExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone1.sh & \/home/isaric/IEBash/scriptRclone2.sh'
scriptRclone1.sh
#!/bin/bash
# Variables
SOURCE1="I1:"
DESTINATION="$HOME/I1/"
echo 'scriptRclone-'"$SOURCE1"" s'est lancé !" >> $HOME/scriptRclone.log
notify-send "$SOURCE1"" Rclone mount synchronisation ✅"
# rclone mount "$SOURCE1" "$DESTINATION" --vfs-cache-mode writes --allow-non-empty --log-file=scriptRclone.log --log-level=NOTICE
notify-send "$SOURCE1"" Rclone mount échec de la synchronisation ❌"
scriptRclone2.sh
#!/bin/bash
# Variables
SOURCE2="IsaricTBaha:"
DESTINATION="$HOME/I2/"
echo 'scriptRclone-'"$SOURCE2"" s'est lancé !" >> $HOME/scriptRclone.log
notify-send "$SOURCE2"" Rclone mount synchronisation ✅"
rclone mount "$SOURCE2" "$DESTINATION" --vfs-cache-mode writes --allow-non-empty --log-file=scriptRclone.log --log-level=NOTICE
notify-send "$SOURCE2"" Rclone mount échec de la synchronisation ❌"
Si j'enlève "#" dans scriptRclone1.sh les 2 destinations I1 et I2 montent
Si je laisse "#" dans scriptRclone1.sh la destination I2 monte
Si j’inverse et que je mets "#" pour la ligne rclone mount " dans scriptRclone2 .sh et pas dans dans scriptRclone1.sh, rien ne monte
Dans ce cas en inversant dans /home/isaric/.config/systemd/user/Rclone.service
ExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone2.sh & \/home/isaric/IEBash/scriptRclone1.sh'
# changement de 1 et 2 ExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone1.sh & \/home/isaric/IEBash/scriptRclone2.sh'
cela marche (la destination I1 monte)
Dernière modification par Isaric (Le 26/06/2025, à 08:35)
"Être bahá'í signifie simplement aimer la terre toute entière, aimer l'humanité et essayer de la servir, travailler pour la paix universelle et la famille humaine" 'Abdul'l-Bahá
"Vouloir s'ouvrir aux autres n'est pas une preuve de faiblesse, c'est une preuve d'intelligence" Matthieu Ricard.
Hors ligne
#2 Le 26/06/2025, à 09:32
- iznobe
Re : Problème de sens de lancement Rclone
Salut ,
Dans /home/isaric/.config/systemd/user/Rclone.service
J'aiExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone1.sh & \/home/isaric/IEBash/scriptRclone2.sh'
ta ligne n ' est pas bonne .
si l ' objectif est de lancé les 2 scripts , ca devrait plutôt être au minimum :
ExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone1.sh && \/home/isaric/IEBash/scriptRclone2.sh'
un autre truc me chiffonne , ce sont les " \ " , si c' est pour echapper " / " , alors , ca devrait plutot etre :
ExecStart=/bin/bash -c '\/home\/isaric\/IEBash\/scriptRclone1.sh && \/home\/isaric\/IEBash\/scriptRclone2.sh'
mais en fait , je ne sais pas trop à quoi sert vraiment ton " \ " ...
as tu essayé simplement :
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRclone1.sh && /home/isaric/IEBash/scriptRclone2.sh'
?
+++++++++++++++++++++++++++++++++++
Au passage , petite explication de code bash , ( ce qui explique en partie ce que tu observes sur les resultats de lancement ) :
un " && " , c' est pour " chainer " les commandes . exemple :
bash commande1 && commande2
cela fonctionne à condition que le retour d ' erreur de commande1 soit a 0 . c' est à dire pas d' erreur . si commande1 renvoie un code erreur , alors commande2 n ' est pas exécuté .
pour que commande 2 soit exécutée même si commande1 renvoie une erreur , alors il faut écrire comme cela :
commande1; commande2
Pour un simple " & " , cela n' as pas du tout la même signification .
c' est pour laisser une commande active en permanence , qu ' on a besoin de laisser tourner continuellement .
+++++++++++++++++++++++++++++++++++++++
Si je laisse "#" dans scriptRclone1.sh la destination I2 monte smile
je ne vois absolument pas comment c' est possible . tu as dû mal t' exprimé ...
il n' est nulle part question de i2 dans scriptRclone1.sh ...
tu dois probablement vouloir dire en lançant le service " Rclone " . là je comprends mieux .
Dernière modification par iznobe (Le 26/06/2025, à 09:52)
retour COMPLET et utilisable de commande | script montage partitions
MSI Z490A-pro , i7 10700 , 32 GB RAM .
En ligne
#3 Le 26/06/2025, à 11:49
- Isaric
Re : Problème de sens de lancement Rclone
Je me suis inspiré de
https://forum.ubuntu-fr.org/viewtopic.p … #p22844323
Pour (essais 1100) cela monte bien I1 et I2
ExecStart=/bin/bash -c '\/home/isaric/IEBash/scriptRclone1.sh & \/home/isaric/IEBash/scriptRclone2.sh'
cela monte bien I1 et I2
ExecStart=/home/isaric/IEBash/scriptRclone1.sh
monte bien I1
ExecStart=/home/isaric/IEBash/scriptRclone2.sh
monte bien I2
_____________
(essais 1112) cela ne monte I1 seulement et I2 ne se lance pas on ne voit rien dans scriptRclone.log
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRclone1.sh ; /home/isaric/IEBash/scriptRclone2.sh'
(essais 1108) cela ne monte I1 seulement et I2 ne se lance pas
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRclone1.sh && /home/isaric/IEBash/scriptRclone2.sh'
[édit] (essais 1112) ce n'est pas le nombre d'essais
Je comprends que le chaînage conditionnel avec && (n’exécute la deuxième que si la première réussit) ce qui explique le résultat obtenu.
Dernière modification par Isaric (Le 26/06/2025, à 16:34)
"Être bahá'í signifie simplement aimer la terre toute entière, aimer l'humanité et essayer de la servir, travailler pour la paix universelle et la famille humaine" 'Abdul'l-Bahá
"Vouloir s'ouvrir aux autres n'est pas une preuve de faiblesse, c'est une preuve d'intelligence" Matthieu Ricard.
Hors ligne
#4 Le 26/06/2025, à 17:11
- iznobe
Re : Problème de sens de lancement Rclone
Je me suis inspiré de
https://forum.ubuntu-fr.org/viewtopic.p … #p22844323
oui , inspiration au sens large alors ...
le " \ " sert à indiquer que la commande se poursuit sur la prochaine ligne ... d' ailleurs il en manque un en plus , ca aurait du être :
ExecStart=/bin/bash -c '\
/home/isaric/IEBash/scriptRcloneGdrive1.sh & \
/home/isaric/IEBash/scriptRcloneGdrive2.sh & \
'
ou encore :
ExecStart=/bin/bash -c '\
/home/isaric/IEBash/scriptRcloneGdrive1.sh & \
/home/isaric/IEBash/scriptRcloneGdrive2.sh &'
bref , si tu veux ecrire sur une seule ligne ce qui est indiqué dans l' autre poste , alors la ligne devrait etre la suivante :
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRcloneGdrive1.sh & ; /home/isaric/IEBash/scriptRcloneGdrive2.sh &'
ou plutot ( car le " ; " a l' air de contrarier le exec ) :
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRcloneGdrive1.sh & /home/isaric/IEBash/scriptRcloneGdrive2.sh &'
Donc au final , il me semble que ca devrait etre :
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRcloneGdrive1.sh /home/isaric/IEBash/scriptRcloneGdrive2.sh'
Je ne suis pas certain que l' esperluette en fin de ligne soit nécessaire vu que je ne vois pas tellement l ' intérêt de faire tourner les scripts en permanence .
une fois monté et les notifications lancés , il n ' y a pas besoin de laisser tourner . ( sauf si des notifications sont envoyées ultérieurement lors de changement de statut peut etre ? ) Mais j' ai pas l' impression que c ' est le cas du script actuel .
Pourquoi ne pas avoir utiliser la " ligne " telle qu ' elle était presentée dans l' autre discussion ? ( ca ne fonctionnait pas ? )
Dernière modification par iznobe (Le 26/06/2025, à 17:19)
retour COMPLET et utilisable de commande | script montage partitions
MSI Z490A-pro , i7 10700 , 32 GB RAM .
En ligne
#5 Le 27/06/2025, à 08:34
- Isaric
Re : Problème de sens de lancement Rclone
Merci iznobe
Rien monte
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRcloneGdrive1.sh & /home/isaric/IEBash/scriptRcloneGdrive2.sh &'
Rien monte
ExecStart=/bin/bash -c '\
/home/isaric/IEBash/scriptRcloneGdrive1.sh & \
/home/isaric/IEBash/scriptRcloneGdrive2.sh & \
'
I1 monte +I2 ne montent pas
ExecStart=/bin/bash -c '/home/isaric/IEBash/scriptRcloneGdrive1.sh /home/isaric/IEBash/scriptRcloneGdrive2.sh'
"Être bahá'í signifie simplement aimer la terre toute entière, aimer l'humanité et essayer de la servir, travailler pour la paix universelle et la famille humaine" 'Abdul'l-Bahá
"Vouloir s'ouvrir aux autres n'est pas une preuve de faiblesse, c'est une preuve d'intelligence" Matthieu Ricard.
Hors ligne