You are not logged in.

#1 2021-11-09 15:55:48

l1n00x
Member
Registered: 2014-03-11
Posts: 3

[SOLVED] mkinitcpio add_udev_rule: command not found

Greetings everyone!

Since my last full upgrade I'm being dropped to an emergency console when booting and I'm told my root device with UUID=... was not found. I narrowed it down to the lvm2 module not being present in the initramfs image.
I chrooted into the filesystem and ran $(mkinitcpio -p linux) which yielded:

==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 5.14.16-arch1-1
  -> Running build hook: [lvm2]
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/install/lvm2: line 33: add_udev_rule: command not found
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: xhci_pci
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 5.14.16-arch1-1
  -> Running build hook: [lvm2]
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/functions: line 196: add_udev_rule: command not found
/usr/lib/initcpio/install/lvm2: line 33: add_udev_rule: command not found
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: xhci_pci
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful

I also found https://bugs.archlinux.org/task/72598 where it is suggested to upgrade systemd to 249.5-3 when using lvm2 2.03.14-1.

This however did not work since I'm running the latest versions:

Package (3)      Old Version  New Version  Net Change  Download Size

core/lvm2           2.03.14-1   2.03.14-1    0.00 MiB      1.51 MiB
core/mkinitcpio   30-2          30-2           0.00 MiB       0.04 MiB
core/systemd     249.5-3      249.5-3      0.00 MiB       6.45 MiB

Greeting, l1n00x

Last edited by l1n00x (2021-11-10 17:07:56)

Offline

#2 2021-11-10 17:04:17

l1n00x
Member
Registered: 2014-03-11
Posts: 3

Re: [SOLVED] mkinitcpio add_udev_rule: command not found

I solved the issue by changing the position of the lvm2 hook in /etc/mkinitcpio.conf from


HOOKS=(lvm2  base udev ... block filesystems)

to

HOOKS=(base udev ... block lvm2  filesystems)

I don't know why the first order worked until now and why it does not anymore. Anyway, it works again using the new order of hooks!

Last edited by l1n00x (2021-11-10 17:12:18)

Offline

Board footer

Powered by FluxBB