C’est une situation dans laquelle je me trouve fréquemment:
- J'ai un serveur source avec un disque dur de 320 Go à l'intérieur, et 16 Go de RAM ( spécifications exactes disponibles ici , mais comme c'est un problème que je rencontre fréquemment sur d'autres machines, je préférerais que la réponse fonctionne sur n'importe quel ordinateur. machine Linux "raisonnable")
- J'ai un serveur de sauvegarde avec plusieurs téraoctets d'espace disque ( spécifications exactes ici , voir l'avertissement ci-dessus)
Je souhaite transférer 320 Go de données du serveur source vers le serveur cible (plus précisément, les données depuis /dev/sda
).
- Les deux ordinateurs étant physiquement côte à côte, je peux faire passer des câbles entre eux.
- Je suis sur un réseau local et j'utilise un nouveau routeur , ce qui signifie que la vitesse de mon réseau devrait "idéalement" être de 1 000 Mbits, n'est-ce pas?
- La sécurité n'est pas un problème. Je suis sur un réseau local et je fais confiance à toutes les machines du réseau, y compris le routeur.
- (facultatif) Je n'ai pas nécessairement besoin d'une somme de contrôle signée des données, mais la vérification des erreurs élémentaires (telles que les paquets perdus ou le lecteur qui devient illisible) doit être détectée plutôt que simplement disparaître dans la sortie.
J'ai cherché cette question en ligne et j'ai testé plusieurs commandes. Celui qui apparaît le plus souvent est celui-ci:
ssh user@192.168.1.100 'dd bs=16M if=/dev/sda | gzip' > backup_sda.gz
Cette commande s’est révélée trop lente (elle a fonctionné pendant une heure et n’a reçu que 80 Go environ dans les données). Cela a pris environ 1 minute et 22 secondes pour le paquet de test de 1 Go, et a fini par être deux fois plus rapide sans compression. Les résultats peuvent également avoir été faussés par le fait que le fichier transféré est inférieur à la quantité de RAM sur le système source.
De plus (et cela a été testé sur des éprouvettes de 1 Go), je rencontre des problèmes si j'utilise la gzip
commande et dd
; le fichier résultant a une somme de contrôle différente lors de l'extraction sur la cible, que s'il est directement acheminé. J'essaie encore de comprendre pourquoi cela se produit.
/dev/sda
sous forme d'image ou uniquement les fichiers. Pourquoi rsync n'est pas une option? Est /dev/sda
monté pendant que vous dd
ed?