Add dracut-network element.
This element will install the network modules for dracut and regenerate the initramfs. The network support would allow us to configure the network of the image via kernel cmdline instead of injecting files into the image. Change-Id: I829405127e77aec80b99ac8dd2032cb0c6d81063
This commit is contained in:
parent
e6608d42da
commit
4e4a88a387
1
elements/dracut-network/README.md
Normal file
1
elements/dracut-network/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
Extends dracut and build an initramfs with network support.
|
20
elements/dracut-network/dracut-write-ifcfg.patch
Normal file
20
elements/dracut-network/dracut-write-ifcfg.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
--- usr/lib/dracut/hooks/pre-pivot/85-write-ifcfg.sh 2013-05-30 14:01:37.492519066 +0000
|
||||||
|
+++ /85-write-ifcfg.sh 2013-05-30 14:03:09.832519065 +0000
|
||||||
|
@@ -4,6 +4,9 @@
|
||||||
|
|
||||||
|
# NFS root might have reached here before /tmp/net.ifaces was written
|
||||||
|
udevadm settle --timeout=30
|
||||||
|
+
|
||||||
|
+command -v ip_to_var >/dev/null || . /lib/net-lib.sh
|
||||||
|
+
|
||||||
|
# Don't write anything if we don't know our bootdev
|
||||||
|
[ -f /tmp/net.ifaces ] || return 1
|
||||||
|
|
||||||
|
@@ -98,6 +101,7 @@
|
||||||
|
fi
|
||||||
|
cat /sys/class/net/$netif/address > /tmp/net.$netif.hwaddr
|
||||||
|
{
|
||||||
|
+ ip_to_var $ip
|
||||||
|
echo "# Generated by dracut initrd"
|
||||||
|
echo "DEVICE=$netif"
|
||||||
|
echo "ONBOOT=yes"
|
6
elements/dracut-network/finalise.d/98-regenerate-initramfs
Executable file
6
elements/dracut-network/finalise.d/98-regenerate-initramfs
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
LAST_VERSION=$(basename `ls -1 /boot/vmlinuz* | tail -1 | sed 's/vmlinuz-//g'`)
|
||||||
|
INITRAMFS=`ls /boot/initramfs-$LAST_VERSION.img`
|
||||||
|
|
||||||
|
dracut --force --add "network" $INITRAMFS $LAST_VERSION
|
5
elements/dracut-network/install.d/10-install-dracut-network
Executable file
5
elements/dracut-network/install.d/10-install-dracut-network
Executable file
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
install-packages dracut-network
|
6
elements/dracut-network/install.d/11-patch-dracut
Executable file
6
elements/dracut-network/install.d/11-patch-dracut
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# If the patch doesn't apply just do nothing. This patch fix a small
|
||||||
|
# issue in the script that writes the network configuration files from
|
||||||
|
# the cmdline to the disk on FC18.
|
||||||
|
patch /usr/lib/dracut/modules.d/45ifcfg/write-ifcfg.sh < $(dirname $0)/../dracut-write-ifcfg.patch || true
|
@ -1 +1,2 @@
|
|||||||
dib-run-parts
|
dib-run-parts
|
||||||
|
dracut-network
|
||||||
|
Loading…
Reference in New Issue
Block a user