If the script is run from systemd, simply writing to stderr will create more concise output. Otherwise, use logger like before. Use the same logic for other messages printed by the script during runtime, except for error messages related to the invocation. Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> --- misc/mdcheck | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/misc/mdcheck b/misc/mdcheck index df4fd3b..85d79a3 100644 --- a/misc/mdcheck +++ b/misc/mdcheck @@ -37,6 +37,16 @@ # Use "mdcheck --restart" to remove these markers and re-enable checking # all arrays. +# If the script is run from systemd, simply write to the journal on stderr. +# Otherwise, use logger. +log() { + if [[ "$INVOCATION_ID" ]]; then + echo "$@" >&2 + else + logger -p daemon.info "$@" + fi +} + # get device name from sysfs devname() { local dev @@ -82,7 +92,7 @@ if [ "$cont" = yes ]; then exit 1 fi elif [ "$restart" = yes ]; then - echo 'Re-enabling array checks for all arrays' >&2 + log 'Re-enabling array checks for all arrays' rm -f /var/lib/mdcheck/Checked_* exit $? fi @@ -110,7 +120,7 @@ cleanup() { fi echo idle > $sys/md/sync_action cat $sys/md/sync_min > $fl - logger -p daemon.info pause checking $dev at `cat $fl` + log pause checking $dev at `cat $fl` done rm -f "$tmp" } @@ -141,7 +151,7 @@ do checked="${fl/MD_UUID_/Checked_}" if [[ -f "$fl" ]]; then [[ ! -f "$checked" ]] || { - echo "WARNING: $checked exists, continuing anyway" >&2 + log "WARNING: $checked exists, continuing anyway" } start=`cat "$fl"` elif [[ ! -f "$checked" && -z "$cont" ]]; then @@ -157,7 +167,7 @@ do echo $start > $fl echo $start > $sys/md/sync_min echo check > $sys/md/sync_action - logger -p daemon.info mdcheck checking $dev from $start + log mdcheck checking $dev from $start done if [ -z "$endtime" ] @@ -178,7 +188,7 @@ do if [ "`cat $sys/md/sync_action`" != 'check' ] then - logger -p daemon.info mdcheck finished checking $dev + log mdcheck finished checking $dev eval MD_${i}_fl= rm -f "$fl" touch "${fl/MD_UUID_/Checked_}" -- 2.51.0