إزالة تحذير قفل الملفات من Nextcloud باستخدام Redis

لإزالة تحذير Nextcloud بشأن قفل الملفات للمعاملات، تأكد أولاً من تفعيل خاصية القفل، ثم قم بتهيئة خادم خلفي دائم متوافق مع Redis مثل Redis أو Valkey. في الخوادم الصغيرة، قد يستخدم Nextcloud خادم قفل قاعدة البيانات الخاص به افتراضيًا؛ أما في خوادم الإنتاج أو أحمال العمل المشتركة، فيُفضل استخدام Redis للقفل لأنه يقلل من حركة بيانات القفل إلى قاعدة البيانات. لا تُسند أقفال الملفات إلى Memcached: يُحذر Nextcloud من أن القيم المخزنة مؤقتًا قد تختفي بشكل غير متوقع.

اختر نظام القفل الخلفي الذي يناسب خادمك

يحمي قفل الملفات التفاعلي عمليات الملفات من الكتابة المتضاربة، ويمكنه تحرير القفل عند انقطاع عملية التحميل أو أي عملية أخرى. كما يساعد على منع تلف الملفات أثناء التشغيل العادي، بما في ذلك العمل على الملفات المشتركة ووحدات التخزين الخارجية. لا يمنع هذا القفل شخصين من تعديل المستند نفسه في الوقت نفسه، ولا يوفر مؤشرات للتواجد؛ ولكنه يتحكم في عمليات الحفظ المتزامنة. راجع وثائق قفل الملفات التفاعلي في Nextcloud 35 .

  • نظام إدارة قواعد البيانات: يستخدم Nextcloud خاصية قفل قواعد البيانات افتراضيًا. هذا يغني عن إضافة خدمة أخرى، وقد يكون مناسبًا لتثبيت شخصي صغير، لكن قفل قواعد البيانات يزيد من الحمل. إذا كنت تزيل تحذيرًا فقط على خادم قليل الاستخدام، فتأكد أولًا من عدم تعطيل خاصية القفل صراحةً.
  • Redis مع phpredis: خيار مناسب للخوادم الفردية القائمة والخوادم المجمعة. يتطلب خادمًا متوافقًا مع Redis وامتداد PHP Redis، بالإضافة إلى إعدادات اتصال متوافقة في Nextcloud.
  • ذاكرة التخزين المؤقت للقيم المفتاحية مع Redis أو Valkey: متوفرة بدءًا من Nextcloud 34.0.2. تستخدم هذه الذاكرة مكتبة Nextcloud المدمجة، لذا فهي لا تتطلب إضافة PHP Redis. يُعد هذا مفيدًا في حال عدم توفر الإضافة، مع العلم أن Nextcloud تُشير إلى أن خادم القيم المفتاحية البعيد قد يُضيف عبئًا على الشبكة.
  • Memcached: يمكنه توفير التخزين المؤقت الموزع، ولكنه غير مناسب لأقفال الملفات المعاملاتية لأن قيم التخزين المؤقت قد تُحذف. تجنب استخدامه في memcache.locking...

بالنسبة لخادم منزلي صغير، قد يكون تأمين قاعدة البيانات كافيًا في حال عدم وجود تحذيرات بشأن التأمين أو ضغط على قاعدة البيانات. اختر Redis أو Valkey للخوادم المشغولة، أو خوادم التطبيقات المتعددة، أو عندما ترغب في معالجة تأمينات الملفات خارج قاعدة البيانات. توصي إرشادات التخزين المؤقت للذاكرة الحالية لـ Nextcloud 35 باستخدام APCu للتخزين المؤقت المحلي وRedis للتأمين في عمليات النشر الشائعة على خادم واحد. يجب أن تستخدم جميع عُقد الويب المُجمّعة نفس نقطة نهاية Redis أو Valkey أو نفس المجموعة.

تحقق مما إذا كان القفل معطلاً

ابحث عن ملف إعدادات Nextcloud النشط، والذي يوجد عادةً config/config.phpفي مجلد تثبيت Nextcloud. قم بعمل نسخة احتياطية منه قبل تعديله. ابحث عن ملفي الإعدادات `conlocking` filelocking.enabledو` memcache.lockingconlocking.org`. يُفعّل مرجع الإعدادات خاصية القفل افتراضيًا؛ إذا وجدت قيمة `false` صريحة، فغيّرها إلى `true` أو احذف هذا التجاوز.

'filelocking.enabled' => true,

