إنتقل إلى المحتوى الرئيسي

التحديثات والنسخ الاحتياطية

تخصّ هذه الصفحة التثبيتات على خادمك. تُشغَّل كل الأوامر من مجلد التثبيت.

النسخ الاحتياطي​

أداتان تكمّل إحداهما الأخرى:

نسخ التطبيقسكربت النسخ على الخادم
أينإعدادات النظام ← النسخ الاحتياطيةمجلد التثبيت
متىكل ليلة تلقائيًا، وعند الطلبعند تشغيله أو جدولته
المحتوىبيانات التسيير وملفات التطبيقكل شيء: بيانات التسيير، حسابات المستخدمين، الملفات، الترخيص، الإعدادات
الاستعمالاسترجاع بيانات التسييرإعادة بناء التثبيت أو نقله أو الاحتياط قبل أي تدخل

نسخ التطبيق مشروحة في الإدارة. يتناول ما تبقى من هذا القسم سكربت الخادم، الذي يعمل والتطبيق قيد التشغيل: فهو يقرأ فقط.

sh scripts/backup-stack.sh [مجلد-الوجهة]

دون تحديد وجهة، يُنشئ مجلدًا باسم backup-<التاريخ>_<الوقت> يحتوي على:

  • قاعدتي البيانات (التسيير والهويات)، في أرشيفات نسخ احتياطي؛
  • البيانات الدائمة: المستندات المالية، الملفات المرفوعة، الترخيص وبيانات التطبيق؛
  • نسخة من الإعدادات (.env)؛
  • بيانًا يصف التثبيت المنسوخ (الإصدار، المكوّنات).
النسخة الاحتياطية تحتوي على أسرار

تحتوي نسخة .env على كلمات مرور قواعد البيانات والمفاتيح التقنية. احفظ النسخ في مكان محمي.

ممارسات جيدة​

  • جدوِل النسخ مرة يوميًا على الأقل: cron على Linux، وجدولة المهام على Windows.
  • انسخها خارج الخادم. النسخة التي تبقى على القرص الذي تحميه تضيع معه.
  • راقب مساحة القرص: النسخ والصور وقواعد البيانات تتقاسم القرص نفسه. احذف النسخ القديمة وفق سياسة الاحتفاظ لديك.
  • جرّب الاستعادة من حين لآخر على جهاز آخر: لا تكون النسخة موثوقة إلا بعد استعادتها بنجاح.

التحديث​

يُحدَّث Nadigit IMS بمثبّت الحزمة الجديدة، موجَّهًا إلى التثبيت القائم.

  1. فكّ ضغط الحزمة الجديدة بجانب التثبيت، وليس فوقه أبدًا.
  2. من مجلد الحزمة الجديدة، شغّل أولًا محاكاة تعرض ما سيتغيّر دون تعديل أي شيء:
./install.sh --upgrade /opt/nadigit-ims --dry-run
./install.sh --upgrade /opt/nadigit-ims
  1. ثم شغّل التحديث الفعلي (الأمر الثاني).

ما يقوم به التحديث​

  1. يرفض الرجوع إلى الوراء: تُرفض الحزمة الأقدم من الإصدار العامل.
  2. يحمّل صور الإصدار الجديد.
  3. ينسخ كل شيء احتياطيًا قبل لمس أي شيء: قواعد البيانات والبيانات الدائمة والإعدادات، في backups/pre-upgrade-<من>-to-<إلى>-<التاريخ>/.
  4. يستبدل ملفات الحزمة مع الاحتفاظ بكل ملف مستبدَل، ويدمج الإعدادات: تُحفظ إجاباتك وأسرارك وإعداداتك، ولا يتغيّر إلا ما يعدّله الإصدار الجديد.
  5. يشغّل الإصدار الجديد وينتظر كل مكوّن. يُرحَّل مخطط قاعدة البيانات تلقائيًا عند التشغيل.
  6. يشغّل التشخيص الكامل.

تعرض كل خطوة معرّفًا من UPG-01 إلى UPG-07، مشروحًا في TROUBLESHOOTING.md وفي استكشاف أخطاء التثبيت.

قاعدتان يجب احترامهما​

  • يبقى التثبيت في مجلده. جزء من البيانات مرتبط باسم المجلد، والترخيص مرتبط بمعرّف الخادم المحفوظ في تلك البيانات. نقل المجلد أو تغيير اسمه يجعل التطبيق يبدأ على بيانات فارغة.
  • لا تتغيّر بيانات اعتماد قواعد البيانات أبدًا. تُحدَّد عند إنشاء القواعد، وتغييرها يدويًا يقطع التطبيق عن بياناته. يحتفظ التحديث بها.

الرجوع إلى الإصدار السابق​

  • فشل قبل تشغيل الإصدار الجديد: لم يتغيّر شيء في التطبيق العامل، وتُعاد الملفات المستبدَلة تلقائيًا.
  • فشل بعد التشغيل: يعرض المثبّت الأوامر الدقيقة للعودة إلى الإصدار السابق. وهي تستعيد الإعدادات والملفات المستبدَلة المحفوظة في install/upgrade-<التاريخ>/previous/.
  • قاعدة بيانات رحّلها الإصدار الجديد: يرفض الإصدار السابق العمل على قاعدة مُرحَّلة. يجب حينها استعادة القاعدتين من النسخة المأخوذة قبل التحديث؛ والإجراء مشروح في TROUBLESHOOTING.md (UPG-04). عند الشك، اتصل بدعم Nadigit قبل التصرّف.

انظر أيضًا​