Salut
Ma réponse va te surprendre.
Je n’y connais rien en serveur web et serveur de mail perso et je me suis dirigé vers l’IA et oui sur openAI exactement.
Et surprise j’ai un serveur qui tourne comme un pro et je reçois les fichiers que je veux par mail mais aussi sur un autre disque.
Donc résultat des courses, l’IA est peut être celui qui va même te faire les fichiers dont tu as besoin.
Alors c’est très long car il ne retiens pas vraiment ce que tu lui demande mais pas contre au final cela fonctionne.
Bon courage mais je suis persuader que tu trouveras ton bonheur
Bonne journée
PS: Je vie en camping car jamais branché à l’électricité et mon serveur web tourne h24
Donc tout est possible…
edité à 13:12
voici ce que l’AI me donne une solution : Bonjour !
Ce que vous cherchez à mettre en place ressemble à une synchronisation unidirectionnelle, où les fichiers sont envoyés du serveur 1 vers le serveur 2, mais la suppression des fichiers sur le serveur 1 ne doit pas affecter ceux sur le serveur 2.
Solutions possibles :
1. Rsync (avec des scripts personnalisés)
Une solution classique pourrait être l’utilisation de Rsync pour gérer la synchronisation des fichiers. Vous pourriez configurer un script cron qui effectue la synchronisation à intervalles réguliers, en veillant à ce que la suppression des fichiers sur le serveur 1 ne soit pas répercutée sur le serveur 2.
- Problème actuel avec rsync : Par défaut, rsync est bidirectionnel et il peut supprimer des fichiers à destination si les fichiers ont été supprimés source. Cependant, en configurant correctement les options, cela peut être évité.
Voici une commande basique qui pourrait répondre à vos besoins :
bash
CopierModifier
rsync -av --ignore-existing /chemin/serveur1/ /chemin/serveur2/
--ignore-existing
permet d’éviter que les fichiers existants sur le serveur 2 ne soient écrasés ou supprimés.
Ensuite, pour gérer les fichiers supprimés sur le serveur 1 après 60 jours, vous pouvez créer un script pour supprimer les fichiers plus anciens sur le serveur 1, mais ne pas affecter ceux sur le serveur 2.
2. Rclone (avec une configuration unidirectionnelle)
Rclone est un autre outil qui peut gérer des synchronisations unidirectionnelles. Il est souvent utilisé pour gérer des transferts de fichiers vers des solutions cloud, mais il peut aussi être utilisé pour une configuration serveur-serveur.
Pour une synchronisation unidirectionnelle, vous pouvez utiliser la commande rclone sync
qui va pousser les fichiers du serveur 1 vers le serveur 2 tout en respectant un flux unidirectionnel.
Voici un exemple de commande pour cela :
bash
CopierModifier
rclone sync /chemin/serveur1/ remote:/chemin/serveur2/
Cela va :
- Synchroniser tous les fichiers du serveur 1 vers le serveur 2.
- Ne pas supprimer les fichiers existants sur le serveur 2.
En ajoutant l’option --delete-during
, vous pouvez spécifier que seules les nouvelles données seront envoyées, et cela n’affectera pas les fichiers existants du serveur 2.
3. Unison (en mode unidirectionnel)
Unison est un autre outil qui peut synchroniser des répertoires entre deux serveurs. En utilisant un mode spécifique (par exemple, -batch
), vous pouvez spécifier que le serveur 2 ne doit pas être modifié par des suppressions sur le serveur 1.
Vous pouvez configurer un profil de synchronisation unidirectionnelle avec Unison. Il existe une option pour éviter les suppressions, ce qui permettrait de ne pas toucher aux fichiers sur le serveur 2 lorsqu’ils sont supprimés du serveur 1.
Voici un exemple de commande :
bash
CopierModifier
unison /chemin/serveur1 /chemin/serveur2 -prefer /chemin/serveur1
Cela fait en sorte que serveur 1 est préféré, et les suppressions sur serveur 1 n’affecteront pas serveur 2.
4. Syncthing avec une configuration avancée (réfléchir à l’option de partage unidirectionnel)
Syncthing peut théoriquement répondre à vos besoins, mais il est par défaut bidirectionnel. Toutefois, il existe une option dans la configuration des dossiers qui vous permet de spécifier un « mode de lecture seule » sur le serveur 2. Cela signifie que les fichiers seront poussés vers le serveur 2 mais les suppressions ne seront pas répercutées.
- Dans l’interface de Syncthing, vous pouvez définir un dossier sur le serveur 2 comme « Lecture seule ». Cela permettra au serveur 1 de transférer des fichiers, mais les suppressions sur le serveur 1 ne se répercuteront pas.
Pour ce faire :
- Allez dans les paramètres de Syncthing sur le serveur 2.
- Activez l’option « Read Only » sur le dossier que vous partagez avec le serveur 1.
- Cela garantit que les fichiers seront reçus et stockés, mais aucune suppression ne se fera sur le serveur 2.
5. Resilio Sync (en configuration unidirectionnelle)
Bien que Resilio Sync soit principalement conçu pour la synchronisation bidirectionnelle, il offre des fonctionnalités avancées dans sa version Pro, comme des permissions spécifiques pour les dossiers. Vous pouvez configurer un dossier comme étant en « mode de lecture seule » sur le serveur 2.
Si vous n’utilisez pas la version Pro de Resilio Sync, vous pourriez être limité. Sinon, vous pouvez configurer la synchronisation unidirectionnelle en activant « lecture seule » sur le serveur 2.
Conclusion
Parmi les solutions proposées :
- Rsync et Rclone semblent les plus simples et les plus flexibles pour répondre à votre besoin de synchronisation unidirectionnelle.
- Syncthing et Resilio Sync peuvent aussi fonctionner si vous configurez correctement les permissions pour que le serveur 2 soit en mode « lecture seule ».
Si vous avez une préférence pour une de ces solutions, je peux vous aider à affiner la configuration !