अपनी वेबसाइट या ब्लॉग का बैकअप लेना एक महंगा और कठिन कार्य हो सकता है, जिसमें विभिन्न प्लगइन्स, या आपके होस्टिंग प्रदाता से अतिरिक्त योजनाओं की आवश्यकता होती है - लेकिन वास्तव में ऐसा होना जरूरी नहीं है।
यदि आपकी वेबसाइट पर SSH एक्सेस है, तो विभिन्न हाई-लेवल कार्यों को रिमोटली करना आसान है। यहां बताया गया है कि कमांड लाइन सत्र में SSH का उपयोग करके अपनी वेबसाइट का बैकअप कैसे लें।
SSH कमांड लाइन क्या है?
SSH आपको सीधे अपने वेब सर्वर से बात करने की क्षमता देता है। यह एक सुंदर इंटरफेस या एक अच्छा GUI नहीं देता, बस एक सीधा शक्तिशाली कमांड लाइन। यह कुछ लोगों के लिए डराने वाला हो सकता है, लेकिन इसकी सरासर शक्ति, गति, और ऑटोमेशन का स्तर एक परम जीवनरक्षक हो सकता है और साइटों को माइग्रेट करने की प्रक्रिया को अविश्वसनीय रूप से आसान बना देता है।
कई शेयर्ड होस्ट दुर्भाग्य से डिफ़ॉल्ट रूप से आपके खाते में SSH एक्सेस की अनुमति नहीं देते। हालांकि, यह बदल रहा है, और यदि आप लिनक्स होस्टिंग का उपयोग कर रहे हैं तो आपके पास SSH एक्सेस होना चाहिए। यदि आपकी वेबसाइट GoDaddy के साथ होस्टेड है, तो SSH डिफ़ॉल्ट रूप से सक्षम होना चाहिए। यदि नहीं, तो आप GoDaddy cPanel इंटरफेस में SSH सक्षम कर सकते हैं। अन्य वेब होस्ट एक समान सुविधा प्रदान करेंगे।
इस बीच, VPS और डेडिकेटेड सर्वर वेब होस्ट SSH की अनुमति देंगे। अंतर नहीं जानते? अधिक जानने के लिए वेब होस्टिंग सेवाओं पर हमारी गाइड देखें।
अपने कंप्यूटर पर SSH का उपयोग कैसे करें
सभी तीन डेस्कटॉप ऑपरेटिंग सिस्टम SSH सपोर्ट के साथ एक कमांड लाइन इंटरफेस पेश करते हैं।
- विंडोज: Windows PowerShell का उपयोग करें (आप PuTTY का भी उपयोग कर सकते हैं)
- macOS: टर्मिनल का उपयोग करें
- लिनक्स: टर्मिनल का उपयोग करें
बस इंटरफेस खोलें और संबंधित टूल्स का उपयोग करने के लिए ssh कमांड दर्ज करें।
यदि आपने पहले कभी कमांड लाइन वातावरण का उपयोग नहीं किया है, तो इसमें से कुछ कठिन लग सकता है। हालांकि अभी आपको SSH के बारे में सब कुछ सिखाने का समय नहीं है, यहां कुछ शॉर्टकट हैं:
- पहले दर्ज किए गए कमांड के माध्यम से साइकिल चलाने के लिए ऊपर और नीचे तीर कुंजियों का उपयोग करें
- लंबे फ़ाइलनाम में टाइप करते समय टैब कुंजी दबाएं - यदि नाम पर्याप्त रूप से अद्वितीय है तो यह ऑटोकम्प्लीट होना चाहिए
जब आप SSH के साथ सहज हों तो अपनी वेबसाइट का बैकअप लेना शुरू करें।
SSH पर अपनी वेबसाइट में लॉग इन करें
अपना पसंदीदा SSH टूल लॉन्च करके शुरू करें और निम्नलिखित दर्ज करें:
ssh username@yourdomain.com
आप केवल IP एड्रेस का भी उपयोग कर सकते हैं। यह उपयोगी है यदि आप एक वेब सर्वर तक पहुंच रहे हैं जिसे अभी तक एक URL असाइन नहीं किया गया है, या यदि आप वेबसाइट्स माइग्रेट कर रहे हैं और URL स्थानांतरित हो गया है।
ssh username@YOUR.IP.ADDRESS.HERE
प्रॉम्प्ट होने पर पासवर्ड दर्ज करें। यदि आपने पहले कभी SSH का उपयोग नहीं किया है, तो आप टाइप करते समय अपनी पासवर्ड स्क्रीन पर कुछ भी नहीं दिखने पर आश्चर्यचकित हो सकते हैं।
चिंता न करें, यह सुरक्षा के लिए है।
एक बार लॉग इन होने पर, आपको निम्न जैसा एक कमांड प्रॉम्प्ट प्रस्तुत किया जाएगा:
-bash-3.2:~$
इसका मतलब है कि सब कुछ ठीक है, इसलिए इन कमांड के साथ जारी रखें।
चारों ओर देखने और अपने वेब डायरेक्टरी पर नेविगेट करने का प्रयास करके शुरू करें। टाइप करें:
ls
वर्तमान फाइलों और फ़ोल्डर्स को 'लिस्ट' करने के लिए।
cd directoryname
एक डायरेक्टरी में बदलने के लिए। इस मामले में, मैं httpd डायरेक्टरी पर नेविगेट करने जा रहा हूं, जो मेरी वेब साइट का रूट है। आप फिर से ls कर सकते हैं, बस सुनिश्चित होने के लिए।
इस बिंदु पर, हम SSH बैकअप प्रक्रिया शुरू करने के लिए तैयार हैं।
SSH के साथ अपनी वेबसाइट डेटाबेस का बैकअप लेना
चूंकि आप शायद एक वर्डप्रेस इंस्टॉल का बैकअप ले रहे होंगे, आप डेटाबेस और फाइलों दोनों का बैकअप लेना चाहेंगे।
अपने डेटाबेस का बैकअप लेने के लिए आपको तीन जानकारियों की आवश्यकता होगी। सौभाग्य से, यदि आप वर्डप्रेस चला रहे हैं, तो ये सभी 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--- वेबसाइट डायरेक्टरी का पथ निर्दिष्ट करें
एक वैकल्पिक सिंगल पीरियड मार्क फाइल पाथ को प्रतिस्थापित कर सकता है, आर्काइव को सब कुछ शामिल करने का निर्देश देता है। आप कैच-ऑल के रूप में * का भी उपयोग कर सकते हैं, लेकिन यह .htaccess जैसी छिपी हुई फाइलों को छोड़ देता है जो वर्डप्रेस के लिए आवश्यक है।
एक बार यह चलने के बाद, आपके पास अपनी साइट पर हर फाइल से युक्त एक सिंगल TAR फाइल होगी।
इस बिंदु पर, आप FTP के माध्यम से कनेक्ट कर सकते हैं और साइट आर्काइव डाउनलोड कर सकते हैं।
SSH के साथ अपनी वेबसाइट बैकअप को पुनर्स्थापित करना
मान लें कि सबसे बुरा हुआ है, और आपकी साइट के साथ कुछ भयानक गलत हो गया है। आपके पास पिछले हफ्ते बैकअप की गई हर चीज की एक TAR फाइल है, इसलिए आप इसे पुनर्स्थापित करना चाहेंगे।
सबसे पहले, FTP के माध्यम से लॉग इन करें और बैकअप फाइल को अपने सर्वर के रूट डायरेक्टरी में अपलोड करें।
सभी फाइलों को अनपैक करके शुरू करें, जो हमने उन्हें बैकअप करने के लिए किया था उसका उल्टा:
tar -vxf yourbackupfilename.tar
चेतावनी: यह मौजूदा फाइलों को ओवरराइट कर देगा!
यहां महत्वपूर्ण अंतर:
-vxf
--- tar को नया बैकअप बनाने के बजाय फाइलों को निकालने का निर्देश देता है।
अंतिम चरण है अपने डेटाबेस को वापस वहीं खींचना जहां यह पहले था। उसी पासवर्ड और टेबल नाम के साथ एक खाली डेटाबेस सेटअप करके शुरू करें। यदि आपके पास यह नहीं है, तो आपको अपनी साइट कॉन्फिगरेशन सेटिंग्स भी बदलनी होंगी।
डेटाबेस को पुनर्स्थापित करने के लिए, उपयोग करें:
mysql -u [username] -p [tablename] < [databasebackupfilename].sql
SSH वेबसाइट बैकअप: वेब कंसोल और प्लगइन्स से तेज़
जबकि विभिन्न टूल्स और प्लगइन्स प्रकाशित किए गए हैं जो आपको साइट बैकअप बनाने में मदद करते हैं, SSH से तेज़ कुछ भी नहीं है।
यदि आपके पास GoDaddy या जिसके साथ भी आप अपनी साइट होस्ट करते हैं, उस तक SSH एक्सेस है, तो अब आप एक वेबसाइट का बैकअप ले सकते हैं। अधिक जानने में रुचि रखते हैं? SSH के साथ लिनक्स सर्वर को रिमोटली मैनेज करना सीखने का समय आ गया है।