apply a workaround attempt (by using sleep) to systemd 240 event timing causing squash-live to fail [release 049-4mamba;Tue Feb 05 2019]
This commit is contained in:
parent
616689dd5c
commit
4e6ff5a52f
11
dracut-049-squash-live-systemd-240.patch
Normal file
11
dracut-049-squash-live-systemd-240.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- dracut-049.orig/modules.d/99squash-live/squash-liveiso-genrules.sh 2019-01-12 15:30:47.223331178 +0100
|
||||||
|
+++ dracut-049/modules.d/99squash-live/squash-liveiso-genrules.sh 2019-02-05 16:09:07.275266246 +0100
|
||||||
|
@@ -5,7 +5,7 @@
|
||||||
|
DEVLABEL=${root#liveiso:/}
|
||||||
|
DEVLABEL=${DEVLABEL%%/*}
|
||||||
|
{
|
||||||
|
- printf 'ENV{ID_FS_LABEL}=="%s", RUN+="/bin/mkdir /%s", RUN+="/bin/mount /dev/%%k /%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root `/sbin/losetup -f --show %s` /%s"\n' \
|
||||||
|
+ printf 'ENV{ID_FS_LABEL}=="%s", RUN+="/bin/sleep 2", RUN+="/bin/mkdir /%s", RUN+="/bin/mount /dev/%%k /%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root `/sbin/losetup -f --show %s` /%s"\n' \
|
||||||
|
${DEVLABEL} ${DEVLABEL} ${DEVLABEL} ${root#liveiso:} ${DEVLABEL}
|
||||||
|
# printf 'KERNEL=="loop-control", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root `/sbin/losetup -f --show %s` /%s"\n' \
|
||||||
|
# ${root#liveiso:} ${DEVLABEL}
|
@ -1,165 +0,0 @@
|
|||||||
diff -Nru dracut-049.orig/modules.d/99squash-live/module-setup.sh dracut-049/modules.d/99squash-live/module-setup.sh
|
|
||||||
--- dracut-049.orig/modules.d/99squash-live/module-setup.sh 2019-01-12 15:30:47.223331178 +0100
|
|
||||||
+++ dracut-049/modules.d/99squash-live/module-setup.sh 2019-01-12 17:07:25.742047276 +0100
|
|
||||||
@@ -25,6 +25,7 @@
|
|
||||||
inst_hook pre-pivot 20 "$moddir/apply-live-updates.sh"
|
|
||||||
inst_script "$moddir/squash-live-root.sh" "/sbin/squash-live-root"
|
|
||||||
inst_script "$moddir/iso-scan.sh" "/sbin/iso-scan"
|
|
||||||
+ inst_script "$moddir/squash-generator.sh" $systemdutildir/system-generators/dracut-squash-generator
|
|
||||||
# should probably just be generally included
|
|
||||||
inst_rules 60-cdrom_id.rules
|
|
||||||
inst_simple "$moddir/checkisomd5@.service" "/etc/systemd/system/checkisomd5@.service"
|
|
||||||
diff -Nru dracut-049.orig/modules.d/99squash-live/parse-squash-live.sh dracut-049/modules.d/99squash-live/parse-squash-live.sh
|
|
||||||
--- dracut-049.orig/modules.d/99squash-live/parse-squash-live.sh 2019-01-12 15:30:47.223331178 +0100
|
|
||||||
+++ dracut-049/modules.d/99squash-live/parse-squash-live.sh 2019-01-12 18:52:41.335714197 +0100
|
|
||||||
@@ -15,7 +15,7 @@
|
|
||||||
liveroot=$root
|
|
||||||
fi
|
|
||||||
|
|
||||||
-[ "${liveroot%%:*}" = "live" ] || return
|
|
||||||
+[ "${liveroot%%:*}" = "live" ] || return 1
|
|
||||||
|
|
||||||
modprobe -q loop
|
|
||||||
|
|
||||||
@@ -51,7 +51,13 @@
|
|
||||||
live:/*.[Ii][Mm][Gg]|/*.[Ii][Mm][Gg])
|
|
||||||
[ -f "${root#live:}" ] && rootok=1 ;;
|
|
||||||
esac
|
|
||||||
+[ "$rootok" = "1" ] || return 1
|
|
||||||
+
|
|
||||||
info "root was $liveroot, is now $root"
|
|
||||||
|
|
||||||
# make sure that init doesn't complain
|
|
||||||
[ -z "$root" ] && root="live"
|
|
||||||
+
|
|
||||||
+wait_for_dev -n /dev/root
|
|
||||||
+
|
|
||||||
+return 0
|
|
||||||
diff -Nru dracut-049.orig/modules.d/99squash-live/squash-generator.sh dracut-049/modules.d/99squash-live/squash-generator.sh
|
|
||||||
--- dracut-049.orig/modules.d/99squash-live/squash-generator.sh 1970-01-01 01:00:00.000000000 +0100
|
|
||||||
+++ dracut-049/modules.d/99squash-live/squash-generator.sh 2019-01-12 17:08:06.813220403 +0100
|
|
||||||
@@ -0,0 +1,89 @@
|
|
||||||
+#!/bin/sh
|
|
||||||
+
|
|
||||||
+type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
|
|
||||||
+
|
|
||||||
+[ -z "$root" ] && root=$(getarg root=)
|
|
||||||
+
|
|
||||||
+# support legacy syntax of passing liveimg and then just the base root
|
|
||||||
+if getargbool 0 rd.live.image -d -y liveimg; then
|
|
||||||
+ liveroot="live:$root"
|
|
||||||
+fi
|
|
||||||
+
|
|
||||||
+if [ "${root%%:*}" = "live" ] ; then
|
|
||||||
+ liveroot=$root
|
|
||||||
+fi
|
|
||||||
+
|
|
||||||
+[ "${liveroot%%:*}" = "live" ] || exit 0
|
|
||||||
+
|
|
||||||
+case "$liveroot" in
|
|
||||||
+ live:LABEL=*|LABEL=*) \
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="${root//\//\\x2f}"
|
|
||||||
+ root="live:/dev/disk/by-label/${root#LABEL=}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:CDLABEL=*|CDLABEL=*) \
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="${root//\//\\x2f}"
|
|
||||||
+ root="live:/dev/disk/by-label/${root#CDLABEL=}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:UUID=*|UUID=*) \
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="live:/dev/disk/by-uuid/${root#UUID=}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:PARTUUID=*|PARTUUID=*) \
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="live:/dev/disk/by-partuuid/${root#PARTUUID=}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:PARTLABEL=*|PARTLABEL=*) \
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="live:/dev/disk/by-partlabel/${root#PARTLABEL=}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:/*.[Ii][Ss][Oo]|/*.[Ii][Ss][Oo])
|
|
||||||
+ root="${root#live:}"
|
|
||||||
+ root="liveiso:${root}"
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:/dev/*)
|
|
||||||
+ rootok=1 ;;
|
|
||||||
+ live:/*.[Ii][Mm][Gg]|/*.[Ii][Mm][Gg])
|
|
||||||
+ [ -f "${root#live:}" ] && rootok=1 ;;
|
|
||||||
+esac
|
|
||||||
+
|
|
||||||
+[ "$rootok" != "1" ] && exit 0
|
|
||||||
+
|
|
||||||
+GENERATOR_DIR="$2"
|
|
||||||
+[ -z "$GENERATOR_DIR" ] && exit 1
|
|
||||||
+[ -d "$GENERATOR_DIR" ] || mkdir "$GENERATOR_DIR"
|
|
||||||
+
|
|
||||||
+getargbool 0 rd.live.overlay.readonly -d -y readonly_overlay && readonly_overlay="--readonly" || readonly_overlay=""
|
|
||||||
+getargbool 0 rd.live.overlay.overlayfs && overlayfs="yes"
|
|
||||||
+[ -e /xor_overlayfs ] && xor_overlayfs="yes"
|
|
||||||
+[ -e /xor_readonly ] && xor_readonly="--readonly"
|
|
||||||
+ROOTFLAGS="$(getarg rootflags)"
|
|
||||||
+{
|
|
||||||
+ echo "[Unit]"
|
|
||||||
+ echo "Before=initrd-root-fs.target"
|
|
||||||
+ echo "[Mount]"
|
|
||||||
+ echo "Where=/sysroot"
|
|
||||||
+ if [ "$overlayfs$xor_overlayfs" = "yes" ]; then
|
|
||||||
+ echo "What=LiveOS_rootfs"
|
|
||||||
+ if [ "$readonly_overlay$xor_readonly" = "--readonly" ]; then
|
|
||||||
+ ovlfs=lowerdir=/run/overlayfs-r:/run/rootfsbase
|
|
||||||
+ else
|
|
||||||
+ ovlfs=lowerdir=/run/rootfsbase
|
|
||||||
+ fi
|
|
||||||
+ echo "Options=${ROOTFLAGS},${ovlfs},upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
|
||||||
+ echo "Type=overlay"
|
|
||||||
+ _dev=LiveOS_rootfs
|
|
||||||
+ else
|
|
||||||
+ echo "What=/dev/mapper/live-rw"
|
|
||||||
+ [ -n "$ROOTFLAGS" ] && echo "Options=${ROOTFLAGS}"
|
|
||||||
+ _dev=$'dev-mapper-live\\x2drw'
|
|
||||||
+ fi
|
|
||||||
+} > "$GENERATOR_DIR"/sysroot.mount
|
|
||||||
+
|
|
||||||
+mkdir -p "$GENERATOR_DIR/$_dev.device.d"
|
|
||||||
+{
|
|
||||||
+ echo "[Unit]"
|
|
||||||
+ echo "JobTimeoutSec=3000"
|
|
||||||
+ echo "JobRunningTimeoutSec=3000"
|
|
||||||
+} > "$GENERATOR_DIR/$_dev.device.d/timeout.conf"
|
|
||||||
diff -Nru dracut-049.orig/modules.d/99squash-live/squash-live-genrules.sh dracut-049/modules.d/99squash-live/squash-live-genrules.sh
|
|
||||||
--- dracut-049.orig/modules.d/99squash-live/squash-live-genrules.sh 2019-01-12 15:30:47.223331178 +0100
|
|
||||||
+++ dracut-049/modules.d/99squash-live/squash-live-genrules.sh 2019-01-12 18:57:20.519965163 +0100
|
|
||||||
@@ -1,16 +1,18 @@
|
|
||||||
#!/bin/sh
|
|
||||||
-if [ "${root%%:*}" = "live" ]; then
|
|
||||||
+
|
|
||||||
+case "$root" in
|
|
||||||
+ live:/dev/*)
|
|
||||||
{
|
|
||||||
- printf 'KERNEL=="%s", SYMLINK+="live"\n' \
|
|
||||||
- ${root#live:/dev/}
|
|
||||||
- printf 'SYMLINK=="%s", SYMLINK+="live"\n' \
|
|
||||||
- ${root#live:/dev/}
|
|
||||||
- } >> /etc/udev/rules.d/99-live-mount.rules
|
|
||||||
- {
|
|
||||||
- printf 'KERNEL=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root $env{DEVNAME}"\n' \
|
|
||||||
- ${root#live:/dev/}
|
|
||||||
- printf 'SYMLINK=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root $env{DEVNAME}"\n' \
|
|
||||||
- ${root#live:/dev/}
|
|
||||||
+ printf 'KERNEL=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root %s"\n' \
|
|
||||||
+ "${root#live:/dev/}" "${root#live:}"
|
|
||||||
+ printf 'SYMLINK=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/squash-live-root %s"\n' \
|
|
||||||
+ "${root#live:/dev/}" "${root#live:}"
|
|
||||||
} >> /etc/udev/rules.d/99-live-squash.rules
|
|
||||||
- echo '[ -e /dev/root ]' > $hookdir/initqueue/finished/squash.sh
|
|
||||||
-fi
|
|
||||||
+ wait_for_dev -n "${root#live:}"
|
|
||||||
+ ;;
|
|
||||||
+ live:*)
|
|
||||||
+ if [ -f "${root#live:}" ]; then
|
|
||||||
+ /sbin/initqueue --settled --onetime --unique /sbin/squash-live-root "${root#live:}"
|
|
||||||
+ fi
|
|
||||||
+ ;;
|
|
||||||
+esac
|
|
@ -1,6 +1,6 @@
|
|||||||
Name: dracut
|
Name: dracut
|
||||||
Version: 049
|
Version: 049
|
||||||
Release: 3mamba
|
Release: 4mamba
|
||||||
Summary: Generic, modular initramfs generation tool that can be used across various distributions
|
Summary: Generic, modular initramfs generation tool that can be used across various distributions
|
||||||
Group: System/Kernel and Hardware
|
Group: System/Kernel and Hardware
|
||||||
Vendor: openmamba
|
Vendor: openmamba
|
||||||
@ -25,7 +25,7 @@ Patch20: dracut-040-fix-autofs4-ipv6-modules.patch
|
|||||||
Patch21: dracut-040-dmsetup_fix_path.patch
|
Patch21: dracut-040-dmsetup_fix_path.patch
|
||||||
Patch22: dracut-040-add_systemd_journald_socket.patch
|
Patch22: dracut-040-add_systemd_journald_socket.patch
|
||||||
Patch23: dracut-044-bash-4.4.patch
|
Patch23: dracut-044-bash-4.4.patch
|
||||||
Patch24: dracut-049-squash-overlayfs-live-openmamba-2.patch
|
Patch24: dracut-049-squash-live-systemd-240.patch
|
||||||
License: GPL
|
License: GPL
|
||||||
## AUTOBUILDREQ-BEGIN
|
## AUTOBUILDREQ-BEGIN
|
||||||
BuildRequires: glibc-devel
|
BuildRequires: glibc-devel
|
||||||
@ -397,6 +397,9 @@ fi
|
|||||||
#%doc NEWS README README.generic README.kernel README.modules TODO
|
#%doc NEWS README README.generic README.kernel README.modules TODO
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 05 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 049-4mamba
|
||||||
|
- apply a workaround attempt (by using sleep) to systemd 240 event timing causing squash-live to fail
|
||||||
|
|
||||||
* Sun Feb 03 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 049-3mamba
|
* Sun Feb 03 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 049-3mamba
|
||||||
- require ntfs-3g
|
- require ntfs-3g
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user