mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-02-01 03:42:13 +00:00
52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
|
#!/bin/sh
|
||
|
# Begin $rc_base/init.d/udev_retry
|
||
|
|
||
|
### BEGIN INIT INFO
|
||
|
# Provides: udev_retry
|
||
|
# Required-Start: udev
|
||
|
# Should-Start: $local_fs
|
||
|
# Required-Stop:
|
||
|
# Should-Stop:
|
||
|
# Default-Start: sysinit
|
||
|
# Default-Stop:
|
||
|
# Short-Description: Replays failed uevents and creates additonal devices.
|
||
|
# Description: Replays any failed uevents that were skipped due to
|
||
|
# slow hardware initialization, and creates those needed
|
||
|
# device nodes
|
||
|
# X-LFS-Default-Start: S45
|
||
|
# X-LFS-Default-Stop:
|
||
|
# X-LFS-Provided-By: LFS
|
||
|
### END INIT INFO
|
||
|
|
||
|
. /lib/lsb/init-functions
|
||
|
|
||
|
MESSAGE="Retrying failed uevents, if any..."
|
||
|
|
||
|
case "${1}" in
|
||
|
start)
|
||
|
|
||
|
# From Debian: "copy the rules generated before / was mounted
|
||
|
# read-write":
|
||
|
for file in /dev/.udev/tmp-rules--*; do
|
||
|
dest=${file##*tmp-rules--}
|
||
|
[ "$dest" = '*' ] && break
|
||
|
cat $file >> /etc/udev/rules.d/$dest
|
||
|
rm -f $file
|
||
|
done
|
||
|
|
||
|
# Re-trigger the failed uevents in hope they will succeed now
|
||
|
/sbin/udevadm trigger --retry-failed
|
||
|
|
||
|
# Now wait for udevd to process the uevents we triggered
|
||
|
/sbin/udevadm settle
|
||
|
evaluate_retval standard
|
||
|
;;
|
||
|
|
||
|
*)
|
||
|
echo "Usage ${0} {start}"
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
# End $rc_base/init.d/udev_retry
|