add 97biosdevname dracut module
authorHarald Hoyer <harald@redhat.com>
Wed, 26 Jan 2011 11:58:52 +0000 (12:58 +0100)
committerHarald Hoyer <harald@redhat.com>
Wed, 26 Jan 2011 12:01:10 +0000 (13:01 +0100)
dracut.kernel.7.xml
modules.d/97biosdevname/check [new file with mode: 0755]
modules.d/97biosdevname/install [new file with mode: 0755]
modules.d/97biosdevname/parse-biosdevname.sh [new file with mode: 0755]

index 35cf255..21cfecd 100644 (file)
@@ -439,6 +439,14 @@ Required if multiple ip= lines are used.</para>
             <para>specify nameserver(s) to use</para>
           </listitem>
         </varlistentry>
+        <varlistentry>
+          <term>
+            <envar>biosdevname=</envar><replaceable>{0|1}</replaceable>
+          </term>
+          <listitem>
+            <para>turn on/off biosdevname network interface renaming</para>
+          </listitem>
+        </varlistentry>
       </variablelist>
     </refsect2>
     <refsect2>
diff --git a/modules.d/97biosdevname/check b/modules.d/97biosdevname/check
new file mode 100755 (executable)
index 0000000..f269c69
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/sh
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
+type -P biosdevname >/dev/null || exit 1
+
+# do not enable bootchartd by default
+exit 0
diff --git a/modules.d/97biosdevname/install b/modules.d/97biosdevname/install
new file mode 100755 (executable)
index 0000000..a108d46
--- /dev/null
@@ -0,0 +1,14 @@
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
+dracut_install biosdevname
+inst_rules 71-biosdevname.rules
+inst_hook pre-trigger 30 "$moddir/parse-biosdevname.sh"
+
+# set the default state according to the config
+if [[ -e /etc/sysconfig/network ]]; then
+    . /etc/sysconfig/network
+fi
+
+if [[ "$BIOSDEVNAME" = "no" ]]; then
+    echo "biosdevname=0" >> ${initdir}/etc/cmdline
+fi
diff --git a/modules.d/97biosdevname/parse-biosdevname.sh b/modules.d/97biosdevname/parse-biosdevname.sh
new file mode 100755 (executable)
index 0000000..5ba0698
--- /dev/null
@@ -0,0 +1,10 @@
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
+if ! getargbool 1 biosdevname; then
+    info "biosdevname=0: removing biosdevname network renaming"
+    udevproperty UDEV_BIOSDEVNAME=
+    rm -f /etc/udev/rules.d/71-biosdevname.rules
+else
+    udevproperty UDEV_BIOSDEVNAME=1
+fi
+