X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ffstab-generator%2Ffstab-generator.c;h=0336888b0207e63aaa4e61448f5c8aee9074e50d;hb=f366d58dc1fe51b300167446597750d29687c3c5;hp=fa0d3f735e24efe0b6ca991689091646f23a7077;hpb=94192cdaf652c9717f15274504ed315126c07a93;p=elogind.git diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c index fa0d3f735..0336888b0 100644 --- a/src/fstab-generator/fstab-generator.c +++ b/src/fstab-generator/fstab-generator.c @@ -152,6 +152,11 @@ static int add_fsck(FILE *f, const char *what, const char *where, const char *ty if (passno == 0) return 0; + if (!is_device_path(what)) { + log_warning("Checking was requested for \"%s\", but it is not a device.", what); + return 0; + } + if (type && !streq(type, "auto")) { int r; const char *checker; @@ -171,7 +176,7 @@ static int add_fsck(FILE *f, const char *what, const char *where, const char *ty lnk = strappenda(arg_dest, "/" SPECIAL_LOCAL_FS_TARGET ".wants/systemd-fsck-root.service"); mkdir_parents_label(lnk, 0755); - if (symlink("systemd-fsck-root.service", lnk) < 0) { + if (symlink(SYSTEM_DATA_UNIT_PATH "/systemd-fsck-root.service", lnk) < 0) { log_error("Failed to create symlink %s: %m", lnk); return -errno; } @@ -183,7 +188,7 @@ static int add_fsck(FILE *f, const char *what, const char *where, const char *ty return log_oom(); fprintf(f, - "Requires=%s\n" + "RequiresOverridable=%s\n" "After=%s\n", fsck, fsck);