Squid w OpenWrt: błąd walidacji UCI przed uruchomieniem
Prześledź komunikat Squida w OpenWrt “validation failed” aż do warstwy uruchamiania UCI, zanim zmienisz natywną konfigurację Squida.
Pakiet Squid w OpenWrt może odrzucić swoją konfigurację UCI jeszcze przed uruchomieniem polecenia Squid. Dlatego ogólny komunikat “validation failed” ze skryptu init nie jest wystarczającym powodem, by edytować squid.conf.
Przeczytaj poprzedzające go komunikaty na poziomie pola i porównaj je z regułami walidacji zainstalowanego pakietu. Na przykład implementacja uruchamiania deklaruje http_port jako typ portu. Końcowa spacja może spowodować niepowodzenie tego sprawdzenia, mimo że cyfry wyglądają poprawnie. Nieudany wynik walidacji zatrzymuje callback przed zarejestrowaniem polecenia.
Dla sekcji, która naprawdę nazywa się squid, sprawdź wąską wartość:
uci get squid.squid.http_port
Użyj nazwy sekcji obecnej w instalacji. Źródłem pakietu jest zwykle /etc/config/squid; jeśli brakuje komunikatów, sprawdź, czy istnieje i czy jest czytelne. Inne wydanie może udostępniać inne pola.
Po walidacji UCI podążaj za natywnym plikiem przekazywanym do Squida. Nakładka może wybrać jawny plik albo wygenerować go z obsługiwanych danych wejściowych. Edycja nieużywanego pliku nie zmieni wygenerowanego wyniku.
Natywna składnia, pomocnicze programy, uprawnienia i kontrole nasłuchu pojawiają się później. Zgłoś albo „UCI odrzuciło http_port”, albo „Squid odrzucił wybraną natywną konfigurację” wraz z dowodem. Usunięcie konfiguracji pakietu tylko po to, by uciszyć pierwszy błąd, może uniemożliwić nakładce wykonanie jej zadania.