В последнее время ClamAV принялся ругаться при старте системы (не может видеть какой-то записи в DNS). И вправду -- не может, раз уж в resolv.conf написано nameserver 127.0.0.1 , clamd замускается S75, а pdnsd -- S90 Куда-то его надо поближе в начало притащить. S36 какой-нибудь. Steps to Reproduce: 1. Установить pdnsd и clamav 2. Настроить pdnsd 3. Прописать nameserver 127.0.0.1 в /etc/resolv.conf 4. Перезагрузиться Actual Results: Reading CVD header (main.cvd): WARNING: Can't get information about database.clamav.net: Temporary DNS error WARNING: Can't read main.cvd header from database.clamav.net (IP: ) Giving up on database.clamav.net... WARNING: Update failed. Your network may be down or none of the mirrors listed in freshc lam.conf is working.
Андрей, вы, кажется сейчас занимаетесь pdnsd?
Получается, что да...
Знать бы, в какой именно левел его тащить...
Reassigned to new maintainer.
pdnsd 1.2.9a-alt2 до сих пор поставляется только с init-скриптом (chkconfig: 345 90 10 — те же S90), systemd-юнита нет. Под systemd sysv-generator не даёт никакого упорядочивания относительно nss-lookup.target, и сервисы, резолвящие имена (freshclam и т.п.), стартуют с pdnsd параллельно — проблема из репорта воспроизводится по построению. Правильный фикс — нативный юнит с Before=nss-lookup.target / Wants=nss-lookup.target, как у unbound и dnsmasq (systemd-analyze verify проходит, ругается только на отсутствие man в контейнере): alt/pdnsd.service: [Unit] Description=pdnsd caching DNS proxy Documentation=man:pdnsd(8) man:pdnsd.conf(5) # Other services resolve names through us: be up before nss-lookup.target, # like every other local resolver (unbound, dnsmasq, systemd-resolved). After=network.target Before=nss-lookup.target Wants=nss-lookup.target [Service] Type=forking PIDFile=/run/pdnsd.pid ExecStart=/usr/sbin/pdnsd --daemon --config-file /etc/pdnsd.conf -p /run/pdnsd.pid Restart=on-failure [Install] WantedBy=multi-user.target В спек: `install -pD -m644 alt/%name.service %buildroot%_unitdir/%name.service` в %install, `%_unitdir/%name.service` в %files; %post_service/%preun_service уже есть.