1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-08 11:27:32 +03:00

nspawn: suppress warning when /etc/resolv.conf is a valid symlink

In such a case let's suppress the warning (downgrade to LOG_DEBUG),
under the assumption that the user has no config file to update in its
place, but a symlink that points to something like resolved's
automatically managed resolve.conf file.

While we are at it, also stop complaining if we cannot write /etc/resolv.conf
due to a read-only disk, given that there's little we could do about it.
This commit is contained in:
Lennart Poettering 2015-06-18 19:42:59 +02:00
parent ff609b8ecd
commit 68a313c592

View File

@ -1538,7 +1538,16 @@ static int setup_resolv_conf(const char *dest) {
r = copy_file("/etc/resolv.conf", where, O_TRUNC|O_NOFOLLOW, 0644, 0);
if (r < 0) {
log_warning_errno(r, "Failed to copy /etc/resolv.conf to %s: %m", where);
/* If the file already exists as symlink, let's
* suppress the warning, under the assumption that
* resolved or something similar runs inside and the
* symlink points there.
*
* If the disk image is read-only, there's also no
* point in complaining.
*/
log_full_errno(IN_SET(r, -ELOOP, -EROFS) ? LOG_DEBUG : LOG_WARNING, r,
"Failed to copy /etc/resolv.conf to %s: %m", where);
return 0;
}