#1 Le 01/06/2024, à 09:20
- Christophe C
[résolu] problème de lancement d'une commande rsync
Bonjour, je suis sous Xubuntu 24.04.
Je n'arrive pas à lancer une commande rsync au démarrage.
Voici la commande :
sh -c "rsync -a --include={'Documents/***','.mozilla/***','Images/***','snap/***'} --exclude=* --delete /home/chris/ /media/chris/Sauvegardes/sauve/"
Voici le montage de mon disque externe :
UUID=abbd0971-7729-4469-ba03-1558429aa04d /media/chris/Sauvegardes/ ext4 defaults 0 0
j'ai vérifié, il est bien monté.
A tout hasard, j'ai retiré le sh -c "" du lancement au démarrage : pas mieux.
Lancée à la main, la commande (sans le sh -c) fonctionne parfaitement.
Donc le montage est bon, la commande est bonne, mais le mélange des 2 ne fonctionne pas.
Je me suis dit que rsync était lancée une fraction de seconde avant le montage, et que l'échec venait de là. J'ai donc fait un
sh -c "sleep 30 ; rsync -a --include={'Documents/***','.mozilla/***','Images/***','snap/***'} --exclude=* --delete /home/chris/ /media/chris/Sauvegardes/sauve/"
mais pas mieux.
Si quelqu'un voit le problème, je suis preneur
Dernière modification par Christophe C (Le 01/06/2024, à 19:48)
BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».
Hors ligne
#2 Le 01/06/2024, à 10:07
- bruno
Re : [résolu] problème de lancement d'une commande rsync
Bonjour,
Comment cette commande est-elle lancée au démarrage, par qui, par quoi ? Pourquoi utilises-tu sh- c ?
As-tu essayé avec simplement ceci :
/usr/bin/rsync -a …
#3 Le 01/06/2024, à 13:16
- Watael
Re : [résolu] problème de lancement d'une commande rsync
ça marche pas, ça marche pas...
mais ça marche pas comment ?! il y a des messages d'erreurs ?
et puis, qu'est-ce qui ne marche pas ?
le démarrage, on suppose celui de l'ordinateur... ?
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#4 Le 01/06/2024, à 18:45
- kamaris
Re : [résolu] problème de lancement d'une commande rsync
Si /bin/sh pointe toujours vers /bin/dash sur Ubuntu (il me semble que c'était le cas avant), je soupçonne que c'est à cause du développement d'accolades {…} qui est propre à bash.
Donc essaie peut-être avec bash -c au lieu de sh -c.
Hors ligne
#5 Le 01/06/2024, à 19:48
- Christophe C
Re : [résolu] problème de lancement d'une commande rsync
Concernant le lancement, je le fais via l'outil des lancements au démarrage. Soit pour Xub : paramètres > Session et démarrage > démarrage automatique d'application.
J'utilise sh -c "" parce que sinon les scripts lancés par la méthode ci-dessus ne s’exécutent pas.
Et kamaris a raison : si je mets bash -c "" au lieu de sh -c "", cela fonctionne parfaitement. Donc c'est résolu pour moi. un grand merci !!
Par contre j'avoue que je n'ai pas bien compris. Pour moi, sh appelait l'interpréteur du bash, mais manifestement ce n'est pas le cas. Tu peux expliquer la différence ? sh est plus générique ?
Dernière modification par Christophe C (Le 01/06/2024, à 19:49)
BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».
Hors ligne
#6 Le 01/06/2024, à 19:52
- Christophe C
Re : [résolu] problème de lancement d'une commande rsync
Oui, déjà je n'ai pas que bash comme shell. J'ignorais !
chris - 6.8.0-31-generic) ~ : cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/usr/bin/dash
/usr/bin/tmux
/usr/bin/sh
et je lis ici que sh appelle plus spécifiquement le bourne shell, pas le bourne again shell
https://www.baeldung.com/linux/sh-vs-bash
et certes, "most of the commands work similarly as in sh" ... mais pas toutes. D'où l’intérêt ici d'appeler plus spécifiquement bash. J'ai appris quelques chose
Dernière modification par Christophe C (Le 01/06/2024, à 20:01)
BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».
Hors ligne
#7 Le 01/06/2024, à 20:14
- kamaris
Re : [résolu] problème de lancement d'une commande rsync
Le truc c'est que sur Ubuntu tu es en fait dans ce cas-là : https://www.baeldung.com/linux/sh-vs-ba … ix-systems
C'est dash qui est exécuté, et non pas bash "en mode POSIX" (comme par exemple sur Arch, et comme exposé dans https://www.baeldung.com/linux/sh-vs-bash#bash ).
C'est (beaucoup) plus restrictif.
Hors ligne
#8 Le 02/06/2024, à 01:26
- Christophe C
Re : [résolu] problème de lancement d'une commande rsync
En résumé, bash a des fonctionnalités additionnelles a SH/dash.
Il englobe les fonctionnalités de ce dernier, mais l'inverse n'est pas vrai, particulièrement pour les fonctionnalités non-POSIX.
Dans un terminal, c'est bash qui est appelé par défaut, mais si on appelle spécifiquement SH/dash comme dans mon script initial, un script avec des fonctions bash comme les accolades ne fonctionnera pas.
Dernière modification par Christophe C (Le 02/06/2024, à 09:53)
BountySource - Faite un petit don, ponctuel ou récurent, pour soutenir le développement de XFCE.
Timeshift - Sécurité : pensez à paramétrer des points de restauration système.
Euclide : « Ce qui est affirmé sans preuve peut être nié sans preuve ».
Hors ligne