لا تُضِف نسخة ثانية من مفتاح موجود. يجب أن تحتوي مصفوفات إعدادات PHP على قيمة واحدة فعّالة لكل إعداد. إذا كنت تستخدم حاوية أو لوحة تحكم استضافة مُدارة، فقم بإجراء التغييرات من خلال آلية التكوين المدعومة لضمان استمرارها بعد التحديثات أو إعادة النشر. يُشير مرجع تحذيرات إدارة Nextcloud 35 إلى تحذير القفل ويربط بمتطلبات الواجهة الخلفية.

قم بتكوين قفل Redis على خادم واحد

في أنظمة Debian أو Ubuntu، عادةً ما تكون أسماء الحزم على النحو التالي redis-server: `<اسم الحزمة php-redis>` و `<اسم الحزمة>`؛ استخدم حزم التوزيعة الخاصة بك وتأكد من مطابقة وحدة PHP مع إصدار PHP المستخدم من قِبل خادم الويب. في حال استخدام واجهة Redis الخلفية التقليدية، قم بتثبيت خدمة Redis وتشغيلها، وتأكد من تفعيل إضافة PHP Redis لواجهة برمجة تطبيقات الويب (SAPI). لا يضمن وجود وحدة PHP تعمل عبر سطر الأوامر فقط قدرة PHP-FPM أو Apache على تحميلها.

أضف تفاصيل نظام القفل وتفاصيل الاتصال إلى config.phpالمصفوفة الموجودة. يفترض هذا المثال أن Redis يعمل على نفس الجهاز، ويستمع على المنفذ 6379 في localhost، ويمكن الوصول إليه من خلال عملية Nextcloud PHP.

'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
    'host' => 'localhost',
    'port' => 6379,
    'timeout' => 0.0,
],

قم بتعيين بيانات المصادقة إذا كان خادم Redis الخاص بك يتطلبها. تجنب تعريض Redis للإنترنت العام؛ واقتصر استخدامه على المضيف أو الشبكة الخاصة، وقم بتكوين قواعد المصادقة وجدار الحماية. بالنسبة لمقبس Unix، استخدم مسار المقبس كمضيف Redis والمنفذ 0، وتأكد من أن مستخدم خادم الويب يمكنه الوصول إلى هذا المقبس. لا تنسخ إعدادات localhost إلى بيئة متعددة الخوادم إلا إذا كان Redis محليًا بالفعل ويتم مشاركته باستمرار؛ إذ يجب أن تخاطب جميع عُقد تطبيق Nextcloud نفس الواجهة الخلفية.

عندما يكون ملحق PHP Redis غير متوفر

في Nextcloud 34.0.2 أو أحدث، يمكن لـ KeyValueCache الاتصال بـ Redis أو Valkey دون الحاجة إلى تثبيت إضافة PHP منفصلة. قم بتهيئة الواجهة الخلفية ومخزن القيم المفتاحية كما يلي، مع استبدال المضيف وأي بيانات اعتماد بقيم بيئتك:

'memcache.locking' => '\OC\Memcache\KeyValueCache',
'memcache.kvstore' => [
    'server' => [
        'host' => 'localhost',
        'port' => 6379,
    ],
],

لا تقم بتهيئة كل من Redis وKeyValueCache كمزودين متنافسين للتأمين. اتبع توثيق Nextcloud الخاص ببيانات الاعتماد، وTLS، والمآخذ، وSentinel، أو بنية المجموعة، بدلاً من محاولة تطبيق مثال خادم واحد بشكل عشوائي.

أعد تشغيل الجهاز وتحقق من الإصلاح.

أعد تشغيل الخدمة المتوافقة مع Redis إذا قمت بتغيير إعداداتها، ثم أعد تشغيل خادم الويب أو عملية PHP-FPM إذا قمت بتثبيت أو تفعيل إضافة PHP. تحقق من حالة الخدمة باستخدام اسم الخدمة الخاص بتوزيعتك؛ على سبيل المثال، systemctl status redis-serverفي العديد من أنظمة Debian أو Ubuntu. تأكد من أن الخدمة نشطة وأن عملية PHP قادرة على الاتصال. يجب أن تستخدم عمليات نشر الحاويات اسم خدمة Redis على شبكة الحاويات، وليس localhost إلا إذا كانت كلتا الخدمتين تشتركان في مساحة اسم الشبكة.

