[system-administrators-guide] Update: Persistent Module Loading

stephenw stephenw at fedoraproject.org
Thu Oct 23 19:43:45 UTC 2014


commit 15bd74a905f25da3fc6e773b0e8e1bd88e09c49f
Author: Stephen Wadeley <swadeley at redhat.com>
Date:   Thu Oct 23 21:41:18 2014 +0200

    Update: Persistent Module Loading
    
    Thank you David Shea

 en-US/Working_with_Kernel_Modules.xml |   36 +++++++++++----------------------
 1 files changed, 12 insertions(+), 24 deletions(-)
---
diff --git a/en-US/Working_with_Kernel_Modules.xml b/en-US/Working_with_Kernel_Modules.xml
index cbabb95..ad41096 100644
--- a/en-US/Working_with_Kernel_Modules.xml
+++ b/en-US/Working_with_Kernel_Modules.xml
@@ -459,32 +459,20 @@ rmmod /lib/modules/2.6.32-71.el6.x86_64/kernel/lib/crc-itu-t.ko</screen>
       <tertiary><filename class="directory">/etc/sysconfig/modules/</filename></tertiary>
     </indexterm>
     <para>As shown in <xref
-        linkend="ex-Listing_information_about_a_kernel_module_with_lsmod"/>, many kernel modules are loaded automatically at boot time. You can specify additional modules to be loaded by creating a new <filename><replaceable>file_name</replaceable>.modules</filename> file in the <filename class="directory">/etc/sysconfig/modules/</filename> directory, where <replaceable>file_name</replaceable> is any descriptive name of your choice. Your <filename><replaceable>file_name</replaceable>.modules</filename> files are treated by the system startup scripts as shell scripts, and as such should begin with an <firstterm>interpreter directive</firstterm> (also called a <quote>bang line</quote>) as their first line:</para>
-    <programlisting language="Bash">#!/bin/sh</programlisting>
-    <para>Additionally, the <filename><replaceable>file_name</replaceable>.modules</filename> file should be executable. You can make it executable by running:</para>
-    <screen>modules]#&#160;<command>chmod +x <replaceable>file_name</replaceable>.modules</command>
-    </screen>
+        linkend="ex-Listing_information_about_a_kernel_module_with_lsmod"/>, many kernel modules are loaded automatically at boot time. You can specify additional modules to be loaded by the <systemitem class="daemon">systemd-modules-load.service</systemitem> daemon by creating a <filename><replaceable>program</replaceable>.conf</filename> file in the <filename class="directory">/etc/modules-load.d/</filename> directory, where <replaceable>program</replaceable> is any descriptive name of your choice. The files in <filename class="directory">/etc/modules-load.d/</filename> are text files that list the modules to be loaded, one per line.</para>
     <example
-      id="ex-bluez-uinput.modules">
-      <title>/etc/sysconfig/modules/bluez-uinput.modules</title>
-    <para>The following <filename>bluez-uinput.modules</filename> script loads the <systemitem class="resource">uinput</systemitem> module:</para>
-      <programlisting language="Bash">#!/bin/sh
-
-if [ ! -c /dev/input/uinput ] ; then
-        exec /sbin/modprobe uinput &gt;/dev/null 2&gt;&amp;1
-fi</programlisting>
-      <para>The <literal>if</literal>-conditional statement on the third line ensures that the <filename>/dev/input/uinput</filename> file does <emphasis>not</emphasis> already exist (the <literal>!</literal> symbol negates the condition), and, if that is the case, loads the <systemitem
-          class="resource">uinput</systemitem> module by calling <command>exec /sbin/modprobe uinput</command>. Note that the <systemitem
-          class="resource">uinput</systemitem> module creates the <filename>/dev/input/uinput</filename> file, so testing to see if that file exists serves as verification of whether the <systemitem
-          class="resource">uinput</systemitem> module is loaded into the kernel.</para>
-      <para>The following <command>&gt;/dev/null 2&gt;&amp;1</command> clause at the end of that line redirects any output to <filename>/dev/null</filename> so that the <command>modprobe</command> command remains quiet.</para>
+      id="ex-A_Text_File_to_Load_a_Module">
+      <title>A Text File to Load a Module</title>
+      <para>
+        To create a file to load the <filename>virtio-net.ko</filename> module, create a file <filename>/etc/modules-load.d/virtio-net.conf</filename> with the following content:
+      </para>
+      <screen># Load virtio-net.ko at boot
+virtio-net</screen>
     </example>
-    <!-- silas: most modules are autoloaded these days...
-    <note
-      id="note-No_Need_to_Load_Network_and_SCSI_Modules">
-      <title>Note: Do Not Load Network and SCSI Modules</title>
-      <para>Networking and SCSI modules do not generally need to be manually loaded as they have their own particular loading mechanisms.</para>
-    </note>-->
+    <para>
+      See the <filename>modules-load.d(5)</filename> and <filename>systemd-modules-load.service(8)</filename> man pages for more information.
+    </para>
+
   </section>
 
   <section


More information about the docs-commits mailing list