#!/bin/sh -e PREREQS="" prereqs() { echo "$PREREQS"; } case "$1" in prereqs) prereqs exit 0 ;; esac # Stop udevd, we'll miss a few events while we run init, but we catch up # Wait for current workers to stop (at most for a minute to avoid deadlocks) # otherwise there will be lock files left under /run/ (see: #1056564) udevadm settle --timeout=60 udevadm control --exit # move the /dev tmpfs to the rootfs; fall back to util-linux mount that does # not understand -o move mount -n -o move /dev "${rootmnt:?}/dev" || mount -n --move /dev "${rootmnt}/dev" # create a temporary symlink to the final /dev for other initramfs scripts if command -v nuke >/dev/null; then nuke /dev else # shellcheck disable=SC2114 rm -rf /dev fi ln -s "${rootmnt}/dev" /dev