SLV Migrate Linux - क्विकस्टार्ट

🚚 SLV Migrate Linux

rsync का उपयोग करके SSH पर अपनी पूरी Linux डिस्क को नए सर्वर पर माइग्रेट करें। यह फ़ुल-डिस्क माइग्रेशन है — स्रोत सर्वर की हर चीज़ गंतव्य पर कॉपी की जाती है, जिसमें यूज़र डेटा, कॉन्फ़िगरेशन, इंस्टॉल किए गए पैकेज और SLV नोड सेटअप शामिल हैं।
नोट: यह slv v switch (validator identity माइग्रेशन) से अलग है। slv migrate linux पूरे फ़ाइल सिस्टम को कॉपी करता है, जबकि slv v switch पहले से चल रहे दो नोड के बीच validator identity की अदला-बदली करता है।

पूर्व-आवश्यकताएँ

  • स्रोत नोड पर SLV CLI इंस्टॉल हो
  • स्रोत और गंतव्य, दोनों पर sudo / root एक्सेस
  • स्रोत से गंतव्य तक SSH एक्सेस (पासवर्ड या कुंजी-आधारित)
  • गंतव्य सर्वर नया इंस्टॉल किया हुआ होना चाहिए (मौजूदा डेटा मिलने पर SLV चेतावनी देगा)

बुनियादी उपयोग

स्रोत सर्वर पर चलाएँ:
bash
sudo slv migrate linux --to root@new-server-ip
🚚 SLV Linux Migration

  Source:      ubuntu (this machine)
  Destination: [email protected]

📋 Exclude list:
  • /dev/*
  • /proc/*
  • /sys/*
  • /tmp/*
  • /run/*
  • /mnt/*
  • /media/*
  • /lost+found
  • /swapfile
  • /snap/*
  • /var/log/*

? Start migration? This will overwrite data on the destination. › Yes
  Syncing... (this may take a while depending on disk size)
√ Migration complete
  Rebooting destination...

विकल्प

विकल्पविवरण
-t, --to <ssh>SSH गंतव्य (जैसे root@new-server)
-p, --port <port>SSH पोर्ट (डिफ़ॉल्ट: 22)
--skip-rebootमाइग्रेशन के बाद अपने-आप होने वाला रीबूट छोड़ें
--exclude <path>rsync का अतिरिक्त exclude पैटर्न (कई बार दिया जा सकता है)
--include <path>डिफ़ॉल्ट exclude सूची से हटाएँ (कई बार दिया जा सकता है)
--list-excludesमौजूदा exclude सूची दिखाएँ और बाहर निकलें
-y, --yesपुष्टि का प्रॉम्प्ट छोड़ें

कस्टम SSH पोर्ट

अगर गंतव्य किसी गैर-मानक SSH पोर्ट का उपयोग करता है:
bash
sudo slv migrate linux --to root@new-server-ip --port 2222

Exclude सूची कस्टमाइज़ करें

देखें कि क्या-क्या बाहर रखा जाएगा:
bash
slv migrate linux --list-excludes
अतिरिक्त पाथ बाहर रखें (जैसे, तेज़ माइग्रेशन के लिए लेजर डेटा छोड़ दें):
bash
sudo slv migrate linux --to root@new-server-ip --exclude /home/solv/ledger

नॉन-इंटरैक्टिव मोड

स्क्रिप्टिंग के लिए:
bash
sudo slv migrate linux --to root@new-server-ip --skip-reboot --yes

यह कैसे काम करता है

  1. प्री-फ़्लाइट जाँच — SSH कनेक्टिविटी सत्यापित करता है, और गंतव्य पर मौजूदा डेटा होने पर चेतावनी देता है
  2. rsync — पूरे फ़ाइल सिस्टम को (सिस्टम के छद्म फ़ाइल सिस्टम को छोड़कर) SSH पर कॉपी करता है
  3. माइग्रेशन के बाद — गंतव्य सर्वर को अपने-आप रीबूट करता है (जब तक --skip-reboot न दिया गया हो)
सभी फ़ाइल एट्रिब्यूट, अनुमतियाँ और विशेष फ़ाइलें सुरक्षित रखने के लिए माइग्रेशन rsync को --archive --hard-links --acls --xattrs के साथ इस्तेमाल करता है।

⚠️ महत्वपूर्ण नोट्स

  • root के रूप में चलाएँ (या sudo के साथ)। root के बिना माइग्रेशन में सिस्टम फ़ाइलें छूट जाएँगी।
  • गंतव्य एक नया सर्वर होना चाहिए। मौजूदा डेटा ओवरराइट हो जाएगा।
  • rsync के एग्ज़िट कोड 23/24 (आंशिक ट्रांसफ़र) को त्रुटि नहीं, चेतावनी माना जाता है। कुछ फ़ाइलें (जैसे सक्रिय लॉग) शायद पूरी तरह ट्रांसफ़र न हो पाएँ।
  • माइग्रेशन के बाद, स्रोत को सेवा से हटाने से पहले सत्यापित करें कि नोड सही ढंग से काम कर रहा है।
  • validator identity माइग्रेशन (चल रहे दो validator के बीच ज़ीरो-डाउनटाइम स्वैप) के लिए, इसके बजाय slv v switch का उपयोग करें। Mainnet validator माइग्रेशन देखें।