Am 10.03.22 um 16:11 schrieb Arnaud Rebillout:
Package: systemd
Version: 250.3-2
Severity: normal
Usertags: origin-kali

Dear Maintainer,

Since v250, systemd moved the tmpfiles config for /etc/resolv.conf out
of the file tmpfiles.d/etc.conf and inside a new file
tmpfiles.d/systemd-resolve.conf. Cf:

The Debian package does not install tmpfiles.d/etc.conf, however with
this change it now installs the new file
tmpfiles.d/systemd-resolve.conf. One way to see that:

   +--- (debian stable)
   | # dpkg-query -W | grep '^systemd\s'
   | systemd 247.3-6
   | # grep -rn "resolv\.conf" /usr/lib/tmpfiles.d/

   +--- (debian unstable)
   | # dpkg-query -W | grep '^systemd\s'
   | systemd 250.3-2
   | # grep -rn "resolv\.conf" /usr/lib/tmpfiles.d/
   | /usr/lib/tmpfiles.d/systemd-resolve.conf:10:L! /etc/resolv.conf - - - - 

The consequence of this change is that, on boot, if there's no file
/etc/resolv.conf, systemd creates a symlink /etc/resolv.conf ->
../run/systemd/resolve/stub-resolv.conf. However, since systemd-resolved
is not enabled, it's a dead symlink, and DNS resolution is broken.

Of course, on most systems there's already a file /etc/resolv.conf, so
an upgrade of the systemd package is unlikely to cause an issue. However
the problem manifests itself when building new systems (eg. with debos),
on first boot there is no file /etc/resolv.conf, and this dead symlink
effectively breaks the network.

From what I see, I have the impression that this new file
tmpfiles.d/systemd-resolve.conf is shipped in the package by mistake,
and should simply be removed from the package?

There is
and to some extent relevant as well

Might be, that the only clean solution (at least for Debian) is to split out systemd-resolved into its own subpackage (and move this tmpfile along with it). This sub-package would then enable systemd-resolved by default upon installation.
Of course the upgrade path is a bit tricky, so I shyed away from doing this.


Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to