FS#51709 - [filesystem] use the systemd-suggested nsswitch.conf
Attached to Project:
Arch Linux
Opened by Dave Reisner (falconindy) - Saturday, 05 November 2016, 15:48 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 26 March 2017, 22:24 GMT
Opened by Dave Reisner (falconindy) - Saturday, 05 November 2016, 15:48 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 26 March 2017, 22:24 GMT
|
Details
systemd's nss-* manpages suggest an /etc/nsswitch.conf which
takes advantage of the various modules distributed by
systemd. We should distribute this as the default, as our
current file is a bit tired. As a notable difference beyond
just the system modules, the 'compat' module is a bit more
flexible than simply 'files' which we use in a few places --
differences are documented in nsswitch.conf(5).
|
This task depends upon
Closed by Sébastien Luttringer (seblu)
Sunday, 26 March 2017, 22:24 GMT
Reason for closing: Implemented
Sunday, 26 March 2017, 22:24 GMT
Reason for closing: Implemented
Restoring the "hosts: files mymachines resolve [!UNAVAIL=return] dns myhostn" line back to previous "hosts: files dns myhostname" solves the problem though this is not the version suggested by systemd.
Looking into this a little way I'm still confused. Specifically, the [!UNAVAIL=return] action should mean that if the resolve plugin has a status other than UNAVAIL, then it should return its result directly. The default action for when the status is UNAVAIL is to continue to the next plugin. That means that the resolve plugin must have status either success, notfound or tryagain. I guess for whatever reason it's notfound and this result gets returned directly, short circuiting any further plugins.
I'm trying to find ways to debug this. I've got a couple of Raspberry Pis and a BananaPi running Arch using systemd-networkd and systemd-resolved to configure a normal (192.168.. local network) home wired network. This change to nsswitch.conf appears to break name resolution for me. The only configuration I have is a file in /etc/systemd/network/ to set up the ethernet adaptor using DHCP.
I'll try some more testing to see if I can pin this down.
One thing to note is that I'm running dnsmasq on my network to do both DHCP and DNS for the connected machines.
FS#52143closed as duplicate here as notice that systemd-suggested nsswitch.conf also breaks user lookups in postfix.1) My laptop has systemd-resolved disabled and resolve dns. Not to mention that «hostname -i» works.
2) Postfix on my servers (which have systemd-resolved enabled) are still delivering mails to user, so I imagine lookups are working.
Is there still a need to keep that open?
FS#52354. And I really cannot understand what sense it makes to *not* try DNS queries if libnss_resolve.so fails. Is there a very good reason for this?Edit: It felt good to complain, but it appears the bug might actually be with gnupg. Ignore the above. :)