الاستضافة الذاتية9 دقيقة قراءة

JetBackup على cPanel/WHM: التثبيت والاستعادة

على خادم cPanel مشترك، تنسخ الأداة الاحتياطية الأصلية في WHM كل شيء أو لا شيء — دون استعادة تفصيلية ودون وجهة خارج الخادم موثوقة. يسد JetBackup هذه الفجوة تمامًا: نسخ احتياطية تزايدية لكل حساب، ووجهات متعددة (S3 وSFTP وBackblaze)، واستعادة بالخدمة الذاتية من واجهة cPanel لكل عميل. يشمل هذا الدليل التثبيت وإعداد الوجهات والجدولة واستكشاف الأخطاء الشائعة.

لماذا لا تكفي نسخ cPanel الاحتياطية الأصلية في بيئة الإنتاج

يأتي WHM مزوّدًا بنظام نسخ احتياطي بسيط يحفظ كل حساب في أرشيف مضغوط. يؤدي وظيفته في حالات الاستعادة الطارئة الشاملة، لكنه يفتقر إلى كل ما يحتاجه خادم الإنتاج يوميًا: الاستعادة الجزئية (ملف واحد، جدول واحد، صندوق بريد واحد)، والتخزين التلقائي خارج الخادم، ورؤية العميل دون تدخّل المسؤول، والاستبقاء القابل للتهيئة حسب نوع النسخة. على خادم يستضيف عشرات الحسابات، تُشكّل هذه الثغرات مخاطر حقيقية: استعادة أرشيف كامل بحجم 20 غيغابايت لاسترداد ملف إعداد واحد أمر بطيء ومحفوف بالمخاطر. صُمّم JetBackup لسدّ هذه الثغرات تحديدًا.

ما الذي يضيفه JetBackup فوق cPanel/WHM

  • نسخ احتياطية تفصيلية: يُنسَخ كل حساب بشكل مستقل؛ والاستعادة تستهدف ملفًا أو مجلدًا أو قاعدة بيانات أو صندوق بريد دون المساس بأي شيء آخر.
  • استعادة بالخدمة الذاتية: يجد كل مستخدم cPanel نسخه الاحتياطية في واجهته الخاصة دون فتح تذكرة — فتختفي الحاجة إلى دعم المستوى الأول في هذه الحالة.
  • وجهات متعددة في آن واحد: محلية وSFTP/SSH وS3-متوافقة (AWS وWasabi وBackblaze B2) وFTP — يمكن لكل مهمة إرسال النسخ إلى عدة وجهات في آنٍ معًا.
  • نسخ احتياطية تزايدية: لا تُنقَل إلا الفروقات بين نسختين متتاليتين، مما يُقلّل استهلاك النطاق الترددي ووقت التنفيذ بنسبة 60 إلى 90 % بعد أول نسخة كاملة.
  • جدولة متقدمة: يومية وأسبوعية وشهرية مع قواعد استبقاء مستقلة لكل وجهة ولكل نوع.
  • لوحة WHM مركزية: يرى المسؤول حالة كل مهمة وآخر نتائجها والحصص المستهلَكة دون مغادرة WHM.
  • استعادة تجريبية غير مدمِّرة: يمكن لـ JetBackup الاستعادة إلى مجلد مؤقت للتحقق من السلامة دون الكتابة فوق بيانات الإنتاج.
  • نقل حسابات مُيسَّر: ترحيل حساب من خادم إلى آخر انطلاقًا من نسخة JetBackup الاحتياطية دون الحاجة إلى وصول SSH مباشر للخادم المصدر.

المتطلبات الأساسية قبل التثبيت

يستلزم JetBackup وصولًا بصلاحيات root عبر WHM على خادم cPanel يعمل بنظام AlmaLinux 8/9 أو CloudLinux 8/9 (الإصدارات القديمة من CentOS 7 لم تعد تتلقى تحديثات JetBackup 5). يُوصى بمساحة قرص تعادل ضعف حجم البيانات المُنسَخة كحدٍّ أدنى للوجهة المحلية — وأقل إذا اعتمدتَ الوجهات البعيدة فقط. رخصة JetBackup تُباع لكل عنوان IP للخادم وتُفعَّل عبر بوابة JetApps؛ وهي مستقلة عن رخصة cPanel/WHM.

تثبيت JetBackup عبر WHM

01

التحقق من إصدار cPanel/WHM

سجّل الدخول إلى WHM، انتقل إلى Server Information ولاحظ إصدار cPanel. يستلزم JetBackup 5 الإصدار 110 أو أحدث. إذا كان الإصدار أقدم، شغّل تحديث cPanel أولًا من Upgrade to Latest Version.

02

تشغيل سكربت تثبيت JetApps

عبر SSH بصلاحيات root، نفّذ السكربت الرسمي: curl -fsSL https://repo.jetlicense.com/centOS/jetapps-installer.sh | bash. يثبّت هذا السكربت مدير حزم JetApps المستخدَم لتثبيت جميع منتجات Jet وتحديثها.

