]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/shared/install.c
load-fragment: ignore ENOTDIR/EACCES errors (#3510)
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 15 Jun 2016 21:02:27 +0000 (17:02 -0400)
committerLennart Poettering <lennart@poettering.net>
Wed, 15 Jun 2016 21:02:27 +0000 (23:02 +0200)
commita1feacf77f324f8af43de7f994372fbc72d58ae9
treedb35ca3d1b19ef0fb225a64b903a5867bf3faf52
parent77d4acf332abd24025f31455f492fa83d97cb2e1
load-fragment: ignore ENOTDIR/EACCES errors (#3510)

If for whatever reason the file system is "corrupted", we want
to be resilient and ignore the error, as long as we can load the units
from a different place.

Arch bug https://bugs.archlinux.org/task/49547.

A user had an ntfs symlink (essentially a file) instead of a directory after
restoring from backup. We should just ignore that like we would treat a missing
directory, for general resiliency.

We should treat permission errors similarly. For example an unreadable
/usr/local/lib directory would prevent (user) instances of systemd from
loading any units. It seems better to continue.
src/core/load-fragment.c
src/shared/install.c