Squid روی OpenWrt: شکست اعتبارسنجی UCI پیش از راهاندازی
پیام “validation failed” اسکوئید روی OpenWrt را پیش از ویرایش پیکربندی بومی اسکوئید تا لایه راهاندازی UCI دنبال کنید.
بستهٔ Squid در OpenWrt میتواند پیکربندی UCI خود را پیش از آنکه حتی فرمان Squid را اجرا کند رد کند. بنابراین پیام کلی “validation failed” از اسکریپت init دلیل کافی برای ویرایش squid.conf نیست.
پیامهای سطح فیلد را که پیش از آن میآیند بخوانید و با قواعد اعتبارسنجی بستهٔ نصبشده تطبیق دهید. برای نمونه، پیادهسازی راهاندازی http_port را بهعنوان نوع درگاه اعلام میکند. یک فاصلهٔ انتهایی میتواند آن بررسی را شکست دهد در حالی که ارقام درست به نظر میرسند. نتیجهٔ ناموفق اعتبارسنجی callback را پیش از ثبت فرمان متوقف میکند.
برای بخشی که واقعاً squid نام دارد، مقدار محدود را بررسی کنید:
uci get squid.squid.http_port
از نام بخشی که در نصب وجود دارد استفاده کنید. منبع بسته معمولاً /etc/config/squid است؛ اگر پیامها نیستند، وجود و خوانا بودن آن را بررسی کنید. نسخهٔ دیگری ممکن است فیلدهای متفاوتی نشان دهد.
پس از اعتبارسنجی UCI، فایل بومیای را که به Squid داده میشود دنبال کنید. پوشش ممکن است فایلی صریح برگزیند یا یکی را از ورودیهای پشتیبانیشده بسازد. ویرایش فایلی که استفاده نمیشود نمیتواند نتیجهٔ ساختهشده را تغییر دهد.
نحو بومی، ابزارهای کمکی، مجوزها و بررسیهای شنونده بعداً میآیند. یا «UCI http_port را رد کرد» یا «Squid پیکربندی بومی انتخابشده را رد کرد» را همراه با شواهدش گزارش کنید. حذف پیکربندی بسته فقط برای خاموش کردن نخستین خطا میتواند پوشش را از انجام کارش بازدارد.