1
0
mirror of https://github.com/systemd/systemd.git synced 2025-01-31 05:47:30 +03:00

nspawn: fix condition for mounting resolv.conf ()

The file /usr/lib/systemd/resolv.conf can be stale, it does not tell us
whether or not systemd-resolved is running or not.
So check for /run/systemd/resolve/resolv.conf as well, which is created
at runtime and hence is a better indication.
This commit is contained in:
Christian Hesse 2016-11-09 04:01:26 +01:00 committed by Zbigniew Jędrzejewski-Szmek
parent af964954c6
commit 7debb05dbe

@ -1309,7 +1309,8 @@ static int setup_resolv_conf(const char *dest) {
/* Fix resolv.conf, if possible */
where = prefix_roota(dest, "/etc/resolv.conf");
if (access("/usr/lib/systemd/resolv.conf", F_OK) >= 0) {
if (access("/run/systemd/resolve/resolv.conf", F_OK) >= 0 &&
access("/usr/lib/systemd/resolv.conf", F_OK) >= 0) {
/* resolved is enabled on the host. In this, case bind mount its static resolv.conf file into the
* container, so that the container can use the host's resolver. Given that network namespacing is
* disabled it's only natural of the container also uses the host's resolver. It also has the big