


Comment synchroniser les répertoires locaux et distants à l'aide de RSYNC dans Linux
RSYNC: un outil puissant pour synchroniser les répertoires locaux et distants
RSYNC est un utilitaire robuste et polyvalent pour synchroniser les répertoires, transférant efficacement les portions de fichiers modifiées. Cela le rend idéal pour gérer de grands répertoires avec des fichiers fréquemment mis à jour, que ce soit entre deux machines ou sur un seul système. Sa flexibilité est améliorée par des fonctionnalités telles que l'intégration SSH, la compression des données, la préservation des attributs de fichiers (autorisations et horodatage) et la possibilité de supprimer les fichiers de la destination absente de la source.
Structure de commande RSYNC:
rsync [Options] [Source] [Destination]
Options clés RSYNC:
-
-a
(--archive
): préserve les métadonnées de fichier cruciales (liens symboliques, autorisations, horodatage). -
-v
(--verbose
): fournit une sortie détaillée. -
-r
(--recursive
): traite les répertoires récursivement. -
--delete
: supprime les fichiers de la destination qui ne sont pas dans la source. Essentiel à la véritable synchronisation. -
-z
(--compress
): comprime les données pendant le transfert, enregistrer la bande passante. -
-h
(--human-readable
): affiche des tailles de fichiers et d'autres données numériques dans un format convivial. -
-P
: combine--partial
(reprise les transferts interrompus) et--progress
(affiche la progression du transfert).
Scénarios de synchronisation et configuration:
RSYNC est utile pour diverses tâches: sauvegarder les données vers un serveur distant, partager des fichiers sur les machines, déployer du code en production et maintenir la cohérence entre les environnements de développement et de mise en scène.
Pour l'exemple de ce guide, nous utiliserons:
Système local: Debian 11 Desktop, répertoire local: ~/local/sync/
Système distant: Debian 12 Server, Utilisateur distant: ostechnix
, IP distant: 192.168.1.12
, répertoire distant: ~/remote/sync/
Utilisation de base:
En supposant que rsync
est installé et que les autorisations sont correctement définies, la commande suivante copie / synchronise le répertoire local à la télécommande:
RSync -avzp ~ / local / sync / ostechnix@192.168.1.12: ~ / distant / sync /
N'oubliez pas de remplacer les espaces réservés par vos chemins réels, votre adresse IP et votre nom d'utilisateur.
Vraie synchronisation avec --delete
:
La commande ci-dessus reflète la source vers la destination. Pour garantir une synchronisation complète (contenu identique), utilisez --delete
:
RSync -avzp --Delete ~ / local / sync / ostechnix@192.168.1.12: ~ / distant / sync /
Cela supprime les fichiers de la destination qui ne sont pas présents dans la source. Exercez la prudence avec --delete
pour éviter une perte accidentelle de données.
Considérations importantes:
- Les barres de traîne (
/
) après les chemins de répertoire sont cruciales. Les omettre peut conduire à une création de répertoire inattendue. - Vérifiez les autorisations sur les répertoires source et de destination.
- L'authentification basée sur les clés SSH est recommandée pour la synchronisation automatisée, éliminant les invites de mot de passe.
Améliorations supplémentaires:
Authentification SSH basée sur les clés: générer une paire de clés SSH (
ssh-keygen
), copier la clé publique sur le serveur distant (ssh-copy-id
) et utiliser des chemins de clé par défaut ou spécifier explicitement le chemin de la clé privée dans votre commandersync
.Synchronisation en temps réel (inotify): combinez
rsync
avecinotifywait
(à partir du packageinotify-tools
) pour déclencher la synchronisation lors des modifications de fichiers. Un exemple de script est fourni dans le document d'origine.Planification avec
cron
: Automatiser la synchronisation à l'aidecron
pour fonctionner à des intervalles spécifiques (par exemple, quotidiennement, horaire). Des exemples d'entréescron
sont fournies dans le document d'origine.Chemin de clé SSH explicite: Bien que généralement inutile avec les emplacements de clé par défaut, la spécification explicite du chemin de clé privé dans votre script offre plus de contrôle.
Conclusion:
RSYNC est un outil puissant pour une synchronisation de fichiers efficace. Comprendre ses options et utiliser les meilleures pratiques, telles que l'authentification basée sur les clés SSH et les tâches planifiées, assure une gestion fiable et sécurisée des données. Testez toujours soigneusement avant d'appliquer les commandes rsync
aux environnements de production, en particulier lors de l'utilisation de l'option --delete
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Linux est mieux utilisé comme gestion de serveurs, systèmes intégrés et environnements de bureau. 1) Dans la gestion des serveurs, Linux est utilisé pour héberger des sites Web, des bases de données et des applications, assurant la stabilité et la fiabilité. 2) Dans les systèmes intégrés, Linux est largement utilisé dans les systèmes électroniques intelligents et automobiles en raison de sa flexibilité et de sa stabilité. 3) Dans l'environnement de bureau, Linux fournit des applications riches et des performances efficaces.

