উত্তর:
এক শব্দ: rsync
।
মনে রাখবেন যে আপনি যদি ধীর লিঙ্কে আছেন বা সার্ভারটি ভারী বোঝার মধ্যে রয়েছে তবে অনুলিপি করার জন্য ব্যবহৃত সরঞ্জামটি কোনও বাধা হয়ে দাঁড়াবে না এবং অনুলিপি করার কোনও উপায় যেভাবেই হোক ধীর হয়ে যাবে।
এটি আপনাকে আপনার স্থানীয় কম্পিউটার এবং রিমোট সার্ভারের মধ্যে অনুলিপি করার জন্য প্রাথমিক ব্যবহারটি দেয়: http://oreilly.com/pub/h/38
স্থানীয় কম্পিউটার থেকে কোনও দূরবর্তী সার্ভারে অনুলিপি করতে (অবশ্যই আপনাকে অবশ্যই পাথ, ব্যবহারকারীর নাম এবং হোস্টের ঠিকানা প্রতিস্থাপন করতে হবে):
rsync -avz -e ssh /path/on/local/computer remoteuser@remotehost.somewhere.example.com:/path/on/server
-a
সংরক্ষণাগার-v
বাগাড়ম্বরপূর্ণ-z
কম্প্রেস-e ssh
"একটি এসএসএইচ টানেল ব্যবহার করুন"অন্যান্য দিক কপি করার জন্য পাথ পরিবর্তিত হয়ে যায় (প্রথম থেকে , দ্বিতীয় থেকে ):
rsync -avz -e ssh remoteuser@remotehost.somewhere.example.com:/path/on/server /path/on/local/computer
তবে একই সার্ভারে আশেপাশের জিনিসগুলি অনুলিপি করার জন্যও rsync কার্যকর:
rsync -av /path-to/copy/from /path_to/copy/to
-z
ল্যান অনুলিপি বা একটি মেশিনের মধ্যে অনুলিপি করার জন্য ব্যবহার করবেন না ; -z
ইন্টারনেট জুড়ে অনুলিপি সহ বা তার বাইরে পরীক্ষা করুন (অনেক কিছুর উপর নির্ভর করে এক বা অন্যটি দ্রুত হতে পারে)।
-e ssh
দূরবর্তী হোস্টগুলির জন্য এখন ডিফল্ট, সুতরাং বিকল্পটি স্পষ্টভাবে পাস করার প্রয়োজন নেই।
অন্য পৃথিবী: scp
scp /path/on/local/computer remoteuser@remotehost.somewhere.example.com:/path/on/server
এক-শট ডিলের জন্য, স্কিপ সুবিধাজনক। যদি এটি প্রচুর ফাইল হয় তবে আরএসইএনসি একটি ভাল ধারণা। যদি কোনও সংযোগ বাদ দেওয়া হয়, আরএসসিএনসি যেখানে ছেড়ে গিয়েছিল সেখানেই তা নিতে পারে।
আমি জানতাম যে rsync এর সংকোচনের ( -z
) ছিল এবং আমি শিখেছি যে স্ক্রিপটিও ( -C
) করে।
আপনার সেটআপে, আরএসআইএনসি সম্ভবত যথেষ্ট যথেষ্ট ... তবে উদাহরণ হিসাবে, যদি অনেক ছোট ফাইল থাকে তবে আরএসসিএনসি এর মাধ্যমে ফাইলগুলি স্থানান্তর করার চেয়ে প্রথমে ফাইলগুলি তরান করা আরও দ্রুত হতে পারে। এর কারণ হ'ল মালিক যদি ছোট হয় তবে টাইমস্ট্যাম্পগুলি, অনুমতিগুলি ফাইলের থেকে কিছুটা বেশি ভারী হয়। তার সমস্ত তথ্য এক ফাইলে একীভূত করবে এবং আরএসআইএনসি বড় ব্লকগুলি অনুলিপি করবে।
বা আরও ভাল, যদি কোনও সুরক্ষার প্রয়োজন হয় না, তবে টার এবং এনসি ব্যবহার করুন:
গন্তব্যে, একটি গ্রহণকারী ডেমন প্রস্তুত করুন, সঙ্কুচিত করুন এবং আনতার করুন:
nc -l -p 12345 | pigz -d | tar xvf -
উত্স অনুসারে, সমস্ত কিছুকে সমান্তরালভাবে সংকুচিত করুন এবং এটিকে গন্তব্যে প্রেরণ করুন:
tar cvf - ./ | pigz | nc host 12345
-z
স্থানীয় অনুলিপি করার জন্য বিকল্পটি ছেড়ে দিয়েছে কারণ এটি অপ্রয়োজনীয় ওভারহেড যুক্ত করে। আইএমএইচও, আপনার কেবল-z
তখনই ধীরে ধীরে নেটওয়ার্ক লিংক জুড়ে rsync ব্যবহার করা উচিত । যদি 100 বেস-টি-এর বেশি পরিমাণে ডেটা অনুলিপি করা হয় তবে আপনি ব্যতীত ঠিকই থাকতে পারেন-z
। একটি দ্রুত নেটওয়ার্ক সংযোগের সাথে, সংক্ষেপণ ব্যবহার করে আপনার সিপিইউ পেরে যায় এবং অন্যান্য প্রক্রিয়া অনাহারে থাকতে পারে।