ফাইল স্থানান্তর: scp এবং rsync
ফাইল স্থানান্তর করতে scp এবং rsync দুটি জনপ্রিয় এবং শক্তিশালী টুল যা Linux, UNIX, এবং macOS সিস্টেমে ব্যবহৃত হয়। এই টুল দুটি ব্যবহারের মাধ্যমে আপনি একটি কম্পিউটার থেকে অন্য কম্পিউটারে নিরাপদে এবং দ্রুত ফাইল স্থানান্তর করতে পারবেন। যদিও দুইটি টুলের কার্যকারিতা একরকম, তবে তাদের মধ্যে কিছু গুরুত্বপূর্ণ পার্থক্য রয়েছে, যেমন ব্যবহার, কার্যকারিতা এবং ক্ষমতা।
1. scp (Secure Copy)
scp হল একটি নিরাপদ ফাইল স্থানান্তর প্রোটোকল যা SSH (Secure Shell) ব্যবহার করে ফাইল স্থানান্তর করতে সাহায্য করে। এটি এক কম্পিউটার থেকে অন্য কম্পিউটারে ফাইল বা ডিরেক্টরি স্থানান্তর করতে ব্যবহৃত হয় এবং এটির মধ্যে এনক্রিপশন থাকে, যাতে ডেটা স্থানান্তর নিরাপদ থাকে।
scp কমান্ডের সাধারণ গঠন:
scp [অপশন] [সোর্স ফাইল] [গন্তব্য]- সোর্স ফাইল: আপনি যে ফাইল বা ডিরেক্টরি স্থানান্তর করতে চান, তা উল্লেখ করুন।
- গন্তব্য: আপনি যেখানেই ফাইল পাঠাতে চান, সেই পাথ (বা দূরবর্তী সিস্টেমের ইউজারনেম এবং আইপি অথবা ডোমেইন নাম) উল্লেখ করুন।
প্রধান অপশনসমূহ:
-r: ডিরেক্টরি রিককার্সিভভাবে কপি করতে ব্যবহৃত হয়।-P: পোর্ট নম্বর নির্ধারণ করতে ব্যবহৃত হয় (ডিফল্ট পোর্ট ২২)।-v: ভের্বোজ মোড, যা স্থানান্তরের সময় প্রক্রিয়া দেখায়।
scp এর উদাহরণ:
একটি ফাইল স্থানান্তর করা:
scp /path/to/local/file.txt user@remote_host:/path/to/remote/directory/এই কমান্ডটি
file.txtফাইলটি আপনার লোকাল সিস্টেম থেকেremote_hostসিস্টেমে/path/to/remote/directory/ডিরেক্টরিতে পাঠাবে।একটি ডিরেক্টরি স্থানান্তর করা (রিকার্সিভ):
scp -r /path/to/local/directory user@remote_host:/path/to/remote/directory/এখানে,
-rঅপশনটি ডিরেক্টরিটি রিকার্সিভভাবে কপি করার জন্য ব্যবহার করা হয়েছে।পোর্ট নম্বর উল্লেখ করে ফাইল স্থানান্তর করা:
scp -P 2222 /path/to/local/file.txt user@remote_host:/path/to/remote/directory/এই কমান্ডটি পোর্ট ২২২২ ব্যবহার করে ফাইলটি স্থানান্তর করবে।
2. rsync
rsync হল একটি অত্যন্ত শক্তিশালী এবং কার্যকরী টুল যা ফাইল এবং ডিরেক্টরি স্থানান্তরের জন্য ব্যবহৃত হয়। এটি শুধুমাত্র স্থানান্তর করতে ব্যবহৃত হয় না, বরং এটি স্থানান্তরিত ডেটার সাথে উৎস এবং গন্তব্যের মধ্যে সিঙ্ক্রোনাইজেশন বজায় রাখার জন্য ব্যবহৃত হয়। এটি স্থানান্তরিত ফাইলের পরিবর্তিত অংশগুলি শুধুমাত্র স্থানান্তর করে, যা স্থানান্তরের গতি বৃদ্ধি করে।
rsync কমান্ডের সাধারণ গঠন:
rsync [অপশন] [সোর্স] [গন্তব্য]প্রধান অপশনসমূহ:
-a: আর্কাইভ মোড, যা ডিরেক্টরি স্ট্রাকচার এবং ফাইলের প্রপার্টি বজায় রাখে।-v: ভের্বোজ মোড, যা বিস্তারিত তথ্য দেখায়।-z: ডেটা কম্প্রেসন সক্রিয় করে।-P: স্থানান্তরের প্রক্রিয়া প্রদর্শন করে এবং স্থানান্তরের সময় মাঝপথে রিজিউম করতে সাহায্য করে।--delete: গন্তব্যে অতিরিক্ত ফাইল মুছে ফেলতে সাহায্য করে (যেগুলি সোর্সে আর নেই)।
rsync এর উদাহরণ:
ফাইল স্থানান্তর করা:
rsync -av /path/to/local/file.txt user@remote_host:/path/to/remote/directory/এই কমান্ডটি
file.txtফাইলটি লোকাল সিস্টেম থেকেremote_hostসিস্টেমে স্থানান্তর করবে এবং ফাইলের সমস্ত অ্যাট্রিবিউট (যেমন, অনুমতি, মালিকানা) বজায় রাখবে।ডিরেক্টরি স্থানান্তর করা:
rsync -av /path/to/local/directory/ user@remote_host:/path/to/remote/directory/এখানে
/path/to/local/directory/ডিরেক্টরি এবং এর সমস্ত উপাদান রিককার্সিভভাবে গন্তব্যে পাঠানো হবে।ফাইল স্থানান্তর করার সময় কম্প্রেশন ব্যবহার করা:
rsync -avz /path/to/local/file.txt user@remote_host:/path/to/remote/directory/-zঅপশনটি কম্প্রেসন চালু করবে, যাতে স্থানান্তরের সময় ডেটা কম আকারে পাঠানো হয়।একাধিক ফাইল স্থানান্তর করা:
rsync -av /path/to/local/file1.txt /path/to/local/file2.txt user@remote_host:/path/to/remote/directory/
scp এবং rsync এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | scp | rsync |
|---|---|---|
| ডেটা স্থানান্তর | ফাইল সরাসরি স্থানান্তর করে। | শুধুমাত্র পরিবর্তিত অংশগুলি স্থানান্তর করে। |
| দ্রুততা | সাধারণত ধীর হতে পারে, কারণ প্রতিবার পুরো ফাইল স্থানান্তর করতে হয়। | দ্রুত, কারণ এটি শুধুমাত্র পরিবর্তিত অংশ স্থানান্তর করে। |
| সিঙ্ক্রোনাইজেশন | সিঙ্ক্রোনাইজেশন সরাসরি সমর্থিত নয়। | ফাইল এবং ডিরেক্টরি সিঙ্ক্রোনাইজেশন সমর্থিত। |
| পুনরায় স্থানান্তর | পুনরায় স্থানান্তরিত হলে পুরো ফাইলটি পুনরায় স্থানান্তরিত হবে। | আগের স্থানান্তরিত ফাইলের শুধুমাত্র পরিবর্তিত অংশ পুনঃস্থাপন হবে। |
| কম্প্রেসন | scp স্বাভাবিকভাবে কম্প্রেসন সমর্থন করে না। | rsync কম্প্রেসন সমর্থন করে (-z অপশন)। |
| অতিরিক্ত অপশন | সীমিত অপশনগুলি, সাধারণত স্থানান্তরের জন্য ব্যবহার করা হয়। | উন্নত অপশন সহ আরো অনেক কাস্টমাইজেশন সক্ষম। |
সারসংক্ষেপ
scpহল একটি সরল এবং সহজ উপায় এক কম্পিউটার থেকে অন্য কম্পিউটারে ফাইল স্থানান্তরের জন্য, যা SSH ব্যবহার করে নিরাপদ ফাইল স্থানান্তর নিশ্চিত করে।rsyncবেশি শক্তিশালী এবং নমনীয় টুল, যা ডেটার সিঙ্ক্রোনাইজেশন এবং শুধুমাত্র পরিবর্তিত অংশ স্থানান্তরের মাধ্যমে গতি বাড়ায় এবং পুনরায় স্থানান্তরিত ফাইলগুলোর জন্য সময় বাঁচায়।
আপনি যদি সিঙ্ক্রোনাইজেশন এবং দ্রুত স্থানান্তর চাচ্ছেন, তবে rsync ভালো একটি বিকল্প, আর যদি সাধারণ স্থানান্তর প্রয়োজন হয়, তবে scp একটি সহজ এবং নিরাপদ পদ্ধতি।
Read more