لماذا يتعذر على Squid فتح ملف السجل
افحص كل جزء من المسار وميّز بين اجتياز الأدلة والإلحاق بملف موجود وإنشاء ملف جديد قبل توسيع الصلاحيات.
access_log stdio:/srv/squid-logs/access.log logformat=squidبالنسبة إلى مثال مسجّل stdio في Squid 6 أعلاه، افحص المسار دون تعديله:
namei -l /srv/squid-logs/access.log| العملية | الصلاحيات المطلوبة |
|---|---|
| اجتياز مسار الأدلة الأب | صلاحية البحث/التنفيذ في كل دليل |
| الإلحاق بسجل موجود | اجتياز المسار وصلاحية الكتابة في الملف |
| إنشاء سجل غير موجود | أيضًا صلاحية الكتابة في الدليل الأب المباشر |
قارن بتات الصلاحيات وقوائم ACL بهوية الجهة التي تكتب فعليًا. تتم الكتابة في stdio عبر Squid؛ أما التسجيل بنمط daemon فيستخدم عملية مساعدة. وقد تتطلب إعادة التسمية أو الاستبدال أثناء تدوير السجلات صلاحيات أخرى على الأدلة.
أصلح الجزء المسؤول عن رفض الوصول. لا تحتاج إلى صلاحية الكتابة في كل الأدلة الأعلى لمجرد اجتيازها. إذا كانت الصلاحيات العادية كافية، فافحص رفض سياسة أمان الخدمة بدلًا من توسيع الوصول تكراريًا إلى شجرة التثبيت أو التخزين المؤقت.