03

تثبيت حزمة JetBackup

بعد توفّر JetApps: jetapps --install jetbackup5-cpanel. يهيّئ المثبِّت الاعتماديات ويسجّل الإضافة في WHM ويُشغّل خدمة jetbackupd. تتراوح المدة بين دقيقتين وخمس دقائق حسب سرعة الاتصال.

04

تسجيل الرخصة

في WHM، انتقل إلى JetBackup 5 → Dashboard. إذا لم تُكتشَف الرخصة تلقائيًا، أدخل المفتاح الذي وفّره JetApps أو سجّل عنوان IP للخادم في لوحة عميل JetApps. التحقق فوري؛ بدون رخصة سارية تبقى المهام معطّلة.

05

إعداد أول وجهة نسخ احتياطي

في JetBackup 5 → Backup Destinations، انقر على Add Destination. للبداية اختر Local وحدّد مجلدًا مخصّصًا (مثلًا /backup/jetbackup)، مغايرًا للمجلد الافتراضي في WHM. فعّل خيار Test Connection للتحقق من أن الخدمة تستطيع الكتابة في هذا المجلد.

06

إنشاء أول مهمة نسخ احتياطي

في JetBackup 5 → Backup Jobs، انقر على Create New Job. اختر النوع Accounts (لنسخ حسابات cPanel كاملة)، حدّد الوجهة المُعدَّة في الخطوة السابقة، اضبط الجدول الزمني (مثلًا: يوميًا الساعة 02:00) وحدّد الاستبقاء (7 نسخ يومية). احفظ. ستنطلق أول مهمة في الوقت المجدوَل، أو يمكنك تشغيلها يدويًا عبر Run Now للتحقق من سير العمل.

إعداد وجهات النسخ الاحتياطي

يدعم JetBackup عدة أنواع من الوجهات. يعتمد الاختيار على درجة تحمّلك للأعطال وميزانيتك وعرض النطاق الترددي المتاح.

مقارنة وجهات JetBackup

الوجهةالمزاياالنقاط الجديرة بالانتباه
محلية (نفس الخادم)استعادة سريعة، لا تكلفة شبكةتُفقَد البيانات إذا تعطّل القرص أو الخادم — لا تُستخدم منفردةً في بيئة الإنتاج أبدًا
‏SFTP/SSHمُشفّرة افتراضيًا، متوافقة مع أي خادم Linux، مصادقة بالمفتاحالإنتاجية محدودة بسرعة اتصال SSH؛ هيّئ مفتاحًا مخصّصًا دون وصول shell كامل
‏S3-متوافقة (AWS وWasabi وBackblaze B2)تخزين موضوعي خارج الموقع، استبقاء دقيق، تكلفة متوقّعةتتطلّب حاوية (bucket) وبيانات IAM بصلاحيات `s3:PutObject` و`s3:GetObject` و`s3:ListBucket`
‏FTPسهلة الإعداد على NAS أو الاستضافة المشتركة القديمةغير مُشفّرة افتراضيًا (يُوصى بـ FTPS)؛ تجنّبها إذا كان خادم FTP على الشبكة الفيزيائية ذاتها

الجدولة والاستبقاء

يُميّز JetBackup ثلاث ترددات للمهام: يومية وأسبوعية وشهرية. تقتضي الممارسة الجيدة تكديسها الثلاثة: مهمة يومية نحو الوجهة المحلية (استبقاء 7 أيام)، ومهمة أسبوعية نحو S3 (استبقاء 4 أسابيع)، ومهمة شهرية نحو وجهة أرشفة بعيدة المدى (استبقاء 12 شهرًا). يغطّي هذا التكديس الأخطاء المكتشَفة بسرعة (ملف حُذف أمس) والتلف الصامت المكتشَف بعد أسابيع. الاستبقاءات مستقلة لكل مهمة ولكل وجهة. يطبّق JetBackup قواعد الاستبقاء تلقائيًا عند انتهاء كل مهمة ناجحة: تُحذَف النسخ التي تتجاوز الحدَّ، دائمًا الأقدم أولًا.

عزّز إعدادك منذ البداية

لوجهة SFTP، أنشئ مستخدمًا منظوميًا مخصّصًا بمجلد مقيَّد (chroot) ومفتاح SSH بلا كلمة مرور — لا تُعيد استخدام بيانات root أبدًا. لـ S3، أنشئ سياسة IAM بحدّها الأدنى: s3:PutObject وs3:GetObject وs3:DeleteObject وs3:ListBucket على الحاوية المخصّصة للنسخ الاحتياطي فقط. أخيرًا، جدوِل اختبار استعادة شهريًا: اختر حسابًا تجريبيًا، استعد أرشيفًا عمره أسبوع في مجلد مؤقت وتحقّق من سلامة الملفات. النسخة الاحتياطية غير المختبَرة وعدٌ لا ضمانة.

الاستعادة: الحسابات وقواعد البيانات والبريد الإلكتروني بشكل منفصل

