From: Lucas Werkmeister Date: Thu, 27 Oct 2016 13:28:10 +0000 (+0200) Subject: systemctl: warn when cat shows changed unit files (#4493) X-Git-Tag: v232~26 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e100155dccaf90521f3e4da5af06736685e9e935;p=thirdparty%2Fsystemd.git systemctl: warn when cat shows changed unit files (#4493) Suggested by @keszybz in #4488. --- diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 35d5c11cc76..d311bbec1a0 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -5272,6 +5272,20 @@ static int cat(int argc, char *argv[], void *userdata) { else puts(""); + if (need_daemon_reload(bus, *name)) + fprintf(stderr, + "%s# Warning: %s changed on disk, the version systemd has loaded is outdated.\n" + "%s# This output shows the current version of the unit's original fragment and drop-in files.\n" + "%s# If fragments or drop-ins were added or removed, they are not properly reflected in this output.\n" + "%s# Run 'systemctl%s daemon-reload' to reload units.%s\n", + ansi_highlight_red(), + *name, + ansi_highlight_red(), + ansi_highlight_red(), + ansi_highlight_red(), + arg_scope == UNIT_FILE_SYSTEM ? "" : " --user", + ansi_normal()); + if (fragment_path) { r = cat_file(fragment_path, false); if (r < 0)