Les cinq composants de base de Linux sont: 1. Le noyau, gérant les ressources matérielles; 2. La bibliothèque système, fournissant des fonctions et des services; 3. Shell, l'interface pour les utilisateurs pour interagir avec le système; 4. Le système de fichiers, stockant et organisant des données; 5. Applications, en utilisant des ressources système pour implémenter les fonctions.

Linux System Management assure la stabilité, l'efficacité et la sécurité du système grâce à la configuration, à la surveillance et à la maintenance. 1. Commandes de shell maître telles que TOP et SystemCTL. 2. Utilisez APT ou YUM pour gérer le progiciel. 3. Écrivez des scripts automatisés pour améliorer l'efficacité. 4. Erreurs de débogage communs telles que les problèmes d'autorisation. 5. Optimiser les performances grâce à des outils de surveillance.

Les méthodes d'apprentissage Linux de base à partir de zéro incluent: 1. Comprendre le système de fichiers et l'interface de ligne de commande, 2. Master Basic Commandes telles que LS, CD, MKDIR, 3. Apprenez les opérations de fichiers, telles que la création et l'édition de fichiers, 4. Explorer une utilisation avancée telle que les pipelines et les commandes GREP, 5. Master Debugging Skills and Performance Optimimisation, 6. Amélioration continue des compétences par la pratique et l'exploration.

Linux est largement utilisé dans les serveurs, les systèmes intégrés et les environnements de bureau. 1) Dans le domaine du serveur, Linux est devenu un choix idéal pour héberger des sites Web, des bases de données et des applications en raison de sa stabilité et de sa sécurité. 2) Dans les systèmes intégrés, Linux est populaire pour sa personnalisation et son efficacité élevées. 3) Dans l'environnement de bureau, Linux fournit une variété d'environnements de bureau pour répondre aux besoins des différents utilisateurs.

Les périphériques Linux sont des périphériques matériels exécutant des systèmes d'exploitation Linux, y compris des serveurs, des ordinateurs personnels, des smartphones et des systèmes embarqués. Ils profitent de la puissance de Linux pour effectuer diverses tâches telles que l'hébergement de sites Web et l'analyse des mégadonnées.

Les inconvénients de Linux incluent l'expérience utilisateur, la compatibilité des logiciels, la prise en charge matérielle et la courbe d'apprentissage. 1. L'expérience utilisateur n'est pas aussi conviviale que Windows ou MacOS, et elle s'appuie sur l'interface de ligne de commande. 2. La compatibilité logicielle n'est pas aussi bonne que les autres systèmes et manque de versions natives de nombreux logiciels commerciaux. 3. La prise en charge matérielle n'est pas aussi complète que Windows, et les pilotes peuvent être compilés manuellement. 4. La courbe d'apprentissage est raide et la maîtrise des opérations de ligne de commande nécessite du temps et de la patience.

Internet ne s'appuie pas sur un seul système d'exploitation, mais Linux joue un rôle important. Linux est largement utilisé dans les serveurs et les appareils réseau et est populaire pour sa stabilité, sa sécurité et son évolutivité.
