حل مشكلة تعليق وضع الصيانة في Nextcloud مع OCC
قم بمسح صفحة صيانة Nextcloud العالقة بأمان باستخدام OCC، وتحقق مما إذا كانت الترقية غير مكتملة، وتأكد من أن المثيل جاهز للمستخدمين.
عندما يُبلغ Kopano عن "فشل الاتصال بخادم التخزين" أثناء تسليم البريد، فهذا يعني أن وكيل التسليم (dagent) لم يتمكن من إنشاء اتصال بنقطة نهاية خادم Kopano المُخصصة له. لا تُحدد الرسالة وحدها ما إذا كان السبب هو توقف الخادم، أو مسار مقبس خاطئ، أو أذونات وصول خاطئة، أو مشكلة في الاتصال عن بُعد. ابدأ بفحص نقطة النهاية المُكوّنة والخادم نفسه؛ وتجنب تغيير بيانات صندوق البريد أو مساحة تخزين المرفقات أثناء تشخيص فشل الاتصال.
تصف وثائق إدارة Kopano برنامج dagent بأنه المكون المسؤول عن توصيل البريد من وكيل نقل البريد (MTA) إلى مستخدم Kopano. ويشير مرجع تكوين Kopano Core 8.0 إلى server_socketأن الاتصال بخادم Kopano والوثائق file:///var/run/kopano/server.sockهو الإعداد الافتراضي. قد تختلف إصدارات الحزم ومديرو الخدمات والتكوينات المحلية، لذا يُرجى التحقق من القيم على جهازك المضيف قبل تطبيق أي مثال.
تأكد مما إذا كان الخطأ يؤثر على جميع المستلمين أم على مسار تسليم واحد فقط. إذا فشلت جميع عمليات التسليم الواردة دفعة واحدة، فتحقق من توفر الخادم ونقطة النهاية. إذا فشلت الرسائل الموجهة عبر مضيف أو عقدة واحدة فقط، فقارن dagent.cfgمسار تلك العقدة وشبكتها بعقدة عاملة. احتفظ بنسخة من الرسالة الفاشلة أو مدخل قائمة الانتظار أثناء الاختبار؛ فقد تؤدي المحاولات المتكررة إلى إخفاء أول طابع زمني مفيد في السجلات.
في نظام يستخدم systemd، افحص وحدات Kopano وسجل الخادم حول وقت التسليم:
systemctl list-units 'kopano*'
systemctl status kopano-server --no-pager
journalctl -u kopano-server -b --no-pager
إذا كان اسم الوحدة في حزمتك مختلفًا، فاستخدم الاسم الموضح list-units. يشير عدم نشاط الخادم أو إعادة تشغيله المتكررة إلى وجود مشكلة في جانب الخادم. راجع سجل الخادم بحثًا عن أخطاء سابقة في بدء التشغيل أو قاعدة البيانات أو التكوين أو التخزين؛ لن تؤدي إعادة تشغيل الوكيل إلى إصلاح خادم Kopano غير المتاح. يوثق دليل المسؤول إدارة خدمة Kopano، ولكن أسماء الوحدات الدقيقة تختلف باختلاف الحزمة.
اقرأ ملف التكوين النشط، والذي يكون عادةً ملف التكوين الرئيسي /etc/kopano/dagent.cfg، وابحث عن server_socketالإدخال التالي:
grep -nE '^[[:space:]]*server_socket[[:space:]]*=' /etc/kopano/dagent.cfg
بالنسبة لمقبس يونكس محلي، قارن الإعداد مع المقبس الذي أنشأه الخادم قيد التشغيل فعليًا. القيمة الشائعة في وثائق Kopano Core هي:
server_socket = file:///var/run/kopano/server.sock
تأكد من وجود الملف وأنه عبارة عن مقبس:
ls -l /var/run/kopano/server.sock
test -S /var/run/kopano/server.sock && echo "Socket exists"
إذا اختلف المسار المُهيأ عن المسار الفعلي، فصحح server_socketالقيمة إلى نقطة النهاية التي يستخدمها تثبيتك عمدًا. لا تنسخ الإعداد الافتراضي دون تدقيق إذا كان الخادم مُهيأً لاستخدام دليل تشغيل آخر، أو عنوان مجموعة، أو بروتوكول نقل عن بُعد. كما يوثق مرجع كوبانو إعدادات مفتاح SSL لبروتوكولات HTTPS؛ يجب أن تتطابق صيغة نقطة النهاية البعيدة ومتطلبات الشهادة مع إعدادات الخادم المُثبّت لديك.
نعم. يمكن أن يكون هناك منفذ اتصال (socket) ولكنه لا يزال غير قابل للوصول للمستخدم الذي يُشغّل برنامج dagent. ابحث عن مستخدم العملية الفعلي من وحدة الخدمة أو العملية ذات الصلة، ثم افحص منفذ الاتصال وكل دليل رئيسي. على سبيل المثال:
namei -l /var/run/kopano/server.sock
stat -c '%A %U:%G %n' /var/run/kopano/server.sock
قارن أذونات المالك والمجموعة وتصفح الدليل مع هوية وقت تشغيل dagent. تشير مرجعية تكوين Kopano dagent إلى إمكانية تكوين المستخدم والمجموعة اللذين يتم تشغيلهما، مع كون Kopano هو الافتراضي الموثق؛ قد يؤدي التغليف أو التجاوزات إلى تغيير ذلك. إذا كان systemd قيد الاستخدام، فراجع الوحدة وأي تجاوزات قبل تغيير الملكية.
systemctl cat kopano-dagent
systemctl show kopano-dagent -p User -p Group
قم بتعديل الأذونات فقط لمنح حساب الخدمة المقصود الوصول اللازم. لا تستخدم هذه chmod 777الميزة على المقبس أو دليله، فقد يؤدي ذلك إلى كشف نقطة نهاية خدمة ذات امتيازات لمستخدمين محليين غير ذوي صلة. قد تُعاد إنشاء أدلة وقت التشغيل عند بدء التشغيل، لذا قم بإصلاح تكوين الخدمة أو الحزمة التي تُنشئها بدلاً من الاعتماد على تغيير يدوي مؤقت للأذونات.
في بيئة متعددة الخوادم أو بيئة عالية التوفر، تأكد من أن برنامج dagent يستخدم عنوان الخادم أو المجموعة المتاح لعقدته. يُوضح دليل Kopano للتوفر العالي ضرورة تنسيق نقاط نهاية الخدمة وتوجيه تسليم Postfix بين العقد. قارن server_socketعنوان مستمع الخادم، وعنوان DNS أو عنوان المجموعة، وقواعد جدار الحماية، وأي إعدادات TLS على كلا الجانبين. لا يُثبت نجاح الاتصال بمقبس محلي على إحدى العقد إمكانية الوصول إلى نقطة نهاية بعيدة من عقدة أخرى.
اختبر الاتصال باستخدام نفس نقطة النهاية ومسار الشبكة المُهيأين لـ dagent. بالنسبة للنقل عن بُعد، تحقق من حالة المُستمع وسياسة جدار الحماية على مضيف Kopano، ثم افحص سجلات dagent والخادم بحثًا عن رفض الاتصال أو انتهاء المهلة أو أخطاء TLS. لا تفتح المُستمع على نطاق واسع للإنترنت كحل سريع للمشاكل؛ قيّد الوصول إلى مضيفي البريد والتطبيقات الموثوق بهم.
بعد تفعيل الخادم وتوافق نقطة النهاية والأذونات، قم بإجراء اختبار مُتحكم به باستخدام صندوق بريد اختبار مُخصص. يُوضح دليل مسؤول Kopano كيفية استدعاء dagent مباشرةً باستخدام حساب مستخدم على تلك العقدة، ثم إدخال موضوع الرسالة ونصها. فيما يلي نمط اختبار أساسي:
kopano-dagent -v -c /etc/kopano/dagent.cfg testuser
Subject: Kopano connection test
This is a controlled delivery test.
[Press Ctrl-D to finish input]
استبدل testuserالمستخدم الحالي بحساب مستخدم Kopano محلي، واتبع صيغة الأوامر الخاصة بإصدارك المُثبّت. يتجاوز هذا الاختبار بعض عمليات توجيه البريد الإلكتروني وسلوك قائمة الانتظار؛ ويُؤكد التسليم المباشر الناجح جزءًا مفيدًا من المسار، ولكنه لا يُثبت أن Postfix أو أي خادم بريد إلكتروني آخر يُوجّه البريد بشكل صحيح. تحقق من مُخرجات dagent وسجلات Kopano وصندوق بريد الاختبار قبل إعادة محاولة إرسال رسائل الإنتاج المُدرجة في قائمة الانتظار.
أعد تشغيل المكون الذي طرأ تغيير على إعداداته فقط، وذلك بعد حفظ نسخة سليمة من إعداداته. إذا قمت بتغيير dagent.cfgإعدادات وحدة dagent، فأعد تشغيلها عند تشغيل dagent كخدمة مستمرة. في بعض عمليات التثبيت، يتم تشغيل dagent لكل عملية تسليم على حدة، لذا قد لا تكون هناك وحدة dagent قيد التشغيل لفترة طويلة لإعادة تشغيلها. إذا قمت بتغيير server.cfgإعدادات مستمع الخادم، فاتبع إجراءات التغيير الخاصة بموقعك لخادم Kopano. توضح وثائق مرجع dagent الخيارات المحددة فقط على أنها قابلة لإعادة التحميل بواسطة HUP؛ لا تفترض أن كل تغيير في المقبس أو هوية وقت التشغيل يتم تنفيذه عبر إشارة.
يرجى التأكد من جميع ما يلي قبل إغلاق البلاغ:
إذا نجحت عملية التسليم المباشر ولكن البريد عبر خادم البريد (MTA) لا يزال يفشل، فابحث في بروتوكول نقل الرسائل المحلية (LMTP) الخاص بخادم البريد، ومسار المقبس، والتوجيه، بدلاً من تغيير مساحة تخزين صندوق بريد Kopano. إذا كان الخادم ونقطة النهاية يعملان بشكل صحيح، ولكن لا يزال برنامج dagent يُبلغ عن فشل الاتصال، فاجمع الطوابع الزمنية المطابقة، والقيمة المُعدّلة server_socket، وحالة الخدمة، والسجلات ذات الصلة، وقدمها إلى مسؤول حزمة البرامج أو مسؤول Kopano. احذف كلمات المرور، والمفاتيح الخاصة، ومحتوى الرسائل، والعناوين الشخصية قبل مشاركة بيانات التشخيص.
المراجع: دليل مسؤول Kopano Core ؛ مرجع تكوين وكيل Kopano ؛ دليل التوافر العالي لـ Kopano ؛ التكوينات الخاصة لـ Kopano واستكشاف الأخطاء وإصلاحها .
قم بمسح صفحة صيانة Nextcloud العالقة بأمان باستخدام OCC، وتحقق مما إذا كانت الترقية غير مكتملة، وتأكد من أن المثيل جاهز للمستخدمين.
قم بتشخيص أخطاء تأجيل البريد الصادر في Zimbra على المنفذ 25. تحقق من قائمة الانتظار، وMX DNS، وجدران الحماية، وحظر الموفر، وقم بتكوين مرحل SMTP معتمد.
قم بإعداد خادم منزلي خفيف الوزن من نوع Matrix على Raspberry Pi 4 باستخدام Conduit و Docker و NGINX و HTTPS وعناصر التحكم في التسجيل والاتحاد والفحوصات.
أضف خوادم Jitsi Videobridge إلى نشر Jitsi Meet مشترك، وقم بتكوين التسجيل والوصول إلى جدار الحماية، وتحقق من اختيار الجسر، وتعرف على متى تكون هناك حاجة إلى Octo.
قم بتثبيت شهادة SSL تجارية على Zimbra بأمان: أنشئ طلب توقيع الشهادة (CSR)، وقم ببناء سلسلة CA، وتحقق من المفتاح والشهادة، وقم بنشرها، وأعد تشغيل الخدمات، وتأكد من HTTPS.
قم بتغيير شعار BigBlueButton الافتراضي، وأضف شعارًا إلى الاجتماعات الفردية، وافهم متى تتطلب العلامة التجارية الأوسع للواجهة إصدارًا مخصصًا للعميل.
تعرف على كيفية تحديد سجلات التدقيق القديمة لـ Zimbra وأرشفتها وضغطها وإزالتها، ومتى يجب تجنب اقتطاع ملف audit.log، وكيفية التحقق من استعادة مساحة القرص والتسجيل بشكل صحيح.
قم باستكشاف أخطاء اتصال خادم تخزين Kopano dagent وإصلاحها عن طريق التحقق من حالة الخادم، ومقبس الخادم، وأذونات مقبس Unix، والمستمعين عن بعد، واختبارات التسليم المتحكم بها.
قم بإصلاح أخطاء مهلة قفل الملفات في ownCloud عن طريق تحديد الأقفال المعاملاتية، ونقل تخزين القفل إلى Redis، والتحقق من المجموعات، وإعادة الاختبار بأمان.
قم باستكشاف أخطاء Matrix Synapse المتعلقة بـ OOM أثناء /sync عن طريق فحص ضغط الذاكرة، وضبط ذاكرة التخزين المؤقت بعناية، وعزل المزامنة الأولية، ومراقبة العمال.