SLV Migrate Linux - البدء السريع

🚚 SLV Migrate Linux

انقل قرص Linux بالكامل إلى خادم جديد عبر SSH باستخدام rsync. هذه عملية ترحيل كاملة للقرص — يُنسخ كل شيء من الخادم المصدر إلى الوجهة، بما في ذلك بيانات المستخدم والإعدادات والحزم المثبتة وإعداد عقدة SLV.
ملاحظة: هذا يختلف عن slv v switch (ترحيل هوية المدقق). ينسخ slv migrate linux نظام الملفات بأكمله، بينما يبدّل slv v switch هوية المدقق بين عقدتين تعملان بالفعل.

المتطلبات المسبقة

  • تثبيت SLV CLI على العقدة المصدر
  • صلاحية sudo / root على كل من المصدر والوجهة
  • وصول SSH من المصدر إلى الوجهة (بكلمة مرور أو بمفتاح)
  • يجب أن يكون خادم الوجهة تثبيتًا جديدًا (سيحذر SLV إذا اكتشف بيانات موجودة)

الاستخدام الأساسي

شغّله على الخادم المصدر:
bash
sudo slv migrate linux --to root@new-server-ip
text
🚚 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 إضافي (قابل للتكرار)
--include <path>الإزالة من الاستثناءات الافتراضية (قابلة للتكرار)
--list-excludesعرض قائمة الاستثناءات الحالية والخروج
-y, --yesتخطي مطالبة التأكيد

منفذ SSH مخصص

إذا كانت الوجهة تستخدم منفذ SSH غير قياسي:
bash
sudo slv migrate linux --to root@new-server-ip --port 2222

تخصيص الاستثناءات

اعرض ما سيُستثنى:
bash
slv migrate linux --list-excludes
استثنِ مسارات إضافية (مثلًا، تخطي بيانات الـ ledger لتسريع الترحيل):
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 (النقل الجزئي) كتحذيرات وليست أخطاء. بعض الملفات (مثل السجلات النشطة) قد لا تُنقل بشكل مثالي.
  • بعد الترحيل، تحقق من أن العقدة تعمل بشكل صحيح قبل إخراج المصدر من الخدمة.
  • لترحيل هوية المدقق (تبديل بدون توقف بين مدققين يعملان)، استخدم slv v switch بدلًا منه. راجع ترحيل مدقق Mainnet.