النسخ الاحتياطي لحساب cPanel من سطر الأوامر واسترجاعه
أخذ نسخة احتياطية كاملة لحساب cPanel أو استرجاعه عبر واجهة WHM قد يتعثر مع المواقع الضخمة نتيجة انتهاء مهلة المتصفح (Connection Timeout). يوفر سطر الأوامر عبر أداتي pkgacct و restorepkg أداءً فائق السرعة وموثوقية عالية لإدارة النسخ الاحتياطية مباشرة من بيئة SSH.
أخذ النسخة الاحتياطية باستخدام pkgacct#
يقوم سكربت pkgacct بضغط جميع بيانات الحساب (الملفات، وقواعد بيانات MySQL، ورسائل البريد الإلكتروني، وإعدادات DNS، وشهادات SSL) في أرشيف واحد يبدأ باسم cpmove-USERNAME.tar.gz.
الصيغة الأساسية للأمر:
/usr/local/cpanel/scripts/pkgacct USERNAME [DIRECTORY]
إذا لم تحدد مسار المجلد (DIRECTORY)، سيقوم السكربت تلقائياً بحفظ الملف في قسم /home أو القسم الذي يمتلك أكبر مساحة تخزين متوفرة على الخادم.
خيارات متقدمة مفيدة في pkgacct#
--nocompress: أخذ نسخة دون ضغط الملفات (ينتج ملف بصيغة.tar). هذا الخيار يوفر استهلاك المعالج بشكل ملحوظ ويسرّع العملية على الحسابات التي تتجاوز مساحتها عشرات الجيجابايت.--skiphomedir: نسخ قواعد البيانات ورسائل البريد الإلكتروني والإعدادات مع استثناء مجلد الموقع الرئيسي (home). مفيد إذا كنت تنقل الملفات الكبيرة عبر rsync بشكل منفصل.--dbbackup=TYPE: تحديد نطاق نسخ قواعد البيانات، والقيم المقبولة:all(كل بيانات قواعد البيانات، وهو الافتراضي) أوschema(البنية فقط) أوname(أسماء القواعد فقط).--split: تجزئة الأرشيف الناتج إلى ملفات صغيرة بحجم محدد، مما يسهل تنزيلها أو نقلها عبر شبكات ضعيفة.
مثال لأخذ نسخة احتياطية لحساب siteuser في مسار مخصص مع تخطي الضغط لتوفير استهلاك المعالج:
/usr/local/cpanel/scripts/pkgacct --nocompress siteuser /backup
استرجاع الحساب باستخدام restorepkg#
يقوم سكربت restorepkg بقراءة أرشيف الحساب وإعادة بنائه بالكامل، بما يشمل حسابات FTP وقواعد البيانات وسجلات النطاق وتوجيهات البريد.
الصيغة الرسمية للأمر:
/usr/local/cpanel/scripts/restorepkg [arguments] [filename|username]
عند تمرير اسم المستخدم فقط إلى السكربت، فإنه يبحث تلقائياً عن الأرشيف في المسارات التالية: /home و /home2 و /home3 و /root و /usr و /usr/home و /web. يقبل السكربت عدة صيغ للأرشيف مثل cpmove-USER.tar.gz و cpmove-USER.tar و USER.tar.gz و backup-DATE_USER.tar.gz.
--newuser و --skipaccount وفق توثيق cPanel الرسمي، لأن هذا الدمج قد يُفسد الحساب ويؤدي لفشل استرجاع البيانات بصورة سليمة.خيارات هامة في restorepkg#
--newuser=NEWUSER: استرجاع الأرشيف باسم مستخدم جديد تماماً على الخادم (مثال: نقل بيانات حساب مستخدم قديم إلى مستخدم باسم مختلف).--ip=y|n|IP_ADDRESS: تحديد ما إذا كان الحساب المسترجع سيحصل على عنوان IP مخصص أم IP الخادم المشترك.--skipaccount: يستخدم عند استرجاع البيانات فوق حساب موجود بالفعل دون لمس بيانات حسابه في نظام cPanel.--force: تجاوز الفحوصات والتحذيرات ومتابعة عملية الاسترجاع حتى في حال وجود تعارضات غير حرجة.
مثال لاسترجاع الحساب من مسار الأرشيف مباشرة:
/usr/local/cpanel/scripts/restorepkg /backup/cpmove-siteuser.tar.gz
كيف تتأكد من نجاح الاسترجاع#
- تحقق من ظهور عبارة
Account Restore Completeفي نهاية مخرجات سطر الأوامر. - تأكد من ملكية الملفات داخل مجلد
/home/siteuser/public_htmlبالأمر:
يجب أن تكون مملوكة للمستخدم ومجموعته (siteuser:siteuser) وليس root.ls -la /home/siteuser/public_html - افحص عمل الموقع وقواعد البيانات وسجلات الأخطاء للتأكد من عدم وجود أي جداول مفقودة.



التعليقات