Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.2
mdadm
0004-mdcheck-add-systemd-unit-files-to-run-mdch...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0004-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch of Package mdadm
From 4199d3c629c14866505923d19fa50017ee92d2e1 Mon Sep 17 00:00:00 2001 From: NeilBrown <neilb@suse.com> Date: Wed, 5 Dec 2018 16:35:00 +1100 Subject: [PATCH 3/5] mdcheck: add systemd unit files to run mdcheck. Git-commit: 4199d3c629c14866505923d19fa50017ee92d2e1 Patch-mainline: mdadm-4.1+ References: bsc#1115407 Having the mdcheck script is not use if is never run. This patch adds systemd unit files so that it can easily be run on the first Sunday of each month for 6 hours, then on every subsequent morning until the check is finished. The units still need to be enabled with systemctl enable mdcheck_start.timer The timer will only actually be started when an array which might need it becomes active. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> --- Makefile | 5 ++++- systemd/mdcheck_continue.service | 18 ++++++++++++++++++ systemd/mdcheck_continue.timer | 13 +++++++++++++ systemd/mdcheck_start.service | 17 +++++++++++++++++ systemd/mdcheck_start.timer | 15 +++++++++++++++ 5 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 systemd/mdcheck_continue.service create mode 100644 systemd/mdcheck_continue.timer create mode 100644 systemd/mdcheck_start.service create mode 100644 systemd/mdcheck_start.timer diff --git a/Makefile b/Makefile index 2767ac68396d..afb62cc6e3a6 100644 --- a/Makefile +++ b/Makefile @@ -276,7 +276,10 @@ install-udev: udev-md-raid-arrays.rules udev-md-raid-assembly.rules udev-md-raid install-systemd: systemd/mdmon@.service @for file in mdmon@.service mdmonitor.service mdadm-last-resort@.timer \ - mdadm-last-resort@.service mdadm-grow-continue@.service; \ + mdadm-last-resort@.service mdadm-grow-continue@.service \ + mdcheck_start.timer mdcheck_start.service \ + mdcheck_continue.timer mdcheck_continue.service \ + ; \ do sed -e 's,BINDIR,$(BINDIR),g' systemd/$$file > .install.tmp.2 && \ $(ECHO) $(INSTALL) -D -m 644 systemd/$$file $(DESTDIR)$(SYSTEMD_DIR)/$$file ; \ $(INSTALL) -D -m 644 .install.tmp.2 $(DESTDIR)$(SYSTEMD_DIR)/$$file ; \ diff --git a/systemd/mdcheck_continue.service b/systemd/mdcheck_continue.service new file mode 100644 index 000000000000..592c60798f82 --- /dev/null +++ b/systemd/mdcheck_continue.service @@ -0,0 +1,18 @@ +# This file is part of mdadm. +# +# mdadm is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. + +[Unit] +Description=MD array scrubbing - continuation +ConditionPathExistsGlob = /var/lib/mdcheck/MD_UUID_* + +[Service] +Type=oneshot +Environment= MDADM_CHECK_DURATION='"6 hours"' +EnvironmentFile=-/run/sysconfig/mdadm +ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh +ExecStart=/usr/share/mdadm/mdcheck --continue --duration $MDADM_CHECK_DURATION + diff --git a/systemd/mdcheck_continue.timer b/systemd/mdcheck_continue.timer new file mode 100644 index 000000000000..3ccfd7858a3f --- /dev/null +++ b/systemd/mdcheck_continue.timer @@ -0,0 +1,13 @@ +# This file is part of mdadm. +# +# mdadm is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. + +[Unit] +Description=MD array scrubbing - continuation + +[Timer] +OnCalendar= 1:05:00 + diff --git a/systemd/mdcheck_start.service b/systemd/mdcheck_start.service new file mode 100644 index 000000000000..812141bb5c9a --- /dev/null +++ b/systemd/mdcheck_start.service @@ -0,0 +1,17 @@ +# This file is part of mdadm. +# +# mdadm is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. + +[Unit] +Description=MD array scrubbing +Wants=mdcheck_continue.timer + +[Service] +Type=oneshot +Environment= MDADM_CHECK_DURATION='"6 hours"' +EnvironmentFile=-/run/sysconfig/mdadm +ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh +ExecStart=/usr/share/mdadm/mdcheck --duration $MDADM_CHECK_DURATION diff --git a/systemd/mdcheck_start.timer b/systemd/mdcheck_start.timer new file mode 100644 index 000000000000..64807362d649 --- /dev/null +++ b/systemd/mdcheck_start.timer @@ -0,0 +1,15 @@ +# This file is part of mdadm. +# +# mdadm is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. + +[Unit] +Description=MD array scrubbing + +[Timer] +OnCalendar=Sun *-*-1..7 1:00:00 + +[Install] +WantedBy= mdmonitor.service -- 2.14.0.rc0.dirty
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor