[OE-core] [PATCHv3] mdadm:fix mdmonitor.service
ChenQi
Qi.Chen at windriver.com
Wed Jul 31 02:50:00 UTC 2019
On 07/31/2019 09:50 AM, Zang Ruochen wrote:
> -The original file mdmonitor.service is as follows:
> ...
> |[Service]
> |Environment= MDADM_MONITOR_ARGS=--scan
> |EnvironmentFile=-/run/sysconfig/mdadm
> |ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh
> |ExecStart=/sbin/mdadm --monitor -y $MDADM_MONITOR_ARGS
> ...
> -It has a syntax error and it doesn't work properly,
What is the actual syntax error? Why does it not work properly?
> so add files/0001-Fix-file-mdmonitor.service-syntax-error.patch to fix it.
>
> Signed-off-by: Zang Ruochen <zangrc.fnst at cn.fujitsu.com>
> ---
> ...-file-mdmonitor.service-syntax-error.patch | 49 +++++++++++++++++++
> meta/recipes-extended/mdadm/mdadm_4.1.bb | 1 +
> 2 files changed, 50 insertions(+)
> create mode 100644 meta/recipes-extended/mdadm/files/0001-Fix-file-mdmonitor.service-syntax-error.patch
>
> diff --git a/meta/recipes-extended/mdadm/files/0001-Fix-file-mdmonitor.service-syntax-error.patch b/meta/recipes-extended/mdadm/files/0001-Fix-file-mdmonitor.service-syntax-error.patch
> new file mode 100644
> index 0000000000..a36fed6f9f
> --- /dev/null
> +++ b/meta/recipes-extended/mdadm/files/0001-Fix-file-mdmonitor.service-syntax-error.patch
> @@ -0,0 +1,49 @@
> +From a4a37cc9d91d7129910360914b8b2060139c0307 Mon Sep 17 00:00:00 2001
> +From: Zang Ruochen <zangrc.fnst at cn.fujitsu.com>
> +Date: Tue, 30 Jul 2019 12:44:25 +0800
> +Subject: [PATCH] Fix file mdmonitor.service syntax error
> +
> +-The original file mdmonitor.service is as follows:
> +...
> +|[Service]
> +|Environment= MDADM_MONITOR_ARGS=--scan
> +|EnvironmentFile=-/run/sysconfig/mdadm
> +|ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh
> +|ExecStart=/sbin/mdadm --monitor -y $MDADM_MONITOR_ARGS
> +...
> +-It has a syntax error and it doesn't work properly,
> + so add new file mdmonitor.service to overwrite it.
> +
> +Signed-off-by: Zang Ruochen <zangrc.fnst at cn.fujitsu.com>
> +---
> + systemd/mdmonitor.service | 15 +++++++++------
> + 1 file changed, 9 insertions(+), 6 deletions(-)
> +
> +diff --git a/systemd/mdmonitor.service b/systemd/mdmonitor.service
> +index 3fc4687..bd243b4 100644
> +--- a/systemd/mdmonitor.service
> ++++ b/systemd/mdmonitor.service
> +@@ -6,11 +6,14 @@
> + # (at your option) any later version.
> +
> + [Unit]
> +-Description=MD array monitor
> +-DefaultDependencies=no
> ++Description=Software RAID monitoring and management
> ++ConditionPathExists=/etc/mdadm.conf
Why do above changes? Also, isn't /etc/mdadm.conf always there?
> +
> + [Service]
> +-Environment= MDADM_MONITOR_ARGS=--scan
> +-EnvironmentFile=-/run/sysconfig/mdadm
> +-ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh
> +-ExecStart=BINDIR/mdadm --monitor -y $MDADM_MONITOR_ARGS
> ++Type=forking
> ++PIDFile=/var/run/mdadm/mdadm.pid
Type=forking is not encouraged. Is there any reason we want to use it?
Also, PIDFile is recommended to locate under /run instead of /var/run.
systemd actually automatically modifies the configuration to change
/var/run to /run.
Regards,
Chen Qi
> ++EnvironmentFile=-/etc/sysconfig/mdmonitor
> ++ExecStart=/sbin/mdadm --monitor --scan -y -f --pid-file=/var/run/mdadm/mdadm.pid
> ++
> ++[Install]
> ++WantedBy=multi-user.target
> +--
> +2.20.1
> +
> diff --git a/meta/recipes-extended/mdadm/mdadm_4.1.bb b/meta/recipes-extended/mdadm/mdadm_4.1.bb
> index 74c94f6ecb..c3e15adc71 100644
> --- a/meta/recipes-extended/mdadm/mdadm_4.1.bb
> +++ b/meta/recipes-extended/mdadm/mdadm_4.1.bb
> @@ -22,6 +22,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.xz \
> file://mdadm.init \
> file://0001-mdadm-add-option-y-for-use-syslog-to-recive-event-re.patch \
> file://include_sysmacros.patch \
> + file://0001-Fix-file-mdmonitor.service-syntax-error.patch \
> "
> SRC_URI[md5sum] = "51bf3651bd73a06c413a2f964f299598"
> SRC_URI[sha256sum] = "ab7688842908d3583a704d491956f31324c3a5fc9f6a04653cb75d19f1934f4a"
More information about the Openembedded-core
mailing list