use /bin/echo, instead of dash builtin echo do not use "sh -c" --- modules.d/95rootfs-block-udev/genrules.sh | 9 ++++----- modules.d/95rootfs-block-udev/install | 1 + 2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/modules.d/95rootfs-block-udev/genrules.sh b/modules.d/95rootfs-block-udev/genrules.sh index d4e226c..0b42483 100755 --- a/modules.d/95rootfs-block-udev/genrules.sh +++ b/modules.d/95rootfs-block-udev/genrules.sh @@ -1,15 +1,14 @@ resume=$(getarg resume=) && ! getarg noresume && [ -b "$resume" ] && { - # parsing the output of ls is Bad, but until there is a better way... ( - echo -e 'KERNEL=="'${resume#/dev/}'", RUN+="/bin/sh -c \047 echo %M:%m > /sys/power/resume \047 "' - echo -e 'SYMLINK=="'${resume#/dev/}'", RUN+="/bin/sh -c \047 echo %M:%m > /sys/power/resume \047 "' + /bin/echo -e 'KERNEL=="'${resume#/dev/}'", RUN+="/bin/echo %M:%m > /sys/power/resume"' + /bin/echo -e 'SYMLINK=="'${resume#/dev/}'", RUN+="/bin/echo %M:%m > /sys/power/resume"' ) >> /etc/udev/rules.d/99-resume.rules } ( - echo -e 'KERNEL=="'${root#/dev/}'", RUN+="/bin/sh -c \047 mount '$fstype' -o '$rflags' '$root' '$NEWROOT' \047 " ' - echo -e 'SYMLINK=="'${root#/dev/}'", RUN+="/bin/sh -c \047 mount '$fstype' -o '$rflags' '$root' '$NEWROOT' \047 " ' + echo 'KERNEL=="'${root#/dev/}'", RUN+="/bin/mount '$fstype' -o '$rflags' '$root' '$NEWROOT'" ' + echo 'SYMLINK=="'${root#/dev/}'", RUN+="/bin/mount '$fstype' -o '$rflags' '$root' '$NEWROOT'" ' ) >> /etc/udev/rules.d/99-mount.rules diff --git a/modules.d/95rootfs-block-udev/install b/modules.d/95rootfs-block-udev/install index 641e7df..3b02232 100755 --- a/modules.d/95rootfs-block-udev/install +++ b/modules.d/95rootfs-block-udev/install @@ -1,3 +1,4 @@ #!/bin/sh +dracut_install echo inst_hook pre-udev 10 "$moddir/parse-root-opts.sh" inst_hook pre-udev 20 "$moddir/genrules.sh"