summaryrefslogtreecommitdiff
path: root/xi/init.d/modules
diff options
context:
space:
mode:
authordavidovski <david@davidovski.xyz>2022-03-29 23:36:22 +0100
committerdavidovski <david@davidovski.xyz>2022-03-29 23:36:22 +0100
commitdf88860947686a5e6507fc5d60ff33eac1158c6b (patch)
treed1dc7f2f003b08afb6d45f7170d7a0dd353060d3 /xi/init.d/modules
parent33d239ecb3d66db2b005afbe68a7029c3f2d2ee0 (diff)
using sysvinit system bootscriptsHEADmaster
Diffstat (limited to 'xi/init.d/modules')
-rw-r--r--xi/init.d/modules82
1 files changed, 82 insertions, 0 deletions
diff --git a/xi/init.d/modules b/xi/init.d/modules
new file mode 100644
index 0000000..3ef4cec
--- /dev/null
+++ b/xi/init.d/modules
@@ -0,0 +1,82 @@
+#!/bin/sh
+########################################################################
+# Begin modules
+#
+# Description : Module auto-loading script
+#
+# Authors : Zack Winkles
+# DJ Lucas - dj@linuxfromscratch.org
+# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
+#
+# Version : LFS 7.0
+#
+########################################################################
+
+### BEGIN INIT INFO
+# Provides: modules
+# Required-Start: mountvirtfs
+# Should-Start:
+# Required-Stop:
+# Should-Stop:
+# Default-Start: S
+# Default-Stop:
+# Short-Description: Loads required modules.
+# Description: Loads modules listed in /etc/sysconfig/modules.
+# X-LFS-Provided-By: LFS
+### END INIT INFO
+
+# Assure that the kernel has module support.
+[ -e /proc/modules ] || exit 0
+
+. /lib/lsb/init-functions
+
+case "${1}" in
+ start)
+ # Exit if there's no modules file or there are no
+ # valid entries
+ [ -r /etc/sysconfig/modules ] || exit 0
+ egrep -qv '^($|#)' /etc/sysconfig/modules || exit 0
+
+ log_info_msg "Loading modules:"
+
+ # Only try to load modules if the user has actually given us
+ # some modules to load.
+
+ while read module args; do
+
+ # Ignore comments and blank lines.
+ case "$module" in
+ ""|"#"*) continue ;;
+ esac
+
+ # Attempt to load the module, passing any arguments provided.
+ modprobe ${module} ${args} >/dev/null
+
+ # Print the module name if successful, otherwise take note.
+ if [ $? -eq 0 ]; then
+ log_info_msg2 " ${module}"
+ else
+ failedmod="${failedmod} ${module}"
+ fi
+ done < /etc/sysconfig/modules
+
+ # Print a message about successfully loaded modules on the correct line.
+ log_success_msg2
+
+ # Print a failure message with a list of any modules that
+ # may have failed to load.
+ if [ -n "${failedmod}" ]; then
+ log_failure_msg "Failed to load modules:${failedmod}"
+ exit 1
+ fi
+ ;;
+
+ *)
+ echo "Usage: ${0} {start}"
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# End modules