Хоча в цьому випадку я маю згоду на відповідь "переслати це за допомогою жорстких дисків", ось рішення для копіювання, яке я використовую, коли мені вперше потрібно копіювати велику кількість файлів:
Хоча rsync
добре зберігати два сховища даних синхронізовано, воно вводить зовсім небагато зайвих витрат для початкової передачі. Я зрозумів , що найшвидший шлях до tar
якої отримує по трубопроводу через netcat
. На сайті приймача ви також можете використовувати netcat
в режимі прослуховування, який передає вхідні дані на витяг tar
. Перевага полягає в тому, що він tar
починає надсилати негайно і netcat
надсилає його як звичайний потік TCP без додаткових накладних протоколів вищого рівня. Це має бути якнайшвидшим, як це стає. Однак перезавантажити перервану передачу на останній позиції непросто.
Також легко можна стиснути дані для передачі, використовуючи правильні tar
варіанти або додати інструмент стиснення в трубах. Зауважте, що netcat
дату надсилається незашифрованою. У випадках, коли це не варіант, ssh
замість цього можна використовувати зашифроване з'єднання ( tar <options> | ssh <target> -c 'tar -x <options>'
).
Якщо всі дані передаються, rsync
можна використовувати для забезпечення синхронізації всіх оновлених файлів тим часом. Також IIRC tar
не створює сокети, які втрачаються в іншому випадку, але вони все одно не використовуються для даних центру даних.