Squid ב-OpenWrt: כשל אימות UCI לפני ההפעלה
עקבו אחר הודעת “validation failed” של Squid ב-OpenWrt עד שכבת ההפעלה של UCI לפני עריכת התצורה המקורית של Squid.
חבילת 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 דחה את התצורה המקורית שנבחרה” עם הראיות. הסרת תצורת החבילה רק כדי להשתיק את השגיאה הראשונה עלולה למנוע מהעטיפה לעשות את עבודתה.