هنا يتميّز JetBackup بوضوح عن النسخ الاحتياطي الأصلي في WHM. في JetBackup 5 → Restore، تختار نوع الكائن المُراد استعادته: Account (حساب كامل)، أو Home Directory (الملفات فقط)، أو Database (قاعدة MySQL مفردة)، أو Email (صندوق بريد أو رسالة واحدة)، أو Cron Jobs، أو DNS Zone، أو SSL Certificate. يمكن توجيه كل استعادة نحو الموقع الأصلي (يُكتَب فوق الموجود) أو نحو مجلد مؤقت للفحص المسبق. من جهة العميل، تُتيح واجهة cPanel قائمة فرعية JetBackup بالخيارات ذاتها، مقيَّدة ببيانات الحساب الخاص: يستطيع المستخدم استرداد ملف حُذف في الساعة الثانية بعد الظهر دون الاتصال بالدعم.

استكشاف الأخطاء وإصلاحها: الأخطاء الشائعة

إليك الأخطاء الأكثر شيوعًا عند نشر JetBackup في بيئة الإنتاج، مع أسبابها وطرق معالجتها.

الأخطاء والحلول

  • مساحة قرص غير كافية عند بدء المهمة: يتحقق JetBackup من المساحة الحرة قبل الانطلاق. إذا امتلأت الوجهة المحلية، تُلغى المهمة مع رسالة Not enough disk space. زِد المساحة أو قلِّل الاستبقاء (نسخ أقل). يتيح خيار Disk Usage Limit في إعدادات الوجهة إيقاف JetBackup قبل بلوغ 100 % من القرص.
  • رفض وجهة SFTP (‏Permission denied): تحقّق من أن المفتاح العام موجود في ~/.ssh/authorized_keys للمستخدم SFTP على الخادم الهدف، وأن صلاحيات مجلد الوجهة هي 700، وأن sshd يقبل مصادقة المفتاح (PubkeyAuthentication yes في sshd_config). استخدم زر Test Connection في JetBackup للتشخيص دون تشغيل مهمة كاملة.
  • وجهة S3: خطأ 403 Forbidden: السبب شبه دائمًا سياسة IAM مقيَّدة أكثر من اللازم أو اسم حاوية غير صحيح. تأكد من امتلاك مفتاح IAM صلاحيات s3:PutObject وs3:ListBucket على arn:aws:s3:::bucket-name/*. لـ Backblaze B2 أو Wasabi، تأكد من ضبط endpoint بشكل صحيح (تختلف النقاط النهائية المتوافقة مع S3 حسب المزوّد والمنطقة).
  • استعادة متوقفة (مهمة في حالة Pending إلى أجل غير مسمى): ربما توقّفت خدمة jetbackupd أو أصابها الحِمل الزائد. تحقق من حالتها بـ systemctl status jetbackupd وأعد تشغيلها عند الحاجة بـ systemctl restart jetbackupd. مهمة سابقة لم تُكتمَل بشكل نظيف قد تحجب قائمة الانتظار — ألغِها يدويًا من لوحة JetBackup.
  • نسخ احتياطية مفقودة بعد ترحيل الخادم: يخزّن JetBackup بيانات وصفية للنسخ الاحتياطية محليًا (/usr/local/jetapps/var/lib/jetbackup5/). بعد الترحيل، لا تتبعه هذه البيانات تلقائيًا. استخدم وظيفة Import Backups لإعادة فهرسة الأرشيفات الموجودة من الوجهات المُعدَّة.

JetBackup في منظومة cPanel/WHM

يندمج JetBackup بسلاسة مع أدوات منظومة cPanel. على خادم CloudLinux، يضمن عزل LVE ألّا تُثقّل مهمة نسخ احتياطي مكثّفة كاهلَ الحسابات الأخرى. يكشف Imunify360 (المزوّد ذاته، CloudLinux) الملفات الخبيثة قبل نسخها احتياطيًا — مفيد لتجنّب أرشفة اختراق. تستفيد حسابات موزّعي WHM من النسخ الاحتياطية التفصيلية ذاتها: يستطيع الموزّع استعادة إعدادات DNS الخاصة به وشهاداته SSL ومهامه الجدولة (cron) بشكل مستقل عن عملائه. وأخيرًا، تبسّط وظيفة نقل الحسابات المُيسَّرة في JetBackup عمليات الترحيل بين خوادم cPanel: بدلًا من الاعتماد على أداة النقل الأصلية في WHM (التي تنسخ مباشرةً دون أرشيف موجود مسبقًا)، يُعيد JetBackup الاستعادة من نسخة احتياطية مخزَّنة خارج الموقع — مما يُقلّل خطر الانقطاع ويُبقي الخادم القديم سليمًا حتى التحقق.

رخص cPanel/WHM لخادمك

شغّل JetBackup على خادم cPanel مرخَّص وتحكّم في نسخك الاحتياطية من الألف إلى الياء. رخصة مرتبطة بعنوان IP الخاص بخادمك، تفعيل فوري.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـ العربية والفرنسية والإنجليزية.