আপনার ওয়েবসাইট বা ব্লগ ব্যাকআপ लेना একটি খরচিয়ে এবং কঠিন কাজ হতে পারে, যেটির জন্য বিভিন্ন প্লাগইন বা আপনার হোস্টিং প্রোভাইডার থেকে অতিরিক্ত প্ল্যান দরকার হয়—কিন্তু আসলে এতটুকু কঠিন নয়।
আপনার ওয়েবসাইটে SSH অ্যাক্সেস থাকলে, বিভিন্ন হাই-লেভেল টাস্ক রিমোটলি করা সহজ। এখানে SSH কমান্ড লাইন সেশন ব্যবহার করে আপনার ওয়েবসাইট ব্যাকআপ लेने کا পদ্ধতি দেওয়া হলো।
SSH কমান্ড লাইন কী?
SSH আপনাকে আপনার ওয়েব সার্ভারের সাথে সরাসরি কথা বলার ক্ষমতা দেয়। এটি কোনো সুন্দর ইন্টারফেস বা GUI দেয় না, শুধু একটি সadura-সাড়া পাওয়ারফুল কমান্ড লাইন। এটি কিছু মানুষকে ভয়ংকর লাগতে পারে, কিন্তু এর শ محশক্তি, গতি, এবং অটোমেশনের স্তর আপনাকে জীবনদান দিতে পারে এবং সাইট মাইগ্রেশন (migrating sites) প্রসেসকে অবিশ্বাস্যভাবে সহজ করে তোলে।
অনেক শেয়ার্ড হোস্ট দুর্ভাগ্যক্রমে ডিফল্টভাবে আপনার একাউন্টে SSH অ্যাক্সেস দেয় না। কিন্তু এটি পরিবর্তন হচ্ছে, এবং আপনি যদি লিনাক্স হোস্টিং ব্যবহার করেন, আপনার SSH অ্যাক্সেস থাকা উচিত। আপনার ওয়েবসাইট যদি GoDaddy-তে হোস্টেড থাকে, SSH ডিফল্টভাবে ইনেবলড থাকা উচিত। না থাকলে, আপনি GoDaddy cPanel ইন্টারফেস থেকে SSH ইনেবল করতে পারেন। অন্যান্য ওয়েব হোস্টও অনুরূপ ফিচার অফার করে।
একই সাথে, VPS এবং ডেডিকেটেড সার্ভার ওয়েব হোস্ট SSH অনুমতি দেয়। পার্থক্য জানেন না? ওয়েব হোস্টিং সার্ভিসের আমাদের গাইড দেখে আরও জানুন।
আপনার কম্পিউটারে SSH কীভাবে ব্যবহার করবেন
সব তিনটি ডেস্কটপ অপারেটিং সিস্টেমে SSH সাপোর্ট সহ একটি কমান্ড লাইন ইন্টারফেস রয়েছে।
- উইন্ডোজ: Windows PowerShell ব্যবহার করুন (আপনি PuTTYও ব্যবহার করতে পারেন)
- macOS: একটি Terminal ব্যবহার করুন
- লিনাক্স: একটি Terminal ব্যবহার করুন
সহজে ইন্টারফেসটি খুলুন এবং ssh কমান্ড লিখুন সংক্রান্ত টুলস ব্যবহার করতে।
আপনি যদি কখনো কমান্ড লাইন এনভায়রনমেন্ট ব্যবহার না করে থাকেন, তবে কিছু জটিল লাগতে পারে। এখন SSH-র সব কিছু শেখানোর সময় নেই, কিন্তু এখানে দুটি শর্টকাট:
- আপ ও ডাউন অ্যারো কী ব্যবহার করুন পূর্বে লিখো কমান্ডগুলো সাইকেল করার জন্য
- লম্বা ফাইলনেম লিখার সময় ট্যাব কী চাপুন—যদি নামটি যথেষ্ট ইউনিক হয়, তবে এটি অটোকমপ্লিট হবে
আপনি SSH-এ কমফরটেবল হলে, আপনার ওয়েবসাইট ব্যাকআপ लेना শুরু করুন।
SSH-এর মাধ্যমে আপনার ওয়েবসাইটে লগইন করুন
আপনার পছন্দের SSH টুল চালু করুন এবং নিচেরটি লিখুন:
ssh username@yourdomain.com
আপনি শুধু IP অ্যাড্রেসও ব্যবহার করতে পারেন। এটি উপকারী যদি আপনি একটি ওয়েব সার্ভার অ্যাক্সেস করেন যেটির URL এসাইন করা নেই, অথবা আপনি ওয়েবসাইট মাইগ্রেট করছেন এবং URL শিফট করেছে।
ssh username@YOUR.IP.ADDRESS.HERE
প্রম্পট হলে পাসওয়ার্ড লিখুন। আপনি যদি কখনো SSH ব্যবহার না করে থাকেন, পাসওয়ার্ড লিখার সময় স্ক্রিনে কিছু দেখাচ্ছে না সেটা আপনাকে বিস্মিত করতে পারে।
চিন্তা করবেন না, সেটা সিকিউরিটির জন্য।
একবার লগইন হলে, আপনাকে একটি কমান্ড প্রম্পট দেখাবে, নিচের মতো:
-bash-3.2:~$
এর মানে সব ঠিক আছে, তাই এগিয়ে যান এই কমান্ডগুলো দিয়ে।
শুরু করুন চारोंদিকে তাকিয়ে এবং আপনার ওয়েব ডিরেক্টরিতে নেভিগেট করার চেষ্টা করে। টাইপ করুন:
ls
বর্তমান ফাইল ও ফোল্ডার 'লিস্ট' (list) করতে।
cd directoryname
একটি ডিরেক্টরিতে চেঞ্জ (change) করতে। এই কেসে, আমি যাচ্ছি httpd ডিরেক্টরিতে, যা আমার ওয়েব সাইটের রুট। আপনি আবার
ls
চাপুন, শুধু নিশ্চিত হতে।
এই মুহূর্তে, আমরা SSH ব্যাকআপ প্রসেস শুরু করার জন্য প্রস্তুত।
SSH দিয়ে আপনার ওয়েবসাইট ডেটাবেস ব্যাকআপ নিন
আপনি সম্ভবত একটি ওয়ার্ডপ্রেস (WordPress) ইনস্টলেশন ব্যাকআপ নিচ্ছেন, তাই আপনি ডেটাবেস এবং ফাইল দুটোই ব্যাকআপ নিতে চাবেন।
আপনার ডেটাবেস ব্যাকআপ लेने জন্য আপনার তিনটি টুকরো তথ্য দরকার। خوشকhabরবশত, আপনি যদি ওয়ার্ডপ্রেস চালান, এগুলো সব wp-config.php ফাইলে পাওয়া যাবে:
- ডেটাবেস নাম
- ডেটাবেস ইউজার
- ডেটাবেস পাসওয়ার্ড
(আপনি যদি অন্য ডেটাবেস-চালিত ওয়েব অ্যাপ্লিকেশন ব্যবহার করেন, সেটআপ ডকুমেন্টেশন থেকে এই ডিটেইলগুলো খুঁজুন।)
তারপর এই সহজ কমান্ডটি ইস্যু করুন, ইউজারনেম, টেবিল নাম, এবং ব্যাকআপ ফাইলনেম যেখানে প্রয়োজন সেখানে রিপ্লেস করে নিশ্চিত করুন:
mysqldump --add-drop-table -u [username] -p [tablename] > [backupfilename].sql
Enter চাপুন, তারপর প্রম্পট হলে আপনার পাসওয়ার্ড লিখুন। একবার রান হলে, আপনি আবার একটি
ls
কমান্ড ইস্যু করতে পারেন ফাইলটি আউটপুট হয়েছে কিনা চেক করতে। অভিনন্দন, এটি আপনার ডেটাবেসের সকল তথ্য একটি একক SQL ফাইল হিসেবে, ব্যাকআপ নেওয়া বা অন্য জায়গায় ইম্পোর্ট করার জন্য প্রস্তুত।
SSH ব্যবহার করে ডেটাবেসে অ্যাক্সেস নেই
আমরা অনুমান করেছি যে আপনার ডেটাবেস সার্ভার একই সার্ভারে চলছে যেটিতে আপনি হোস্ট করছেন।
তবে, GoDaddy-তে, MySQL ডেটাবেস একটি রিমোট সার্ভারে সংরক্ষিত থাকে যেটিতে আপনার SSH অ্যাক্সেস নেই। এই ধরনের কেসে, আপনাকে হোস্টের cPanel-এর মাধ্যমে PHPMyAdmin অ্যাক্সেস করতে হবে, যা এই টিউটোরিয়ালের স্কোপের বাইরে।
SSH দিয়ে ওয়েবসাইটের ডেটা ব্যাকআপ নিন
ডেটাবেস একটি একক ফাইল হিসেবে সার্ভারে সংরক্ষিত হলে, আপনি SSH দিয়ে আপনার সাইট ব্যাকআপ নিতে পারবেন। প্রথমে নেভিগেট করুন (cd ব্যবহার করে) সেই ডিরেক্টরিতে যেটিতে আপনি ব্যাকআপ তৈরি করতে চান। এরপর ব্যবহার করুন
tar -vcf yourbackupfilename.tar /directory/path
এটি ভাঙে ব্যাখ্যা করা যাক:
tar— সাধারণ লিনাক্স কমপ্রেশন ফরম্যাট, zip-এর মতো কিন্তু আরও দক্ষ।-vcf— সহজ অপশন যেগুলো বলে "একটি নতুন আর্কাইভ বানাও, এবং তুমি কী করছো তা আমাকে বলো"।tar— আপনার আর্কাইভের জন্য পছন্দ করা নাম/directory/path— ওয়েবসাইট ডিরেক্টরির পাথ স্পেসিফাই করুন
একটি অপশনাল সিঙ্গেল পিরিয়ড (.) ফাইল পাথের বদলে ব্যবহার করা যেতে পারে, যা আর্কাইভকে সব কিছু অন্তর্ভুক্ত করার নির্দেশ দেয়। আপনি *ও ক্যাচ-অল (catch-all) হিসেবে ব্যবহার করতে পারেন, কিন্তু এটি হিডেন ফাইলগুলো ওমিট (omit) করে দেয় যেমন .htaccess যা ওয়ার্ডপ্রেসের জন্য অপরিহার্য।
এটি রান হলে, আপনার সাইটের প্রতিটি ফাইল নিয়ে একটি একক TAR ফাইল পাবেন।
এই মুহূর্তে, আপনি FTP দিয়ে কানেক্ট করে সাইট আর্কাইভটি ডাউনলোড করতে পারেন।
SSH দিয়ে আপনার ওয়েবসাইট ব্যাকআপ রিস্টোর করুন
মান লিনাক্স সেরা খারাপ ঘটেছে, এবং আপনার সাইটে কিছু ভয়ানক ভুল হয়েছে। আপনার পাসল সপ্তাহের ব্যাকআপ একটি TAR ফাইল রয়েছে, তাই আপনি এটি রিস্টোর করতে চান।
প্রথমে, FTP দিয়ে লগইন করুন এবং ব্যাকআপ ফাইলটি আপনার সার্ভারের রুট ডিরেক্টরিতে আপলোড করুন।
সব ফাইল আনপ্যাক (unpack) করে শুরু করুন, যা আমরা ব্যাকআপ लेने সময় করেছিলাম তার বিপরীত:
tar -vxf yourbackupfilename.tar
সতর্কতা: এটি বিদ্যমান ফাইলগুলো ওভাররাইট (overwrite) করবে!
এখানে গুরুত্বপূর্ণ পার্থক্য:
-vxf
— tar-কে নির্দেশ করে ফাইলগুলো এক্সট্রাক্ট (extract) করার জন্য বদলে নতুন ব্যাকআপ তৈরি করার পরিবর্তে।
শেষ ধাপ হলো আপনার ডেটাবেসকে সেখানে ফিরিয়ে আনা যেখানে এটা ছিল। একটি ব্ল্যাঙ্ক ডেটাবেস সেটআপ দিয়ে শুরু করুন একই পাসওয়ার্ড এবং টেবিল নামের সাথে। আপনার যদি এটি না থাকে, আপনাকে আপনার সাইট কনফিগারেশন সেটিংসও পরিবর্তন করতে হবে।
ডেটাবেস রিস্টোর করতে, ব্যবহার করুন:
mysql -u [username] -p [tablename] < [databasebackupfilename].sql
SSH ওয়েবসাইট ব্যাকআপ: ওয়েব কনসোল এবং প্লাগইন চেয়ে দ্রুত
সাইট ব্যাকআপ लेने এডഡ് হেল্প করার জন্য বিভিন্ন টুল এবং প্লাগইন প্রকাশিত হয়েছে, কিন্তু কোনোটিই SSH চেয়ে দ্রুত নয়।
আপনার যদি GoDaddy বা যেরে আপনার সাইট হোস্ট করছেন তার SSH অ্যাক্সেস থাকে, আপনি এখন একটি ওয়েবসাইট ব্যাকআপ নিতে পারেন। আরও জানতে আগ্রহী? লিনাক্স সার্ভার SSH দিয়ে রিমোটলি ম্যানেজ করার পদ্ধতি শিখুন।