mirror of
https://github.com/systemd/systemd.git
synced 2024-12-22 17:35:35 +03:00
core: taint if /usr is unmerged
9afd5e7b97
introduced a build-time
taint, introduce a runtime one as well, in preparation for
removing support for unmerged-usr in a future release
This commit is contained in:
parent
124d293268
commit
31cd2dd906
7
README
7
README
@ -353,6 +353,13 @@ WARNINGS and TAINT FLAGS:
|
||||
For more information on this issue consult
|
||||
https://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
|
||||
|
||||
systemd will warn if the filesystem is not usr-merged (i.e.: /bin, /sbin
|
||||
and /lib* are not symlinks to their counterparts under /usr). Taint flag
|
||||
'unmerged-usr' will be set when this condition is detected.
|
||||
|
||||
For more information on this issue consult
|
||||
https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge
|
||||
|
||||
systemd requires that the /run mount point exists. systemd also
|
||||
requires that /var/run is a symlink to /run. Taint flag 'var-run-bad'
|
||||
will be set when this condition is detected.
|
||||
|
@ -4377,12 +4377,16 @@ char* manager_taint_string(const Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
const char* stage[11] = {};
|
||||
const char* stage[12] = {};
|
||||
size_t n = 0;
|
||||
|
||||
if (m->taint_usr)
|
||||
stage[n++] = "split-usr";
|
||||
|
||||
_cleanup_free_ char *usrbin = NULL;
|
||||
if (readlink_malloc("/bin", &usrbin) < 0 || !PATH_IN_SET(usrbin, "usr/bin", "/usr/bin"))
|
||||
stage[n++] = "unmerged-usr";
|
||||
|
||||
if (access("/proc/cgroups", F_OK) < 0)
|
||||
stage[n++] = "cgroups-missing";
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user