سجّل الدخول إلى Nextcloud كمسؤول، ثمّ حدّث صفحة الإدارة. سيختفي تحذير قفل الملفات عند توفّر الواجهة الخلفية المُهيّأة وتحميل الإعدادات. حمّل ملفًا تجريبيًا، ثمّ نزّله، ثمّ قم بمزامنته، ثمّ راجع سجلات Nextcloud وPHP إذا ظهر خطأ في اتصال Redis أو في الأذونات. يشير التحذير المتبقي عادةً إلى خطأ إملائي، أو مفتاح تهيئة مُكرّر، أو إضافة PHP/SAPI خاطئة، أو اتصال شبكة محظور، أو أذونات مقبس غير صحيحة، أو واجهة خلفية غير قابلة للوصول. صحّح هذا السبب تحديدًا بدلًا من تعطيل القفل.

للحصول على خيارات خاصة بالنشر، راجع المراجع الرسمية ذات الإصدارات قبل تغيير البنية: قفل الملفات المعاملاتية ، والتخزين المؤقت للذاكرة، وتكوين Redis/Valkey ، ومعلمات التكوين .

اترك تعليقاً

إزالة تحذير قفل الملفات من Nextcloud باستخدام Redis

قم بتمكين قفل الملفات الموثوق به في Nextcloud، واختر الواجهة الخلفية المناسبة Redis أو Valkey، وتحقق من إزالة التحذير دون المخاطرة بتغييرات الملفات المتزامنة.

ما يلزم للحصول على تصنيف أمان A+ من Nextcloud

ما يلزم للحصول على تصنيف أمان A+ من Nextcloud

قم بإصلاح نتائج فحص Nextcloud الشائعة من خلال التحديثات الحالية، و HTTPS و HSTS، والثقة الدقيقة في الخادم الوكيل العكسي، وعمليات التحقق من الخادم العام.

تفعيل تشفير جانب الخادم في Nextcloud مع قياس التأثير

قم بتكوين Nextcloud SSE للتخزين الذي يحتاج إليه، وقم بحماية مفاتيح التشفير، وقم بقياس تأثير النقل ووحدة المعالجة المركزية قبل تشفير الملفات الموجودة.

أضف خاصية البحث النصي الكامل في Elasticsearch إلى Nextcloud

قم بتوصيل خاصية البحث عن الملفات في Nextcloud بـ Elasticsearch، وقم بفهرسة محتويات المستندات، واختر إعدادًا يناسب احتياجات الخادم والأمان لديك.

تحديد سياسة انتهاء صلاحية موثوقة للملفات المحذوفة من Nextcloud

تحديد سياسة انتهاء صلاحية موثوقة للملفات المحذوفة من Nextcloud

قم بتكوين Nextcloud لإزالة الملفات المحذوفة بعد فترة احتفاظ محددة، وجدولة مهام الخلفية بشكل موثوق، وتجنب الأوامر التي تقوم بمسح سلة المهملات الخاصة بكل مستخدم.

تحذير: مسح فهارس قاعدة البيانات المفقودة في Nextcloud

تحذير: مسح فهارس قاعدة البيانات المفقودة في Nextcloud

قم بتشغيل أداة إصلاح OCC الخاصة بـ Nextcloud بأمان، واستعرض تغييرات قاعدة البيانات، وتحقق من سبب استمرار التحذير.

ارفع حد تحميل الملفات على Nextcloud إلى ما يزيد عن 2 جيجابايت

ارفع حد تحميل الملفات على Nextcloud إلى ما يزيد عن 2 جيجابايت

السماح بتحميل ملفات أكبر حجماً عبر متصفح Nextcloud عن طريق ضبط إعدادات PHP أو Nginx أو Apache والتخزين المؤقت والمهلة الزمنية - والتحقق من الحد الذي يمنع الملف.

إزالة تحذير ذاكرة PHP الخاص بـ Nextcloud على خادم الويب

قم بتعيين حد ذاكرة PHP الذي يستخدمه Nextcloud فعليًا، وأعد تشغيل الخدمة الصحيحة، وتأكد من إعداد 512 ميجابايت في نظرة عامة على المسؤول.

قم بتوصيل حاوية تخزين متوافقة مع S3 بوحدة تخزين خارجية في Nextcloud

قم بتثبيت حاوية تخزين كائنات متوافقة في Nextcloud باستخدام الواجهة الخلفية S3 الخاصة بها، مع نقطة النهاية الصحيحة، وبيانات الاعتماد، ونطاق الوصول، وخطوات التحقق.

انقل بيانات Nextcloud إلى محرك أقراص خارجي دون التأثير على مساحة التخزين

انقل بيانات Nextcloud إلى محرك أقراص خارجي دون التأثير على مساحة التخزين

قم بنقل دليل بيانات Nextcloud الخاص بنظام Linux بأمان إلى محرك أقراص خارجي باستخدام تركيب UUID ثابت، ووضع الصيانة، ونسخة تم التحقق منها، والرابط الرمزي للمسار الأصلي.