diff options
Diffstat (limited to 'src/initrd/common.sh')
-rw-r--r-- | src/initrd/common.sh | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/initrd/common.sh b/src/initrd/common.sh index c38fb77..17c9359 100644 --- a/src/initrd/common.sh +++ b/src/initrd/common.sh | |||
@@ -36,6 +36,21 @@ force_grok_block() | |||
36 | udevadm trigger --subsystem-match=block --action=add | 36 | udevadm trigger --subsystem-match=block --action=add |
37 | } | 37 | } |
38 | 38 | ||
39 | samizdat_install_udev_rules() | ||
40 | { | ||
41 | local target=/etc/udev/rules.d/z00_blockdev_mountroot.rules | ||
42 | [ -e "$target" ] && return | ||
43 | mkdir -p /etc/udev/rules.d | ||
44 | echo 'ACTION=="add", SUBSYSTEM=="block", RUN+="/bin/grok-block $env{DEVNAME}"' \ | ||
45 | > "$target" | ||
46 | |||
47 | # 'udevadm trigger --action=add' does not work here; need to restard udevd | ||
48 | # first. not sure why | ||
49 | samizdat_restart_udev | ||
50 | |||
51 | udevadm trigger -s block --action add | ||
52 | } | ||
53 | |||
39 | bootmenu() | 54 | bootmenu() |
40 | { | 55 | { |
41 | local do_trigger="$1" no_panic="$2" | 56 | local do_trigger="$1" no_panic="$2" |