Bug 17398

Summary: При обновлений удаляется /e/resolv.conf.dnsmasq
Product: Sisyphus Reporter: Evgenii Terechkov <evg>
Component: dnsmasqAssignee: Mikhail Efremov <sem>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: critical    
Priority: P2 CC: erthad, mike, sem
Version: unstable   
Hardware: all   
OS: Linux   

Description Evgenii Terechkov 2008-09-30 19:35:39 MSD
При обновлений dnsmasq произошло следующее (спасибо etckeeper):

==============================================================================
/etc#git-diff 'HEAD^' resolv.conf.dnsmasq
diff --git a/resolv.conf.dnsmasq b/resolv.conf.dnsmasq
deleted file mode 100644
index 11d3eee..0000000
--- a/resolv.conf.dnsmasq
+++ /dev/null
@@ -1,5 +0,0 @@
-domain orionnet.ru
-search orionnet.ru
-nameserver 80.65.20.1
-nameserver 80.65.16.1
-nameserver 62.213.32.130
/etc#git-log H -9
commit 0883055f96fa3552f3883e3e338c642d5e5a9abf
Author: Evgenii Terechkov <evg@altlinux.org>
Date:   Tue Sep 30 09:22:50 2008 +0800

    committing changes in /etc after apt run
    
    Package changes:
    -dnsmasq-2.41-alt3
    +dnsmasq-2.45-alt2

==============================================================================

т.е., прошлая версия пакета создаёт файл из resolv.conf и при обновлений аккуратно затирает за собой единственный источник DNS-имён. Как это должно было работать, непонятно.

Вскрылось при отключений питания сервера, на котором недавно обновлися dnsmasq. После загрузки резолвинг не работал.
Comment 1 Evgenii Terechkov 2008-10-01 19:23:17 MSD
Уточнение: после перезагрузки подошёл к машине с неработающим резолвингом, а там есть и /etc/resolv.conf и /etc/resolv.conf.dnsmasq - с namaserver-ом 127.0.0.1, бинарно идентичные.
Comment 2 evseev 2008-10-02 15:09:41 MSD
Кажется, понял, в чём дело.
В спеке за удаление и обновление отвечает следующий код:
%preun
%preun_service %name
%__rm -f %_sysconfdir/*.dnsmasq 2>&1   # fixme! should be more elegant..

Проблема в том, что /usr/sbin/preun_service не останавливает сервис,
если речь идёт об обновлении.
Соответственно, /etc/resolv.conf.dnsmasq
не переписывается обратно в /etc/resolv.conf

Скорее всего, исправление должно сводиться к...
test "$RPM_INSTALL_ARG1" = "0" && %__rm -f %_sysconfdir/*.dnsmasq 2>&1
Comment 3 Evgenii Terechkov 2008-10-02 17:33:04 MSD
Не понимаю, как это исправление будет способствовать переписыванию resolv.conf.dnsmasq в resolv.conf (и нужно ли это вообще).

Может, проще не гонять оригинальный resolv.conf (тоже, кстати, берущийся динамически из конфигураций /etc/net) туда-сюда, а просто не трогать его?
Comment 4 Michael Shigorin 2009-06-16 23:35:35 MSD
BTW сейчас в моде, чтоб /etc/resolv.conf занимался openresolv, насколько понимаю.  Документации по прикручиванию не встречал, явно придётся дёргать майнтейнера.

Илья, Вы сейчас занимаетесь dnsmasq?
Comment 5 Mikhail Gusarov 2009-06-16 23:37:31 MSD
"openresolv ships with helpers for  ISC BIND,  PowerDNS Recursor and  dnsmasq."

Открутили, что ли?
Comment 6 Mikhail Efremov 2009-06-17 00:41:09 MSD
(In reply to comment #5)
> "openresolv ships with helpers for  ISC BIND,  PowerDNS Recursor and  dnsmasq."
> 
> Открутили, что ли?

Скорее не прикручивали. Чтобы openresolv работал в связке с dnsmasq надо прописать одинаковые значения conf-file и resolv-file в их конфигах. И запретить dnsmasq вообще трогать /etc/resolv.conf, он даже читать его не должен. Как проверю, наконец, как это работает - повешу отдельным багом.
Comment 7 Michael Shigorin 2009-06-17 23:21:53 MSD
(In reply to comment #6)
> Как проверю, наконец, как это работает - повешу отдельным багом.
Можно сразу оформлять NMU, в письме
Message-ID: <7011dfc80906161629i1d184cf6rece26943c24badd1@mail.gmail.com>
Илья сообщил, что:

---
Я не возражаю против обновлений.
У меня сейчас нет возможности заниматься Альтом.
---

Стояла копия в community@, но там письма от неподписчиков довольно давно и на модерацию не становятся.
Comment 8 Evgenii Terechkov 2009-06-18 05:27:15 MSD
2 sem@: меня в CC: этой новой баги, если можно.
Comment 9 Mikhail Efremov 2009-06-19 16:41:51 MSD
> 2 sem@: меня в CC: этой новой баги, если можно.

Новую багу тогда уж вешать не буду, сразу готовлю обновление dnsmasq для работы с openresolv. Этот баг закроется как следствие.
Comment 10 Mikhail Efremov 2009-06-22 22:21:42 MSD
* Mon Jun 22 2009 Mikhail Efremov <sem@altlinux> 2.46-alt1.1

- NMU:
- fno-strict-aliasing compiler option is added.
- fixed pointer cast.
- do not start dnsmasq by default.
- init script: condreload is added.
- resolvconf support (closes: #17398, #19369).
Comment 11 Evgenii Terechkov 2009-06-23 15:29:58 MSD
Поскольку dnsmasq уже не использую, то закрываю как есть, пусть кто-нибудь другой проверит.