JoeDalton
Bonjour,
Pour sauvegarder un DNS215 Synology sur des disques de mon serveur (Fedora 29 à jour), je dois lancer la commande : rsync --daemon.
Si je l'exécute à la main (user root), tout va bien. Sauf que je voudrais bien lancer cette commande de manière automatique.
J'ai créé un script dans /etc/rc.d/init.d qui fait le job quand je le lance à la main, mais qui ne se lance pas au démarrage de la machine.
Le procédé étant déprécié, j'ai créé un fichier dans /etc/systemd/system, l'ai "enablé" et en écrivant dans un log, je constate que la commande s'exécute au démarrage.
Sauf que rsync semble se lancer puis s'arrête très rapidement, et je ne vois pas pourquoi.
J'ai fouiné sur le net ...
- je n'ai pas trouvé de procédé de lancement automatique de rsync, juste une vieille référence à un "ENABLE-RSYNC=true" à mettre dans un fichier (inexistant dans mon cas) /etc/defaults/rsync. Ça ne marche pas, ça me semble aussi déprécié.
- je me suis plongé dans la lecture sur le net de la config de gnome, mais c'est une horreur.
- J'ai trouvé la commande "Ajustements" dans la liste des applications de ma distribution Fedora, mais concernant les applications à lancer au démarrage, il ne me propose que des applications installées( Amarok, Brasero...). Rien d'évident pour rajouter un bête script de 2/3 lignes.
- en lisant la doc gnome, je ne trouve nulle part comment rajouter un pauvre script dans la liste des applications installables ... Au global, je n'ai pas trouvé beaucoup de littérature sur gnome.
Je me dis que tout cela est peut-être bien compliqué pour juste un lancement de démon... Il doit bien y avoir un procédé simple, non ?
Donc voici ma question : comment lancer la commande "rsync --daemon" au démarrage de ma machine, de la manière la plus simple possible ?
Merci de votre aide !
CDLT
Nicosss
Tu as créé un service systemd ? Est-ce qu'il est bien placé après le montage de tes disques pour la sauvegarde.
Sinon tu peux faire une tâche cron aussi.
JoeDalton
Bonjour Nicoss,
Je n'ai aucun souci de sauvegarde, à partir du moment où rsync est lancé en tant que daemon (ce que je fais à la main pour le moment, à chaque reboot).
Ma question porte uniquement sur le lancement automatique du daemon au démarrage de la machine.
CDLT
JoeDalton
(re)bonjour,
J'ai trouvé mon erreur, il fallait une ligne
RemainAfterExit=yes
dans la section [Service] de mon fichier dans /etc/systemd/system
Cependant, ma question reste ouverte : de par votre expérience, y a-t-il un moyen (plus) simple pour exécuter des scripts au démarrage ?
CDLT
Nicosss
T'es sûr d'avoir lu ma réponse ?
JoeDalton
(re)bonjour Nicoss,
Oui, j'ai lu et et pense avoir compris ta réponse. Mes remarques sur celle-ci :
Tu as créé un service systemd ? Est-ce qu'il est bien placé après le montage de tes disques pour la sauvegarde.
==> oui, j'ai créé un service systemd et vu qu'il lance un rsync en tache de fond qui attend une demande de backup en provenance du synology, je ne suis pas inquiet, vu que je sauvegarde la nuit.
Quoi qu'il en soit, et tu as raison sur le principe, mieux vaudrait vérifier par une dépendance que le daemon est lancé après le montage des disques du serveur et pas avant ni en meme temps. Là, un coup de main serait le bienvenu, je ne suis pas sr d'avoir parfaitement assimilé la doc de systemd concernant les dépendances (Requires, Wants...)
Sinon tu peux faire une tâche cron aussi.
==> J'y avais pensé, mais je n'ai besoin que du lancement une seule fois, au démarrage de la machine. Bien que je teste dans mon script l'existence d'une tache "rsync --daemon" existante, je pense disproportionné de faire un cron pour cela.
==> et puis, s'il le faut, je rajouterai une clause "Restart" dans le fichier système pour améliorer la robustesse
Mon souci était lié à ce que j'ai précisé ci-dessus, et à la question annexe du lancement de scripts au démarrage : y a-t-il plus simple que les services systemd ? ou est-ce définitivement la méthode à suivre ?
Si maintenant je n'ai pas bien compris ta réponse, précise.
Merci à toi en attendant.
CDLT
nouvo09
JoeDalton wrote:
Cependant, ma question reste ouverte : de par votre expérience, y a-t-il un moyen (plus) simple pour exécuter des scripts au démarrage ?
CDLT
tu as regardé du côté de rc.local qui semble être prévu pour ça ?
Nicosss
En fait c'est le synology qui fait la demande de sauvegarde. En lisant au début, on aurait pu penser que c'était le démarrage du serveur qui conditionnait la sauvegarde.
Dans /etc/rc.d/init.d/ tu as un fichier README normalement qui t'indique que c'est déprécié.
Du coup un service systemd est approprié pour rester dans la logique du système. Sinon effectivement et par rapport à l'ancien fonctionnement tu peux utiliser /etc/rc.d/rc.local qui est lui-même géré par systemd à travers le service rc-local.service.
Pour moi, il y a meilleur intérêt à utiliser ton propre servcie systemd, au moins tu restes dans la logique du système et tu peux surveiller tes services facilement.
Concernant Gnome et le fait de ne pouvoir ajouter que des applications installées, tu peux créer un fichier .desktop dans ~/.config/autostart/
JoeDalton
Bonjour,
Merci à vous deux, Nicoss et Nouvo09, pour le coup de main,
Je vais tester vos recommandations.
CDLT