dracut-036-16.git20140206
- version 036 - parse dns information on "ip=" command line arg - preserve ownership of files, if root creates the initramfs - parse ibft nameserver settings - do not run dhcp twice on an interface - try to not reload systemd
This commit is contained in:
parent
131b9510f9
commit
bcb5fa941d
1
.gitignore
vendored
1
.gitignore
vendored
@ -21,3 +21,4 @@
|
||||
/dracut-032.tar.bz2
|
||||
/dracut-033.tar.bz2
|
||||
/dracut-034.tar.bz2
|
||||
/dracut-036.tar.xz
|
||||
|
21
0001-NEWS-update-for-version-036.patch
Normal file
21
0001-NEWS-update-for-version-036.patch
Normal file
@ -0,0 +1,21 @@
|
||||
From d50a99c5ceeb7107f624c5d3238d37509b2217a8 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 29 Jan 2014 08:37:43 +0100
|
||||
Subject: [PATCH] NEWS: update for version 036
|
||||
|
||||
---
|
||||
NEWS | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 5b88600..ccf279f 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,3 +1,7 @@
|
||||
+dracut-036
|
||||
+==========
|
||||
+- fixed skipcpio signature checking
|
||||
+
|
||||
dracut-035
|
||||
==========
|
||||
- changed dracut tarball compression to xz
|
@ -1,38 +0,0 @@
|
||||
From a3c0cef9a79608a45fee94ff6b31f9c63864923f Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 8 Oct 2013 10:30:00 +0200
|
||||
Subject: [PATCH] lvm: install thin utils for non-hostonly
|
||||
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 18 +++++++++++-------
|
||||
1 file changed, 11 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index f98ffff..514addc 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -52,13 +52,17 @@ install() {
|
||||
|
||||
inst lvm
|
||||
|
||||
- get_host_lvs | while read line; do
|
||||
- printf "%s" " rd.lvm.lv=$line"
|
||||
- if ! [[ $_needthin ]]; then
|
||||
- [[ "$(lvs --noheadings -o segtype ${line%%/*} 2>/dev/null)" == *thin* ]] && _needthin=1
|
||||
- fi
|
||||
- done >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
- echo >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
+ if [[ $hostonly ]]; then
|
||||
+ get_host_lvs | while read line; do
|
||||
+ printf "%s" " rd.lvm.lv=$line"
|
||||
+ if ! [[ $_needthin ]]; then
|
||||
+ [[ "$(lvs --noheadings -o segtype ${line%%/*} 2>/dev/null)" == *thin* ]] && _needthin=1
|
||||
+ fi
|
||||
+ done >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
+ echo >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
+ else
|
||||
+ _needthin=1
|
||||
+ fi
|
||||
|
||||
inst_rules "$moddir/64-lvm.rules"
|
||||
|
File diff suppressed because it is too large
Load Diff
50
0002-network-understand-ip-.-dns1-dns2.patch
Normal file
50
0002-network-understand-ip-.-dns1-dns2.patch
Normal file
@ -0,0 +1,50 @@
|
||||
From 66bfe863f551389add3a3a53067264ce32eba302 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 30 Jan 2014 13:50:02 +0100
|
||||
Subject: [PATCH] network: understand ip=.....:<dns1>:<dns2>
|
||||
|
||||
---
|
||||
modules.d/40network/net-lib.sh | 23 +++++++++++++++++------
|
||||
1 file changed, 17 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||
index 7544401..36fad12 100755
|
||||
--- a/modules.d/40network/net-lib.sh
|
||||
+++ b/modules.d/40network/net-lib.sh
|
||||
@@ -339,7 +339,7 @@ ip_to_var() {
|
||||
fi
|
||||
done
|
||||
|
||||
- unset ip srv gw mask hostname dev autoconf macaddr mtu
|
||||
+ unset ip srv gw mask hostname dev autoconf macaddr mtu dns1 dns2
|
||||
case $# in
|
||||
0) autoconf="error" ;;
|
||||
1) autoconf=$1 ;;
|
||||
@@ -347,11 +347,22 @@ ip_to_var() {
|
||||
3) [ -n "$1" ] && dev=$1; [ -n "$2" ] && autoconf=$2; [ -n "$3" ] && mtu=$3 ;;
|
||||
4) [ -n "$1" ] && dev=$1; [ -n "$2" ] && autoconf=$2; [ -n "$3" ] && mtu=$3; [ -n "$4" ] && macaddr=$4 ;;
|
||||
*) [ -n "$1" ] && ip=$1; [ -n "$2" ] && srv=$2; [ -n "$3" ] && gw=$3; [ -n "$4" ] && mask=$4;
|
||||
- [ -n "$5" ] && hostname=$5; [ -n "$6" ] && dev=$6; [ -n "$7" ] && autoconf=$7; [ -n "$8" ] && mtu=$8;
|
||||
- if [ -n "${9}" -a -n "${10}" -a -n "${11}" -a -n "${12}" -a -n "${13}" -a -n "${14}" ]; then
|
||||
- macaddr="${9}:${10}:${11}:${12}:${13}:${14}"
|
||||
- fi
|
||||
- ;;
|
||||
+ [ -n "$5" ] && hostname=$5; [ -n "$6" ] && dev=$6; [ -n "$7" ] && autoconf=$7;
|
||||
+ case "$8" in
|
||||
+ [0-9]*:*|[0-9]*.[0-9]*.[0-9]*.[0-9]*)
|
||||
+ dns1="$mtu"; unset $mtu
|
||||
+ [ -n "$9" ] && dns2="$9"
|
||||
+ ;;
|
||||
+ [0-9]*)
|
||||
+ mtu="$8"
|
||||
+ ;;
|
||||
+ *)
|
||||
+ if [ -n "${9}" -a -n "${10}" -a -n "${11}" -a -n "${12}" -a -n "${13}" -a -n "${14}" ]; then
|
||||
+ macaddr="${9}:${10}:${11}:${12}:${13}:${14}"
|
||||
+ fi
|
||||
+ ;;
|
||||
+ esac
|
||||
+ ;;
|
||||
esac
|
||||
|
||||
# ip=<ipv4-address> means anaconda-style static config argument cluster:
|
@ -1,48 +0,0 @@
|
||||
From 6c8fc6e377b94e26e6d03cddbf174cb27caad0a6 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 8 Oct 2013 15:02:14 +0200
|
||||
Subject: [PATCH] 10i18n/parse-i18n.sh: parse rd.vconsole and rd.locale
|
||||
|
||||
and removed systemd part, because parse-i18n.sh is not even installed in
|
||||
systemd driven initramfs images.
|
||||
---
|
||||
modules.d/10i18n/parse-i18n.sh | 22 ++++++++--------------
|
||||
1 file changed, 8 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/modules.d/10i18n/parse-i18n.sh b/modules.d/10i18n/parse-i18n.sh
|
||||
index 348c5bc..416a746 100755
|
||||
--- a/modules.d/10i18n/parse-i18n.sh
|
||||
+++ b/modules.d/10i18n/parse-i18n.sh
|
||||
@@ -19,24 +19,18 @@ inst_key_val() {
|
||||
unset _value
|
||||
}
|
||||
|
||||
-inst_key_val '' /etc/vconsole.conf vconsole.keymap KEYMAP -d KEYTABLE
|
||||
-inst_key_val '' /etc/vconsole.conf vconsole.font FONT -d SYSFONT
|
||||
-inst_key_val '' /etc/vconsole.conf vconsole.font.map FONT_MAP -d CONTRANS
|
||||
-inst_key_val '' /etc/vconsole.conf vconsole.font.unimap FONT_UNIMAP -d UNIMAP
|
||||
-inst_key_val 1 /etc/vconsole.conf vconsole.font.unicode UNICODE vconsole.unicode
|
||||
-inst_key_val '' /etc/vconsole.conf vconsole.keymap.ext EXT_KEYMAP
|
||||
+inst_key_val '' /etc/vconsole.conf rd.vconsole.keymap vconsole.keymap KEYMAP -d KEYTABLE
|
||||
+inst_key_val '' /etc/vconsole.conf rd.vconsole.font vconsole.font FONT -d SYSFONT
|
||||
+inst_key_val '' /etc/vconsole.conf rd.vconsole.font.map vconsole.font.map FONT_MAP -d CONTRANS
|
||||
+inst_key_val '' /etc/vconsole.conf rd.vconsole.font.unimap vconsole.font.unimap FONT_UNIMAP -d UNIMAP
|
||||
+inst_key_val 1 /etc/vconsole.conf rd.vconsole.font.unicode vconsole.font.unicode UNICODE vconsole.unicode
|
||||
+inst_key_val '' /etc/vconsole.conf rd.vconsole.keymap.ext vconsole.keymap.ext EXT_KEYMAP
|
||||
|
||||
-inst_key_val '' /etc/locale.conf locale.LANG LANG
|
||||
-inst_key_val '' /etc/locale.conf locale.LC_ALL LC_ALL
|
||||
+inst_key_val '' /etc/locale.conf rd.locale.LANG locale.LANG LANG
|
||||
+inst_key_val '' /etc/locale.conf rd.locale.LC_ALL locale.LC_ALL LC_ALL
|
||||
|
||||
if [ -f /etc/locale.conf ]; then
|
||||
. /etc/locale.conf
|
||||
export LANG
|
||||
export LC_ALL
|
||||
fi
|
||||
-
|
||||
-if [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
- rm -f -- /etc/udev/rules.d/10-console.rules
|
||||
- rm -f -- /lib/udev/rules.d/10-console.rules
|
||||
- rm -f -- /lib/udev/console_init
|
||||
-fi
|
@ -0,0 +1,36 @@
|
||||
From c8a9a6b4a7dff76c66e84f65b2717632e1bb4505 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 30 Jan 2014 16:11:40 +0100
|
||||
Subject: [PATCH] dracut.sh: only set the owner of files to 0:0, if generated
|
||||
as non-root
|
||||
|
||||
If the root user generates the initramfs image, preserve the ownership
|
||||
of the files. This of course cannot be done for non-root users
|
||||
generating an initramfs image.
|
||||
---
|
||||
dracut.sh | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 9b715ab..ccff358 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -1462,13 +1462,16 @@ fi
|
||||
|
||||
rm -f -- "$outfile"
|
||||
dinfo "*** Creating image file ***"
|
||||
+
|
||||
+[[ "$UID" != 0 ]] && cpio_owner_root="-R 0:0"
|
||||
+
|
||||
if [[ $create_early_cpio = yes ]]; then
|
||||
echo 1 > "$early_cpio_dir/d/early_cpio"
|
||||
# The microcode blob is _before_ the initramfs blob, not after
|
||||
- (cd "$early_cpio_dir/d"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet >../early.cpio)
|
||||
+ (cd "$early_cpio_dir/d"; find . -print0 | cpio --null $cpio_owner_root -H newc -o --quiet >../early.cpio)
|
||||
mv $early_cpio_dir/early.cpio $outfile.$$
|
||||
fi
|
||||
-if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet | \
|
||||
+if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null $cpio_owner_root -H newc -o --quiet | \
|
||||
$compress >> "$outfile.$$"; ); then
|
||||
dfatal "dracut: creation of $outfile.$$ failed"
|
||||
exit 1
|
@ -0,0 +1,22 @@
|
||||
From f57850d7e8800cc28c766c77ad0a881a9b6a1f36 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 30 Jan 2014 14:27:18 +0100
|
||||
Subject: [PATCH] dracut-functions.sh: also search in the updates directory
|
||||
|
||||
---
|
||||
dracut-functions.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 7cfa097..c766ca3 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -1551,7 +1551,7 @@ find_kernel_modules_by_path () {
|
||||
_OLDIFS=$IFS
|
||||
IFS=:
|
||||
while read a rest; do
|
||||
- [[ $a = */$1/* ]] || continue
|
||||
+ [[ $a = */$1/* ]] || [[ $a = */updates/* ]] || continue
|
||||
printf "%s\n" "$srcmods/$a"
|
||||
done < "$srcmods/modules.dep"
|
||||
IFS=$_OLDIFS
|
@ -1,38 +0,0 @@
|
||||
From 05214a0bedc084a41c35a128609745ad04a0c6cf Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 8 Oct 2013 15:03:40 +0200
|
||||
Subject: [PATCH] dracut.sh: do not bail out, if kernel modules dir is missing
|
||||
|
||||
and only print a warning message
|
||||
---
|
||||
dracut.sh | 11 ++++++-----
|
||||
1 file changed, 6 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index e135dfc..d9533dd 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -496,17 +496,18 @@ if [[ $regenerate_all == "yes" ]]; then
|
||||
((ret+=$?))
|
||||
done
|
||||
exit $ret
|
||||
-elif [[ $kernel ]]; then
|
||||
- if ! [[ -d /lib/modules/$kernel ]] && [[ $no_kernel != yes ]]; then
|
||||
- printf -- "Kernel version $kernel has no modules in /lib/modules/$kernel\n" >&2
|
||||
- exit 1
|
||||
- fi
|
||||
fi
|
||||
|
||||
if ! [[ $kernel ]]; then
|
||||
kernel=$(uname -r)
|
||||
fi
|
||||
|
||||
+if [[ $kernel ]]; then
|
||||
+ if ! [[ -d /lib/modules/$kernel ]] && [[ $no_kernel != yes ]]; then
|
||||
+ printf -- "Kernel version $kernel has no module directory /lib/modules/$kernel\n" >&2
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
if ! [[ $outfile ]]; then
|
||||
[[ -f /etc/machine-id ]] && read MACHINE_ID < /etc/machine-id
|
||||
|
File diff suppressed because it is too large
Load Diff
34
0005-network-net-lib.sh-parse-ibft-nameserver-settings.patch
Normal file
34
0005-network-net-lib.sh-parse-ibft-nameserver-settings.patch
Normal file
@ -0,0 +1,34 @@
|
||||
From e95e48c6eee46ea0d3cbaa9e28576f795204018a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 30 Jan 2014 17:11:43 +0100
|
||||
Subject: [PATCH] network/net-lib.sh: parse ibft nameserver settings
|
||||
|
||||
---
|
||||
modules.d/40network/net-lib.sh | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||
index 36fad12..1b51c85 100755
|
||||
--- a/modules.d/40network/net-lib.sh
|
||||
+++ b/modules.d/40network/net-lib.sh
|
||||
@@ -185,6 +185,7 @@ ibft_to_cmdline() {
|
||||
for iface in /sys/firmware/ibft/ethernet*; do
|
||||
local mac="" dev=""
|
||||
local dhcp="" ip="" gw="" mask="" hostname=""
|
||||
+ local dns1 dns2
|
||||
|
||||
[ -e ${iface}/mac ] || continue
|
||||
mac=$(read a < ${iface}/mac; echo $a)
|
||||
@@ -203,9 +204,11 @@ ibft_to_cmdline() {
|
||||
[ "$ip" = "0.0.0.0" ] && continue
|
||||
[ -e ${iface}/gateway ] && gw=$(read a < ${iface}/gateway; echo $a)
|
||||
[ -e ${iface}/subnet-mask ] && mask=$(read a < ${iface}/subnet-mask; echo $a)
|
||||
+ [ -e ${iface}/primary-dns ] && dns1=$(read a < ${iface}/primary-dns; echo $a)
|
||||
+ [ -e ${iface}/secondary-dns ] && dns2=$(read a < ${iface}/secondary-dns; echo $a)
|
||||
[ -e ${iface}/hostname ] && hostname=$(read a < ${iface}/hostname; echo $a)
|
||||
if [ -n "$ip" ] && [ -n "$mask" ]; then
|
||||
- echo "ip=$ip::$gw:$mask:$hostname:$dev:none"
|
||||
+ echo "ip=$ip::$gw:$mask:$hostname:$dev:none${dns1:+:$dns1}${dns2:+:$dns2}"
|
||||
else
|
||||
warn "${iface} does not contain a valid iBFT configuration"
|
||||
warn "ip-addr=$ip"
|
@ -1,47 +0,0 @@
|
||||
From 3622d6d7b0806023d60f62fc90b859adaefe5e59 Mon Sep 17 00:00:00 2001
|
||||
From: "Brian C. Lane" <bcl@redhat.com>
|
||||
Date: Tue, 8 Oct 2013 15:13:44 +0200
|
||||
Subject: [PATCH] dmsquash-live: add /dev/mapper/live-base
|
||||
|
||||
This is similar to the reason for adding the
|
||||
/run/initramfs/live-baseloop symlink -- access to the original live
|
||||
image without overlays.
|
||||
|
||||
livemedia-creator does not create a osmin.img, so there is no mountable
|
||||
device for it to use when rsyncing the live image to the target. It
|
||||
needs a device that points to the original live image without overlays.
|
||||
|
||||
Note that lmc won't be creating osmin.img, since really isn't needed any
|
||||
longer. Its purpose was to provide a minimal image that could be dd'd to
|
||||
the target. Now that we use rsync this is no longer necessary.
|
||||
|
||||
The included patch adds a /dev/mapper/live-base device that Anaconda can
|
||||
use whether or not there is an osmin present.
|
||||
---
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index 8951f80..5705e8d 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -144,6 +144,9 @@ do_live_overlay() {
|
||||
over=$OVERLAY_LOOPDEV
|
||||
fi
|
||||
echo 0 $sz snapshot $base $over p 8 | dmsetup create live-rw
|
||||
+
|
||||
+ # Create a device that always points to a ro base image
|
||||
+ echo 0 $sz linear $base 0 | dmsetup create --readonly live-base
|
||||
}
|
||||
|
||||
# live cd helper function
|
||||
@@ -225,9 +228,6 @@ if [ -n "$ROOTFLAGS" ]; then
|
||||
ROOTFLAGS="-o $ROOTFLAGS"
|
||||
fi
|
||||
|
||||
-if [ -b "$BASE_LOOPDEV" ]; then
|
||||
- ln -s $BASE_LOOPDEV /run/initramfs/live-baseloop
|
||||
-fi
|
||||
ln -s /dev/mapper/live-rw /dev/root
|
||||
printf 'mount %s /dev/mapper/live-rw %s\n' "$ROOTFLAGS" "$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
|
@ -0,0 +1,72 @@
|
||||
From 1982098e00a545894d7aabba13a99c324e56ed52 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 30 Jan 2014 17:12:24 +0100
|
||||
Subject: [PATCH] network/ifup.sh: handle $dns1 and $dns2 from "ip=" settings
|
||||
|
||||
---
|
||||
dracut.cmdline.7.asc | 7 +++++++
|
||||
modules.d/40network/ifup.sh | 21 ++++++++++++---------
|
||||
2 files changed, 19 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
||||
index 963ba07..985285b 100644
|
||||
--- a/dracut.cmdline.7.asc
|
||||
+++ b/dracut.cmdline.7.asc
|
||||
@@ -472,6 +472,13 @@ cannot be used in conjunction with the **ifname** argument for the
|
||||
same <interface>.
|
||||
=====================
|
||||
|
||||
+**ip=**__<client-IP>__:[__<peer>__]:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__[:[__<dns1>__][:__<dns2>__]]::
|
||||
+ explicit network configuration. If you want do define a IPv6 address, put it
|
||||
+ in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
|
||||
+ times. __<peer>__ is optional and is the address of the remote endpoint
|
||||
+ for pointopoint interfaces and it may be followed by a slash and a decimal
|
||||
+ number, encoding the network prefix length.
|
||||
+
|
||||
**ifname=**__<interface>__:__<MAC>__::
|
||||
Assign network device name <interface> (ie "bootnet") to the NIC with
|
||||
MAC <MAC>.
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
|
||||
index 2edcfe6..b33981b 100755
|
||||
--- a/modules.d/40network/ifup.sh
|
||||
+++ b/modules.d/40network/ifup.sh
|
||||
@@ -264,18 +264,15 @@ if [ "$netif" = "$vlanname" ] && [ ! -e /tmp/net.$vlanname.up ]; then
|
||||
ip link set "$vlanname" up
|
||||
fi
|
||||
|
||||
-# setup nameserver
|
||||
-namesrv=$(getargs nameserver)
|
||||
-if [ -n "$namesrv" ] ; then
|
||||
- for s in $namesrv; do
|
||||
- echo nameserver $s
|
||||
- done
|
||||
-fi >> /tmp/net.$netif.resolv.conf
|
||||
-
|
||||
# No ip lines default to dhcp
|
||||
ip=$(getarg ip)
|
||||
|
||||
if [ -z "$ip" ]; then
|
||||
+ namesrv=$(getargs nameserver)
|
||||
+ for s in $namesrv; do
|
||||
+ echo nameserver $s >> /tmp/net.$netif.resolv.conf
|
||||
+ done
|
||||
+
|
||||
if [ "$netroot" = "dhcp6" ]; then
|
||||
do_dhcp -6
|
||||
else
|
||||
@@ -307,8 +304,14 @@ for p in $(getargs ip=); do
|
||||
[ "$use_bridge" != 'true' ] && \
|
||||
[ "$use_vlan" != 'true' ] && continue
|
||||
|
||||
+ # setup nameserver
|
||||
+ namesrv="$dns1 $dns2 $(getargs nameserver)"
|
||||
+ for s in $namesrv; do
|
||||
+ echo nameserver $s >> /tmp/net.$netif.resolv.conf
|
||||
+ done
|
||||
+
|
||||
# Store config for later use
|
||||
- for i in ip srv gw mask hostname macaddr; do
|
||||
+ for i in ip srv gw mask hostname macaddr dns1 dns2; do
|
||||
eval '[ "$'$i'" ] && echo '$i'="$'$i'"'
|
||||
done > /tmp/net.$netif.override
|
||||
|
@ -1,21 +0,0 @@
|
||||
From ab2676d29144097239c189b1a6d938e0420eb580 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 9 Oct 2013 08:20:39 +0200
|
||||
Subject: [PATCH] base/init.sh: also mkdir /run/lock
|
||||
|
||||
---
|
||||
modules.d/99base/init.sh | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh
|
||||
index ae73fd2..3ba440a 100755
|
||||
--- a/modules.d/99base/init.sh
|
||||
+++ b/modules.d/99base/init.sh
|
||||
@@ -90,6 +90,7 @@ trap "action_on_fail Signal caught!" 0
|
||||
|
||||
[ -d /run/initramfs ] || mkdir -p -m 0755 /run/initramfs
|
||||
[ -d /run/log ] || mkdir -p -m 0755 /run/log
|
||||
+[ -d /run/lock ] || mkdir -p -m 0755 /run/lock
|
||||
|
||||
export UDEVVERSION=$(udevadm --version)
|
||||
if [ $UDEVVERSION -gt 166 ]; then
|
@ -0,0 +1,43 @@
|
||||
From c8608373039e66768d34bcf8d43da48d68c5be2a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 31 Jan 2014 15:33:05 +0100
|
||||
Subject: [PATCH] base/rdsosreport.sh: add dracut version to rdsosreport
|
||||
|
||||
---
|
||||
modules.d/99base/rdsosreport.sh | 16 +++++++++-------
|
||||
1 file changed, 9 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/modules.d/99base/rdsosreport.sh b/modules.d/99base/rdsosreport.sh
|
||||
index 5e11166..3e2ac87 100755
|
||||
--- a/modules.d/99base/rdsosreport.sh
|
||||
+++ b/modules.d/99base/rdsosreport.sh
|
||||
@@ -8,13 +8,7 @@ exec >/run/initramfs/rdsosreport.txt 2>&1
|
||||
|
||||
set -x
|
||||
|
||||
-cat /proc/self/mountinfo
|
||||
-cat /proc/mounts
|
||||
-
|
||||
-blkid
|
||||
-blkid -o udev
|
||||
-
|
||||
-ls -l /dev/disk/by*
|
||||
+cat /lib/dracut/dracut-*
|
||||
|
||||
cat /proc/cmdline
|
||||
|
||||
@@ -26,6 +20,14 @@ for _i in /etc/cmdline.d/*.conf; do
|
||||
cat $_i
|
||||
done
|
||||
|
||||
+cat /proc/self/mountinfo
|
||||
+cat /proc/mounts
|
||||
+
|
||||
+blkid
|
||||
+blkid -o udev
|
||||
+
|
||||
+ls -l /dev/disk/by*
|
||||
+
|
||||
for _i in /etc/conf.d/*.conf; do
|
||||
[ -f "$_i" ] || break
|
||||
echo $_i
|
@ -1,28 +0,0 @@
|
||||
From cfdec163f9dfd5e083f2c8a728c476381faa8baa Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Wed, 9 Oct 2013 06:39:46 +0400
|
||||
Subject: [PATCH] resume: fix swap detection in hostonly
|
||||
|
||||
Check for other possible fs types. This fixes swap detection when using
|
||||
TuxOnIce kernel.
|
||||
|
||||
Note that parse-resume.sh generate udev rules with support for
|
||||
ID_FS_TYPE=suspend, but we do not include it here, because it is
|
||||
libvolume_id thing and host_fs_types is populated using blkid.
|
||||
---
|
||||
modules.d/95resume/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh
|
||||
index b6d2c48..8b37616 100755
|
||||
--- a/modules.d/95resume/module-setup.sh
|
||||
+++ b/modules.d/95resume/module-setup.sh
|
||||
@@ -7,7 +7,7 @@ check() {
|
||||
# No point trying to support resume, if no swap partition exist
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in "${host_fs_types[@]}"; do
|
||||
- [[ $fs = swap ]] && return 0
|
||||
+ [[ $fs =~ ^(swap|swsuspend|swsupend)$ ]] && return 0
|
||||
done
|
||||
return 255
|
||||
}
|
297
0008-test-include-the-same-Makefile.testdir.patch
Normal file
297
0008-test-include-the-same-Makefile.testdir.patch
Normal file
@ -0,0 +1,297 @@
|
||||
From f52759131bd8d0c118106de9c1f0ddb68bf16521 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 4 Feb 2014 12:01:11 +0100
|
||||
Subject: [PATCH] test: include the same Makefile.testdir
|
||||
|
||||
---
|
||||
test/TEST-01-BASIC/Makefile | 11 +----------
|
||||
test/TEST-02-SYSTEMD/Makefile | 11 +----------
|
||||
test/TEST-03-USR-MOUNT/Makefile | 11 +----------
|
||||
test/TEST-04-FULL-SYSTEMD/Makefile | 11 +----------
|
||||
test/TEST-10-RAID/Makefile | 11 +----------
|
||||
test/TEST-11-LVM/Makefile | 11 +----------
|
||||
test/TEST-12-RAID-DEG/Makefile | 11 +----------
|
||||
test/TEST-13-ENC-RAID-LVM/Makefile | 11 +----------
|
||||
test/TEST-14-IMSM/Makefile | 11 +----------
|
||||
test/TEST-15-BTRFSRAID/Makefile | 11 +----------
|
||||
test/TEST-16-DMSQUASH/Makefile | 11 +----------
|
||||
test/TEST-17-LVM-THIN/Makefile | 11 +----------
|
||||
test/TEST-20-NFS/Makefile | 11 +----------
|
||||
test/TEST-30-ISCSI/Makefile | 11 +----------
|
||||
test/TEST-40-NBD/Makefile | 11 +----------
|
||||
test/TEST-50-MULTINIC/Makefile | 11 +----------
|
||||
test/TEST-99-RPM/Makefile | 11 +----------
|
||||
17 files changed, 17 insertions(+), 170 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-01-BASIC/Makefile b/test/TEST-01-BASIC/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-01-BASIC/Makefile
|
||||
+++ b/test/TEST-01-BASIC/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-02-SYSTEMD/Makefile b/test/TEST-02-SYSTEMD/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-02-SYSTEMD/Makefile
|
||||
+++ b/test/TEST-02-SYSTEMD/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-03-USR-MOUNT/Makefile b/test/TEST-03-USR-MOUNT/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-03-USR-MOUNT/Makefile
|
||||
+++ b/test/TEST-03-USR-MOUNT/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-04-FULL-SYSTEMD/Makefile b/test/TEST-04-FULL-SYSTEMD/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-04-FULL-SYSTEMD/Makefile
|
||||
+++ b/test/TEST-04-FULL-SYSTEMD/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-10-RAID/Makefile b/test/TEST-10-RAID/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-10-RAID/Makefile
|
||||
+++ b/test/TEST-10-RAID/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-11-LVM/Makefile b/test/TEST-11-LVM/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-11-LVM/Makefile
|
||||
+++ b/test/TEST-11-LVM/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-12-RAID-DEG/Makefile b/test/TEST-12-RAID-DEG/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-12-RAID-DEG/Makefile
|
||||
+++ b/test/TEST-12-RAID-DEG/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-13-ENC-RAID-LVM/Makefile b/test/TEST-13-ENC-RAID-LVM/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-13-ENC-RAID-LVM/Makefile
|
||||
+++ b/test/TEST-13-ENC-RAID-LVM/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-14-IMSM/Makefile b/test/TEST-14-IMSM/Makefile
|
||||
index bc0ddb6..2dcab81 100644
|
||||
--- a/test/TEST-14-IMSM/Makefile
|
||||
+++ b/test/TEST-14-IMSM/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @make -s --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @make --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-15-BTRFSRAID/Makefile b/test/TEST-15-BTRFSRAID/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-15-BTRFSRAID/Makefile
|
||||
+++ b/test/TEST-15-BTRFSRAID/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-16-DMSQUASH/Makefile b/test/TEST-16-DMSQUASH/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-16-DMSQUASH/Makefile
|
||||
+++ b/test/TEST-16-DMSQUASH/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-17-LVM-THIN/Makefile b/test/TEST-17-LVM-THIN/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-17-LVM-THIN/Makefile
|
||||
+++ b/test/TEST-17-LVM-THIN/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-20-NFS/Makefile b/test/TEST-20-NFS/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-20-NFS/Makefile
|
||||
+++ b/test/TEST-20-NFS/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-30-ISCSI/Makefile b/test/TEST-30-ISCSI/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-30-ISCSI/Makefile
|
||||
+++ b/test/TEST-30-ISCSI/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-40-NBD/Makefile b/test/TEST-40-NBD/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-40-NBD/Makefile
|
||||
+++ b/test/TEST-40-NBD/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-50-MULTINIC/Makefile b/test/TEST-50-MULTINIC/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-50-MULTINIC/Makefile
|
||||
+++ b/test/TEST-50-MULTINIC/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
||||
diff --git a/test/TEST-99-RPM/Makefile b/test/TEST-99-RPM/Makefile
|
||||
index aad2705..2dcab81 100644
|
||||
--- a/test/TEST-99-RPM/Makefile
|
||||
+++ b/test/TEST-99-RPM/Makefile
|
||||
@@ -1,10 +1 @@
|
||||
-all:
|
||||
- @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
- @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
-setup:
|
||||
- @$(MAKE) --no-print-directory -C ../.. all
|
||||
- @basedir=../.. testdir=../ ./test.sh --setup
|
||||
-clean:
|
||||
- @basedir=../.. testdir=../ ./test.sh --clean
|
||||
-run:
|
||||
- @basedir=../.. testdir=../ ./test.sh --run
|
||||
+-include ../Makefile.testdir
|
@ -0,0 +1,26 @@
|
||||
From d61a423f7cb326848e952d9e13a8cbf25ca06631 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 4 Feb 2014 12:02:05 +0100
|
||||
Subject: [PATCH] network/ifup: do not ifup an already setup network interface
|
||||
|
||||
---
|
||||
modules.d/40network/ifup.sh | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
|
||||
index b33981b..3a03d05 100755
|
||||
--- a/modules.d/40network/ifup.sh
|
||||
+++ b/modules.d/40network/ifup.sh
|
||||
@@ -80,7 +80,11 @@ fi
|
||||
# in netroot case we prefer netroot to bringup $netif automaticlly
|
||||
[ -n "$2" -a "$2" = "-m" ] && [ -z "$netroot" ] && manualup="$2"
|
||||
[ -z "$netroot" ] && [ -z "$manualup" ] && exit 0
|
||||
-[ -n "$manualup" ] && >/tmp/net.$netif.manualup
|
||||
+if [ -n "$manualup" ]; then
|
||||
+ >/tmp/net.$netif.manualup
|
||||
+else
|
||||
+ [ -f /tmp/net.${iface}.did-setup ] && exit 0
|
||||
+fi
|
||||
|
||||
# Run dhclient
|
||||
do_dhcp() {
|
@ -1,88 +0,0 @@
|
||||
From 1aedbb788696f4ead7fa338edab4b3dcbbe3c8f0 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Wed, 9 Oct 2013 07:02:56 +0400
|
||||
Subject: [PATCH] resume: remove resume-genrules.sh
|
||||
|
||||
parse-resume.sh already contains all the code from resume-genrules.sh.
|
||||
Also parse-resume.sh is executed before resume-genrules.sh, so there is
|
||||
no point to keep the latter.
|
||||
|
||||
This fixes the following error messages:
|
||||
dracut-initqueue: ln: failed to create symbolic link '/dev/resume': File exists
|
||||
dracut-initqueue: rm: cannot remove '/lib/dracut/hooks/initqueue/settled/resume.sh': No such file or directory
|
||||
dracut-initqueue: rm: cannot remove '/lib/dracut/hooks/initqueue/timeout/resume.sh': No such file or directory
|
||||
---
|
||||
modules.d/95resume/module-setup.sh | 1 -
|
||||
modules.d/95resume/resume-genrules.sh | 51 -----------------------------------
|
||||
2 files changed, 52 deletions(-)
|
||||
delete mode 100755 modules.d/95resume/resume-genrules.sh
|
||||
|
||||
diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh
|
||||
index 8b37616..a172c27 100755
|
||||
--- a/modules.d/95resume/module-setup.sh
|
||||
+++ b/modules.d/95resume/module-setup.sh
|
||||
@@ -32,7 +32,6 @@ install() {
|
||||
inst_hook cmdline 10 "$moddir/parse-resume.sh"
|
||||
else
|
||||
inst_script "$moddir/parse-resume.sh" /lib/dracut/parse-resume.sh
|
||||
- inst_hook pre-udev 30 "$moddir/resume-genrules.sh"
|
||||
fi
|
||||
|
||||
inst_script "$moddir/resume.sh" /lib/dracut/resume.sh
|
||||
diff --git a/modules.d/95resume/resume-genrules.sh b/modules.d/95resume/resume-genrules.sh
|
||||
deleted file mode 100755
|
||||
index c542c71..0000000
|
||||
--- a/modules.d/95resume/resume-genrules.sh
|
||||
+++ /dev/null
|
||||
@@ -1,51 +0,0 @@
|
||||
-#!/bin/sh
|
||||
-# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
-# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
-
|
||||
-case "$splash" in
|
||||
- quiet )
|
||||
- a_splash="-P splash=y"
|
||||
- ;;
|
||||
- * )
|
||||
- a_splash="-P splash=n"
|
||||
- ;;
|
||||
-esac
|
||||
-
|
||||
-if [ -n "$resume" ]; then
|
||||
- {
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- } >> /etc/udev/rules.d/99-resume-link.rules
|
||||
-
|
||||
- {
|
||||
- if [ -x /usr/sbin/resume ]; then
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
- ${resume#/dev/} "$a_splash" "$resume";
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
- ${resume#/dev/} "$a_splash" "$resume";
|
||||
- fi
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- } >> /etc/udev/rules.d/99-resume.rules
|
||||
-
|
||||
- printf '[ -e "%s" ] && { ln -s "%s" /dev/resume; rm "$job" "%s/initqueue/timeout/resume.sh"; }\n' \
|
||||
- "$resume" "$resume" "$hookdir" >> $hookdir/initqueue/settled/resume.sh
|
||||
-
|
||||
- printf 'warn "Cancelling resume operation. Device not found."; cancel_wait_for_dev /dev/resume; rm "$job" "%s/initqueue/settled/resume.sh";' \
|
||||
- "$hookdir" >> $hookdir/initqueue/timeout/resume.sh
|
||||
-
|
||||
- wait_for_dev "/dev/resume"
|
||||
-
|
||||
-elif ! getarg noresume; then
|
||||
- {
|
||||
- if [ -x /usr/sbin/resume ]; then
|
||||
- printf "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \$tempnode\"\n" "$a_splash"
|
||||
- fi
|
||||
- echo "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\"," \
|
||||
- " RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %M:%m > /sys/power/resume\"";
|
||||
- } >> /etc/udev/rules.d/99-resume.rules
|
||||
-fi
|
@ -1,105 +0,0 @@
|
||||
From 871c8e40d1c7bb1bace48ce19ea1b956f7065458 Mon Sep 17 00:00:00 2001
|
||||
From: P J P <ppandit@redhat.com>
|
||||
Date: Fri, 11 Oct 2013 19:26:51 +0530
|
||||
Subject: [PATCH] Add lzo, lz4 compression and read INITRD_COMPRESS
|
||||
|
||||
This patch adds support for lzop(1) & lz4(1) compression
|
||||
algorithms to compress iniramfs image file. Both are supported
|
||||
by the Linux kernel.
|
||||
|
||||
Linux kernel exports user's choice of initramfs compression
|
||||
algorithm as a shell environment variable: INITRD_COMPRESS.
|
||||
This patch adds support to read this variable and duly compress
|
||||
the initramfs image file.
|
||||
|
||||
Environment variable INITRD_COMPRESS has less precedence than the
|
||||
command line options --gzip, etc. Ie. command line options could
|
||||
override the compression algorithm defined by $INITRD_COMPRESS.
|
||||
|
||||
Signed-off-by: P J P <ppandit@redhat.com>
|
||||
|
||||
[Edited-by: Harald Hoyer: add documentation about lzo and lz4]
|
||||
---
|
||||
dracut.8.asc | 16 ++++++++++++++++
|
||||
dracut.sh | 13 +++++++++++++
|
||||
2 files changed, 29 insertions(+)
|
||||
|
||||
diff --git a/dracut.8.asc b/dracut.8.asc
|
||||
index 584514c..2ea6744 100644
|
||||
--- a/dracut.8.asc
|
||||
+++ b/dracut.8.asc
|
||||
@@ -365,6 +365,22 @@ Make sure your kernel has xz decompression support compiled in, otherwise you
|
||||
will not be able to boot. Equivalent to "lzma --compress=xz --check=crc32 --lzma2=dict=1MiB"
|
||||
====
|
||||
|
||||
+**--lzo**::
|
||||
+ Compress the generated initramfs using lzop.
|
||||
+[WARNING]
|
||||
+====
|
||||
+Make sure your kernel has lzo decompression support compiled in, otherwise you
|
||||
+will not be able to boot.
|
||||
+====
|
||||
+
|
||||
+**--lz4**::
|
||||
+ Compress the generated initramfs using lz4.
|
||||
+[WARNING]
|
||||
+====
|
||||
+Make sure your kernel has lz4 decompression support compiled in, otherwise you
|
||||
+will not be able to boot.
|
||||
+====
|
||||
+
|
||||
**--compress** _<compressor>_::
|
||||
Compress the generated initramfs using the passed compression program. If
|
||||
you pass it just the name of a compression program, it will call that
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index d9533dd..173a259 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -165,6 +165,12 @@ Creates initial ramdisk images for preloading modules
|
||||
--xz Compress the generated initramfs using xz.
|
||||
Make sure that your kernel has xz support compiled
|
||||
in, otherwise you will not be able to boot.
|
||||
+ --lzo Compress the generated initramfs using lzop.
|
||||
+ Make sure that your kernel has lzo support compiled
|
||||
+ in, otherwise you will not be able to boot.
|
||||
+ --lz4 Compress the generated initramfs using lz4.
|
||||
+ Make sure that your kernel has lz4 support compiled
|
||||
+ in, otherwise you will not be able to boot.
|
||||
--compress [COMPRESSION] Compress the generated initramfs with the
|
||||
passed compression program. Make sure your kernel
|
||||
knows how to decompress the generated initramfs,
|
||||
@@ -342,6 +348,8 @@ TEMP=$(unset POSIXLY_CORRECT; getopt \
|
||||
--long bzip2 \
|
||||
--long lzma \
|
||||
--long xz \
|
||||
+ --long lzo \
|
||||
+ --long lz4 \
|
||||
--long no-compress \
|
||||
--long gzip \
|
||||
--long list-modules \
|
||||
@@ -430,6 +438,8 @@ while :; do
|
||||
--bzip2) compress_l="bzip2";;
|
||||
--lzma) compress_l="lzma";;
|
||||
--xz) compress_l="xz";;
|
||||
+ --lzo) compress_l="lzo";;
|
||||
+ --lz4) compress_l="lz4";;
|
||||
--no-compress) _no_compress_l="cat";;
|
||||
--gzip) compress_l="gzip";;
|
||||
--list-modules) do_list="yes";;
|
||||
@@ -673,6 +683,7 @@ stdloglvl=$((stdloglvl + verbosity_mod_l))
|
||||
[[ $fw_dir ]] || fw_dir="/lib/firmware/updates /lib/firmware"
|
||||
[[ $tmpdir_l ]] && tmpdir="$tmpdir_l"
|
||||
[[ $tmpdir ]] || tmpdir=/var/tmp
|
||||
+[[ $INITRD_COMPRESS ]] && compress=$INITRD_COMPRESS
|
||||
[[ $compress_l ]] && compress=$compress_l
|
||||
[[ $show_modules_l ]] && show_modules=$show_modules_l
|
||||
[[ $nofscks_l ]] && nofscks="yes"
|
||||
@@ -689,6 +700,8 @@ case $compress in
|
||||
lzma) compress="lzma -9";;
|
||||
xz) compress="xz --check=crc32 --lzma2=dict=1MiB";;
|
||||
gzip) compress="gzip -9"; command -v pigz > /dev/null 2>&1 && compress="pigz -9";;
|
||||
+ lzo) compress="lzop -9";;
|
||||
+ lz4) compress="lz4 -9";;
|
||||
esac
|
||||
if [[ $_no_compress_l = "cat" ]]; then
|
||||
compress="cat"
|
@ -0,0 +1,23 @@
|
||||
From c84618d7ac5cf87c6efaaca00e52f69dcff954e1 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 4 Feb 2014 12:02:34 +0100
|
||||
Subject: [PATCH] network/ifup: do not run dhclient twice on the same interface
|
||||
|
||||
---
|
||||
modules.d/40network/ifup.sh | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
|
||||
index 3a03d05..33ec81d 100755
|
||||
--- a/modules.d/40network/ifup.sh
|
||||
+++ b/modules.d/40network/ifup.sh
|
||||
@@ -91,6 +91,9 @@ do_dhcp() {
|
||||
# dhclient-script will mark the netif up and generate the online
|
||||
# event for nfsroot
|
||||
# XXX add -V vendor class and option parsing per kernel
|
||||
+
|
||||
+ [ -e /tmp/dhclient.$netif.pid ] && return 0
|
||||
+
|
||||
if ! iface_has_link $netif; then
|
||||
echo "No carrier detected"
|
||||
return 1
|
@ -1,37 +0,0 @@
|
||||
From aabea6f7b9c057571d1869c6974d4c4f42530e7e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 16 Oct 2013 11:30:08 +0200
|
||||
Subject: [PATCH] lvm: fix thin recognition
|
||||
|
||||
The global var setting was happening in a pipe and did not have an
|
||||
effect.
|
||||
|
||||
Use <<<$() instead.
|
||||
|
||||
< <() cannot be used, because dracut is called in chroot's environments,
|
||||
where /dev/fd does not point to /proc/self/fd, but bash wants
|
||||
/dev/fd/<num> for this construct.
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index f8b598d..cbdf4a2 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -57,12 +57,13 @@ install() {
|
||||
inst lvm
|
||||
|
||||
if [[ $hostonly ]]; then
|
||||
- get_host_lvs | while read line; do
|
||||
+ while read line; do
|
||||
+ [[ -n "$line" ]] || continue
|
||||
printf "%s" " rd.lvm.lv=$line"
|
||||
if ! [[ $_needthin ]]; then
|
||||
[[ "$(lvs --noheadings -o segtype ${line%%/*} 2>/dev/null)" == *thin* ]] && _needthin=1
|
||||
fi
|
||||
- done >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
+ done <<<$(get_host_lvs) >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
echo >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
else
|
||||
_needthin=1
|
@ -0,0 +1,23 @@
|
||||
From 81aed4f28eca81b151e2f0ee307a2a487fb2bfcc Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 5 Feb 2014 13:06:29 +0100
|
||||
Subject: [PATCH] nfs/nfsroot: symlink /dev/null to /dev/nfs, as a marker for
|
||||
root=/dev/nfs
|
||||
|
||||
---
|
||||
modules.d/95nfs/nfsroot.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/95nfs/nfsroot.sh b/modules.d/95nfs/nfsroot.sh
|
||||
index f04159e..d0719ef 100755
|
||||
--- a/modules.d/95nfs/nfsroot.sh
|
||||
+++ b/modules.d/95nfs/nfsroot.sh
|
||||
@@ -16,7 +16,7 @@ NEWROOT="$3"
|
||||
nfs_to_var $root $netif
|
||||
[ -z "$server" ] && die "Required parameter 'server' is missing"
|
||||
|
||||
-mount_nfs $root $NEWROOT $netif && { [ -e /dev/root ] || ln -s null /dev/root ; }
|
||||
+mount_nfs $root $NEWROOT $netif && { [ -e /dev/root ] || ln -s null /dev/root ; [ -e /dev/nfs ] || ln -s null /dev/nfs; }
|
||||
|
||||
[ -f $NEWROOT/etc/fstab ] && cat $NEWROOT/etc/fstab > /dev/null
|
||||
|
@ -1,22 +0,0 @@
|
||||
From 68b736b50fbd6bb952d9499296ec70a218e1f5da Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 16 Oct 2013 11:31:54 +0200
|
||||
Subject: [PATCH] dracut.sh: also mkdir /run/lock, which is copied to
|
||||
|
||||
---
|
||||
dracut.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 173a259..a6e3df3 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -1094,7 +1094,7 @@ if [[ $kernel_only != yes ]]; then
|
||||
fi
|
||||
done
|
||||
|
||||
- for d in dev proc sys sysroot root run run/lock run/initramfs; do
|
||||
+ for d in dev proc sys sysroot root run run/log run/lock run/initramfs; do
|
||||
if [ -L "/$d" ]; then
|
||||
inst_symlink "/$d"
|
||||
else
|
@ -0,0 +1,37 @@
|
||||
From 751c7de98af289970e4f827245647080cf2595b3 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 5 Feb 2014 13:08:54 +0100
|
||||
Subject: [PATCH] systemd/dracut-pre-pivot: run for /dev/{nfs,root} and cleanup
|
||||
/dev/nfs
|
||||
|
||||
dracut-pre-pivot was not cleaning up /dev/nfs and did not run to clean
|
||||
up /dev/root.
|
||||
---
|
||||
modules.d/98systemd/dracut-pre-pivot.service | 2 ++
|
||||
modules.d/98systemd/dracut-pre-pivot.sh | 1 +
|
||||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/modules.d/98systemd/dracut-pre-pivot.service b/modules.d/98systemd/dracut-pre-pivot.service
|
||||
index dd4e49b..6db1f2c 100644
|
||||
--- a/modules.d/98systemd/dracut-pre-pivot.service
|
||||
+++ b/modules.d/98systemd/dracut-pre-pivot.service
|
||||
@@ -19,6 +19,8 @@ ConditionDirectoryNotEmpty=|/lib/dracut/hooks/cleanup
|
||||
ConditionKernelCommandLine=|rd.break=pre-pivot
|
||||
ConditionKernelCommandLine=|rd.break=cleanup
|
||||
ConditionKernelCommandLine=|rd.break
|
||||
+ConditionPathExists=|/dev/root
|
||||
+ConditionPathExists=|/dev/nfs
|
||||
|
||||
[Service]
|
||||
Environment=DRACUT_SYSTEMD=1
|
||||
diff --git a/modules.d/98systemd/dracut-pre-pivot.sh b/modules.d/98systemd/dracut-pre-pivot.sh
|
||||
index 8c7554e..e62a1ce 100755
|
||||
--- a/modules.d/98systemd/dracut-pre-pivot.sh
|
||||
+++ b/modules.d/98systemd/dracut-pre-pivot.sh
|
||||
@@ -24,5 +24,6 @@ getarg rd.break -d rdbreak && emergency_shell -n switch_root "Break before switc
|
||||
|
||||
# remove helper symlink
|
||||
[ -h /dev/root ] && rm -f -- /dev/root
|
||||
+[ -h /dev/nfs ] && rm -f -- /dev/nfs
|
||||
|
||||
exit 0
|
102
0013-Do-not-reload-systemd-with-wait_for_dev.patch
Normal file
102
0013-Do-not-reload-systemd-with-wait_for_dev.patch
Normal file
@ -0,0 +1,102 @@
|
||||
From 352d557d4d94042e321b4acc81eeab8691e19f42 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 5 Feb 2014 13:12:29 +0100
|
||||
Subject: [PATCH] Do not reload systemd with wait_for_dev
|
||||
|
||||
---
|
||||
modules.d/90dmsquash-live/dmsquash-live-genrules.sh | 2 +-
|
||||
modules.d/90dmsquash-live/parse-dmsquash-live.sh | 2 +-
|
||||
modules.d/90livenet/parse-livenet.sh | 2 +-
|
||||
modules.d/90lvm/parse-lvm.sh | 2 +-
|
||||
modules.d/95iscsi/iscsiroot.sh | 2 +-
|
||||
modules.d/95nbd/nbdroot.sh | 2 +-
|
||||
modules.d/95nbd/parse-nbdroot.sh | 2 +-
|
||||
7 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-genrules.sh b/modules.d/90dmsquash-live/dmsquash-live-genrules.sh
|
||||
index b27fccc..0f51ed4 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-genrules.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-genrules.sh
|
||||
@@ -9,7 +9,7 @@ case "$root" in
|
||||
printf 'SYMLINK=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/dmsquash-live-root $env{DEVNAME}"\n' \
|
||||
${root#live:/dev/}
|
||||
} >> /etc/udev/rules.d/99-live-squash.rules
|
||||
- wait_for_dev "${root#live:}"
|
||||
+ wait_for_dev -n "${root#live:}"
|
||||
;;
|
||||
live:*)
|
||||
if [ -f "${root#live:}" ]; then
|
||||
diff --git a/modules.d/90dmsquash-live/parse-dmsquash-live.sh b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
index a5564e2..6e54dfe 100755
|
||||
--- a/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
+++ b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
@@ -56,4 +56,4 @@ info "root was $liveroot, is now $root"
|
||||
# make sure that init doesn't complain
|
||||
[ -z "$root" ] && root="live"
|
||||
|
||||
-wait_for_dev /dev/mapper/live-rw
|
||||
+wait_for_dev -n /dev/mapper/live-rw
|
||||
diff --git a/modules.d/90livenet/parse-livenet.sh b/modules.d/90livenet/parse-livenet.sh
|
||||
index 6c847ba..a6b2842 100755
|
||||
--- a/modules.d/90livenet/parse-livenet.sh
|
||||
+++ b/modules.d/90livenet/parse-livenet.sh
|
||||
@@ -27,7 +27,7 @@ if get_url_handler "$liveurl" >/dev/null; then
|
||||
netroot="livenet:$liveurl"
|
||||
root="livenet" # quiet complaints from init
|
||||
rootok=1
|
||||
- wait_for_dev /dev/root
|
||||
+ wait_for_dev -n /dev/root
|
||||
else
|
||||
info "livenet: no url handler for $liveurl"
|
||||
fi
|
||||
diff --git a/modules.d/90lvm/parse-lvm.sh b/modules.d/90lvm/parse-lvm.sh
|
||||
index 74e1d43..d69cb45 100755
|
||||
--- a/modules.d/90lvm/parse-lvm.sh
|
||||
+++ b/modules.d/90lvm/parse-lvm.sh
|
||||
@@ -13,7 +13,7 @@ if ! getargbool 1 rd.lvm -d -n rd_NO_LVM \
|
||||
rm -f -- /etc/udev/rules.d/64-lvm*.rules
|
||||
else
|
||||
for dev in $LV_DEVS; do
|
||||
- wait_for_dev "/dev/$dev"
|
||||
+ wait_for_dev -n "/dev/$dev"
|
||||
done
|
||||
fi
|
||||
|
||||
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
|
||||
index 769124f..c56d54d 100755
|
||||
--- a/modules.d/95iscsi/iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/iscsiroot.sh
|
||||
@@ -156,7 +156,7 @@ handle_netroot()
|
||||
printf 'SYMLINK=="disk/by-path/*-iscsi-*-%s", SYMLINK+="root"\n' $iscsi_lun >> /etc/udev/rules.d/99-iscsi-root.rules
|
||||
udevadm control --reload
|
||||
write_fs_tab /dev/root
|
||||
- wait_for_dev /dev/root
|
||||
+ wait_for_dev -n /dev/root
|
||||
|
||||
# install mount script
|
||||
[ -z "$DRACUT_SYSTEMD" ] && \
|
||||
diff --git a/modules.d/95nbd/nbdroot.sh b/modules.d/95nbd/nbdroot.sh
|
||||
index 2e9d917..32f346d 100755
|
||||
--- a/modules.d/95nbd/nbdroot.sh
|
||||
+++ b/modules.d/95nbd/nbdroot.sh
|
||||
@@ -102,7 +102,7 @@ if [ "$root" = "block:/dev/root" -o "$root" = "dhcp" ]; then
|
||||
udevadm control --reload
|
||||
type write_fs_tab >/dev/null 2>&1 || . /lib/fs-lib.sh
|
||||
write_fs_tab /dev/root "$nbdfstype" "$fsopts"
|
||||
- wait_for_dev /dev/root
|
||||
+ wait_for_dev -n /dev/root
|
||||
|
||||
if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
printf '/bin/mount %s\n' \
|
||||
diff --git a/modules.d/95nbd/parse-nbdroot.sh b/modules.d/95nbd/parse-nbdroot.sh
|
||||
index 49c44b6..fe5a7fa 100755
|
||||
--- a/modules.d/95nbd/parse-nbdroot.sh
|
||||
+++ b/modules.d/95nbd/parse-nbdroot.sh
|
||||
@@ -61,6 +61,6 @@ rootok=1
|
||||
# Shut up init error check
|
||||
if [ -z "$root" ]; then
|
||||
root=block:/dev/root
|
||||
- wait_for_dev /dev/root
|
||||
+ wait_for_dev -n /dev/root
|
||||
fi
|
||||
|
@ -1,22 +0,0 @@
|
||||
From 8d89fc6bb1b5b1f4c8be0694a1e1200a09ae07d1 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 16 Oct 2013 11:39:17 +0200
|
||||
Subject: [PATCH] dracut.sh: no need to make subdirs in run
|
||||
|
||||
---
|
||||
dracut.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index a6e3df3..4613d5b 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -1094,7 +1094,7 @@ if [[ $kernel_only != yes ]]; then
|
||||
fi
|
||||
done
|
||||
|
||||
- for d in dev proc sys sysroot root run run/log run/lock run/initramfs; do
|
||||
+ for d in dev proc sys sysroot root run; do
|
||||
if [ -L "/$d" ]; then
|
||||
inst_symlink "/$d"
|
||||
else
|
@ -1,36 +0,0 @@
|
||||
From 879546753341a9b2b1ad391a14ebe9fd3f6c27c4 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 16 Oct 2013 11:39:34 +0200
|
||||
Subject: [PATCH] network/fcoe: only redirect output to loginit.pipe, if exists
|
||||
|
||||
---
|
||||
modules.d/40network/dhclient-script.sh | 2 +-
|
||||
modules.d/95fcoe/fcoe-up.sh | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/40network/dhclient-script.sh b/modules.d/40network/dhclient-script.sh
|
||||
index 07c3d9b..af483ac 100755
|
||||
--- a/modules.d/40network/dhclient-script.sh
|
||||
+++ b/modules.d/40network/dhclient-script.sh
|
||||
@@ -48,7 +48,7 @@ setup_interface() {
|
||||
PATH=/usr/sbin:/usr/bin:/sbin:/bin
|
||||
|
||||
export PS4="dhclient.$interface.$$ + "
|
||||
-exec >>/run/initramfs/loginit.pipe 2>>/run/initramfs/loginit.pipe
|
||||
+[ -e /run/initramfs/loginit.pipe ] && exec >>/run/initramfs/loginit.pipe 2>>/run/initramfs/loginit.pipe
|
||||
type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
type ip_to_var >/dev/null 2>&1 || . /lib/net-lib.sh
|
||||
|
||||
diff --git a/modules.d/95fcoe/fcoe-up.sh b/modules.d/95fcoe/fcoe-up.sh
|
||||
index ecb1593..8cf39ec 100755
|
||||
--- a/modules.d/95fcoe/fcoe-up.sh
|
||||
+++ b/modules.d/95fcoe/fcoe-up.sh
|
||||
@@ -14,7 +14,7 @@ PATH=/usr/sbin:/usr/bin:/sbin:/bin
|
||||
[ -z "$1" -o -z "$2" ] && exit 1
|
||||
|
||||
export PS4="fcoe-up.$1.$$ + "
|
||||
-exec >>/run/initramfs/loginit.pipe 2>>/run/initramfs/loginit.pipe
|
||||
+[ -e /run/initramfs/loginit.pipe ] && exec >>/run/initramfs/loginit.pipe 2>>/run/initramfs/loginit.pipe
|
||||
type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
type ip_to_var >/dev/null 2>&1 || . /lib/net-lib.sh
|
||||
|
31
0014-systemd-add-sys-kernel-config.mount.patch
Normal file
31
0014-systemd-add-sys-kernel-config.mount.patch
Normal file
@ -0,0 +1,31 @@
|
||||
From 8d21728942b52f1fe258ab63acfa5a0542d8b1fc Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 5 Feb 2014 13:58:33 +0100
|
||||
Subject: [PATCH] systemd: add sys-kernel-config.mount
|
||||
|
||||
---
|
||||
modules.d/98systemd/module-setup.sh | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh
|
||||
index d625ea0..036f1c1 100755
|
||||
--- a/modules.d/98systemd/module-setup.sh
|
||||
+++ b/modules.d/98systemd/module-setup.sh
|
||||
@@ -44,6 +44,7 @@ install() {
|
||||
$systemdutildir/systemd-modules-load \
|
||||
$systemdutildir/systemd-vconsole-setup \
|
||||
$systemdutildir/system-generators/systemd-fstab-generator \
|
||||
+ \
|
||||
$systemdsystemunitdir/cryptsetup.target \
|
||||
$systemdsystemunitdir/emergency.target \
|
||||
$systemdsystemunitdir/sysinit.target \
|
||||
@@ -72,6 +73,9 @@ install() {
|
||||
$systemdsystemunitdir/timers.target \
|
||||
$systemdsystemunitdir/paths.target \
|
||||
$systemdsystemunitdir/umount.target \
|
||||
+ \
|
||||
+ $systemdsystemunitdir/sys-kernel-config.mount \
|
||||
+ \
|
||||
$systemdsystemunitdir/kmod-static-nodes.service \
|
||||
$systemdsystemunitdir/systemd-tmpfiles-setup-dev.service \
|
||||
$systemdsystemunitdir/systemd-ask-password-console.path \
|
735
0015-Factor-out-all-the-type-V-commands.patch
Normal file
735
0015-Factor-out-all-the-type-V-commands.patch
Normal file
@ -0,0 +1,735 @@
|
||||
From 30e6e809ed8d189cc8374df3c28cfbcab5a299b9 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 6 Feb 2014 16:45:20 +0100
|
||||
Subject: [PATCH] Factor out all the "type -V" commands
|
||||
|
||||
Add new functions require_binaries() and require_any_binary() to be used
|
||||
in the check() section of module-setup.sh.
|
||||
|
||||
These functions print a warning line telling the user, which binary is
|
||||
missing for the specific dracut module.
|
||||
|
||||
This unifies the way of checking for binaries and makes the life of an
|
||||
initramfs creator easier, if he wants to find out why a specific dracut
|
||||
module is not included in the initramfs.
|
||||
---
|
||||
dracut-functions.sh | 57 ++++++++++++++++++++++++---
|
||||
modules.d/00bash/module-setup.sh | 2 +-
|
||||
modules.d/00bootchart/module-setup.sh | 2 +-
|
||||
modules.d/00dash/module-setup.sh | 2 +-
|
||||
modules.d/00systemd-bootchart/module-setup.sh | 2 +-
|
||||
modules.d/02caps/module-setup.sh | 14 ++++---
|
||||
modules.d/03modsign/module-setup.sh | 2 +-
|
||||
modules.d/05busybox/module-setup.sh | 2 +-
|
||||
modules.d/10i18n/module-setup.sh | 4 +-
|
||||
modules.d/40network/module-setup.sh | 7 +---
|
||||
modules.d/45url-lib/module-setup.sh | 2 +-
|
||||
modules.d/50plymouth/module-setup.sh | 2 +-
|
||||
modules.d/90btrfs/module-setup.sh | 2 +-
|
||||
modules.d/90crypt/module-setup.sh | 2 +-
|
||||
modules.d/90dm/module-setup.sh | 2 +-
|
||||
modules.d/90dmraid/module-setup.sh | 2 +-
|
||||
modules.d/90lvm/module-setup.sh | 2 +-
|
||||
modules.d/90mdraid/module-setup.sh | 2 +-
|
||||
modules.d/90multipath/module-setup.sh | 2 +-
|
||||
modules.d/91crypt-gpg/module-setup.sh | 2 +-
|
||||
modules.d/91crypt-loop/module-setup.sh | 20 ++++++----
|
||||
modules.d/95cifs/module-setup.sh | 2 +-
|
||||
modules.d/95dasd/module-setup.sh | 2 +-
|
||||
modules.d/95dasd_mod/module-setup.sh | 1 +
|
||||
modules.d/95dasd_rules/module-setup.sh | 2 +-
|
||||
modules.d/95fcoe-uefi/module-setup.sh | 4 +-
|
||||
modules.d/95fcoe/module-setup.sh | 5 +--
|
||||
modules.d/95iscsi/module-setup.sh | 2 +-
|
||||
modules.d/95nbd/module-setup.sh | 2 +-
|
||||
modules.d/95nfs/module-setup.sh | 4 +-
|
||||
modules.d/95ssh-client/module-setup.sh | 6 +--
|
||||
modules.d/95udev-rules/module-setup.sh | 2 +-
|
||||
modules.d/95zfcp/module-setup.sh | 3 +-
|
||||
modules.d/95zfcp_rules/module-setup.sh | 2 +-
|
||||
modules.d/95znet/module-setup.sh | 3 +-
|
||||
modules.d/97biosdevname/module-setup.sh | 2 +-
|
||||
modules.d/97masterkey/module-setup.sh | 2 +-
|
||||
modules.d/98systemd/module-setup.sh | 2 +-
|
||||
modules.d/99img-lib/module-setup.sh | 4 +-
|
||||
39 files changed, 113 insertions(+), 71 deletions(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index c766ca3..32f264b 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -35,6 +35,51 @@ fi
|
||||
# Generic substring function. If $2 is in $1, return 0.
|
||||
strstr() { [[ $1 = *$2* ]]; }
|
||||
|
||||
+# helper function for check() in module-setup.sh
|
||||
+# to check for required installed binaries
|
||||
+# issues a standardized warning message
|
||||
+require_binaries() {
|
||||
+ local _module_name="${moddir##*/}"
|
||||
+ local _ret=0
|
||||
+
|
||||
+ if [[ "$1" = "-m" ]]; then
|
||||
+ _module_name="$2"
|
||||
+ shift 2
|
||||
+ fi
|
||||
+
|
||||
+ for cmd in "$@"; do
|
||||
+ if ! find_binary "$cmd" &>/dev/null; then
|
||||
+ dwarning "$_module_name: Could not find command '$cmd'!"
|
||||
+ ((_ret++))
|
||||
+ fi
|
||||
+ done
|
||||
+ return $_ret
|
||||
+}
|
||||
+
|
||||
+require_any_binary() {
|
||||
+ local _module_name="${moddir##*/}"
|
||||
+ local _ret=1
|
||||
+
|
||||
+ if [[ "$1" = "-m" ]]; then
|
||||
+ _module_name="$2"
|
||||
+ shift 2
|
||||
+ fi
|
||||
+
|
||||
+ for cmd in "$@"; do
|
||||
+ if find_binary "$cmd" &>/dev/null; then
|
||||
+ _ret=0
|
||||
+ break
|
||||
+ fi
|
||||
+ done
|
||||
+
|
||||
+ if (( $_ret != 0 )); then
|
||||
+ dwarning "$_module_name: Could not find any command of '$@'!"
|
||||
+ return 1
|
||||
+ fi
|
||||
+
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
# find a binary. If we were not passed the full path directly,
|
||||
# search in the usual places to find the binary.
|
||||
find_binary() {
|
||||
@@ -1084,7 +1129,7 @@ module_check() {
|
||||
. $_moddir/module-setup.sh
|
||||
is_func check || return 0
|
||||
[ $_forced -ne 0 ] && unset hostonly
|
||||
- check $hostonly
|
||||
+ moddir=$_moddir check $hostonly
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
fi
|
||||
@@ -1110,7 +1155,7 @@ module_check_mount() {
|
||||
unset check depends cmdline install installkernel
|
||||
check() { false; }
|
||||
. $_moddir/module-setup.sh
|
||||
- check 0
|
||||
+ moddir=$_moddir check 0
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
fi
|
||||
@@ -1134,7 +1179,7 @@ module_depends() {
|
||||
unset check depends cmdline install installkernel
|
||||
depends() { true; }
|
||||
. $_moddir/module-setup.sh
|
||||
- depends
|
||||
+ moddir=$_moddir depends
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
return $_ret
|
||||
@@ -1155,7 +1200,7 @@ module_cmdline() {
|
||||
unset check depends cmdline install installkernel
|
||||
cmdline() { true; }
|
||||
. $_moddir/module-setup.sh
|
||||
- cmdline
|
||||
+ moddir=$_moddir cmdline
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
return $_ret
|
||||
@@ -1176,7 +1221,7 @@ module_install() {
|
||||
unset check depends cmdline install installkernel
|
||||
install() { true; }
|
||||
. $_moddir/module-setup.sh
|
||||
- install
|
||||
+ moddir=$_moddir install
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
return $_ret
|
||||
@@ -1197,7 +1242,7 @@ module_installkernel() {
|
||||
unset check depends cmdline install installkernel
|
||||
installkernel() { true; }
|
||||
. $_moddir/module-setup.sh
|
||||
- installkernel
|
||||
+ moddir=$_moddir installkernel
|
||||
_ret=$?
|
||||
unset check depends cmdline install installkernel
|
||||
return $_ret
|
||||
diff --git a/modules.d/00bash/module-setup.sh b/modules.d/00bash/module-setup.sh
|
||||
index f599940..e8fc115 100755
|
||||
--- a/modules.d/00bash/module-setup.sh
|
||||
+++ b/modules.d/00bash/module-setup.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- [ -x /bin/bash ]
|
||||
+ require_binaries /bin/bash
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
diff --git a/modules.d/00bootchart/module-setup.sh b/modules.d/00bootchart/module-setup.sh
|
||||
index 107ee5b..95e5c4b 100755
|
||||
--- a/modules.d/00bootchart/module-setup.sh
|
||||
+++ b/modules.d/00bootchart/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ "$mount_needs" ]] && return 1
|
||||
- [ -x /sbin/bootchartd ] || return 1
|
||||
+ require_binaries /sbin/bootchartd || return 1
|
||||
return 255
|
||||
}
|
||||
|
||||
diff --git a/modules.d/00dash/module-setup.sh b/modules.d/00dash/module-setup.sh
|
||||
index 47f7b03..8f7deec 100755
|
||||
--- a/modules.d/00dash/module-setup.sh
|
||||
+++ b/modules.d/00dash/module-setup.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- [ -x /bin/dash ]
|
||||
+ require_binaries /bin/dash
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
diff --git a/modules.d/00systemd-bootchart/module-setup.sh b/modules.d/00systemd-bootchart/module-setup.sh
|
||||
index a897cef..5cca254 100755
|
||||
--- a/modules.d/00systemd-bootchart/module-setup.sh
|
||||
+++ b/modules.d/00systemd-bootchart/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ "$mount_needs" ]] && return 1
|
||||
- [ -x $systemdutildir/systemd-bootchart ] || return 1
|
||||
+ require_binaries $systemdutildir/systemd-bootchart || return 1
|
||||
return 255
|
||||
}
|
||||
|
||||
diff --git a/modules.d/02caps/module-setup.sh b/modules.d/02caps/module-setup.sh
|
||||
index 6019188..46e35a0 100755
|
||||
--- a/modules.d/02caps/module-setup.sh
|
||||
+++ b/modules.d/02caps/module-setup.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- type -P capsh >/dev/null 2>&1
|
||||
+ require_binaries capsh
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
@@ -14,9 +14,13 @@ depends() {
|
||||
|
||||
# called by dracut
|
||||
install() {
|
||||
- inst_hook pre-pivot 00 "$moddir/caps.sh"
|
||||
- inst $(type -P capsh 2>/dev/null) /usr/sbin/capsh
|
||||
- # capsh wants bash and we need bash also
|
||||
- inst /bin/bash
|
||||
+ if ! dracut_module_included "systemd"; then
|
||||
+ inst_hook pre-pivot 00 "$moddir/caps.sh"
|
||||
+ inst $(type -P capsh 2>/dev/null) /usr/sbin/capsh
|
||||
+ # capsh wants bash and we need bash also
|
||||
+ inst /bin/bash
|
||||
+ else
|
||||
+ dwarning "caps: does not work with systemd in the initramfs"
|
||||
+ fi
|
||||
}
|
||||
|
||||
diff --git a/modules.d/03modsign/module-setup.sh b/modules.d/03modsign/module-setup.sh
|
||||
index 5dfd90c..09285d3 100755
|
||||
--- a/modules.d/03modsign/module-setup.sh
|
||||
+++ b/modules.d/03modsign/module-setup.sh
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- [[ -x /usr/bin/keyctl ]] || return 1
|
||||
+ require_binaries keyctl || return 1
|
||||
|
||||
# do not include module in hostonly mode,
|
||||
# if no keys are present
|
||||
diff --git a/modules.d/05busybox/module-setup.sh b/modules.d/05busybox/module-setup.sh
|
||||
index 6e508a6..228ff8c 100755
|
||||
--- a/modules.d/05busybox/module-setup.sh
|
||||
+++ b/modules.d/05busybox/module-setup.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- type -P busybox >/dev/null || return 1
|
||||
+ require_binaries busybox || return 1
|
||||
|
||||
return 255
|
||||
}
|
||||
diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh
|
||||
index fcb18d1..a091f89 100755
|
||||
--- a/modules.d/10i18n/module-setup.sh
|
||||
+++ b/modules.d/10i18n/module-setup.sh
|
||||
@@ -6,9 +6,7 @@
|
||||
check() {
|
||||
[[ "$mount_needs" ]] && return 1
|
||||
|
||||
- for i in setfont loadkeys kbd_mode; do
|
||||
- type -P "$i" >/dev/null || return 1
|
||||
- done
|
||||
+ require_binaries setfont loadkeys kbd_mode || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
|
||||
index 48afc5a..1df4174 100755
|
||||
--- a/modules.d/40network/module-setup.sh
|
||||
+++ b/modules.d/40network/module-setup.sh
|
||||
@@ -6,12 +6,7 @@
|
||||
check() {
|
||||
local _program
|
||||
|
||||
- for _program in ip arping dhclient ; do
|
||||
- if ! type -P $_program >/dev/null; then
|
||||
- derror "Could not find program \"$_program\" required by network."
|
||||
- return 1
|
||||
- fi
|
||||
- done
|
||||
+ require_binaries ip arping dhclient || return 1
|
||||
|
||||
return 255
|
||||
}
|
||||
diff --git a/modules.d/45url-lib/module-setup.sh b/modules.d/45url-lib/module-setup.sh
|
||||
index 1ed97ac..1b785c2 100755
|
||||
--- a/modules.d/45url-lib/module-setup.sh
|
||||
+++ b/modules.d/45url-lib/module-setup.sh
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- command -v curl >/dev/null || return 1
|
||||
+ require_binaries curl || return 1
|
||||
return 255
|
||||
}
|
||||
|
||||
diff --git a/modules.d/50plymouth/module-setup.sh b/modules.d/50plymouth/module-setup.sh
|
||||
index 1360924..b818324 100755
|
||||
--- a/modules.d/50plymouth/module-setup.sh
|
||||
+++ b/modules.d/50plymouth/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ "$mount_needs" ]] && return 1
|
||||
- type -P plymouthd >/dev/null && type -P plymouth >/dev/null
|
||||
+ require_binaries plymouthd plymouth
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
diff --git a/modules.d/90btrfs/module-setup.sh b/modules.d/90btrfs/module-setup.sh
|
||||
index 80a538f..406fd6d 100755
|
||||
--- a/modules.d/90btrfs/module-setup.sh
|
||||
+++ b/modules.d/90btrfs/module-setup.sh
|
||||
@@ -7,7 +7,7 @@ check() {
|
||||
local _rootdev
|
||||
# if we don't have btrfs installed on the host system,
|
||||
# no point in trying to support it in the initramfs.
|
||||
- type -P btrfs >/dev/null || return 1
|
||||
+ require_binaries btrfs || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in ${host_fs_types[@]}; do
|
||||
diff --git a/modules.d/90crypt/module-setup.sh b/modules.d/90crypt/module-setup.sh
|
||||
index 7d18e33..21d49c4 100755
|
||||
--- a/modules.d/90crypt/module-setup.sh
|
||||
+++ b/modules.d/90crypt/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
check() {
|
||||
local _rootdev
|
||||
# if cryptsetup is not installed, then we cannot support encrypted devices.
|
||||
- type -P cryptsetup >/dev/null || return 1
|
||||
+ require_binaries cryptsetup || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in "${host_fs_types[@]}"; do
|
||||
diff --git a/modules.d/90dm/module-setup.sh b/modules.d/90dm/module-setup.sh
|
||||
index bafad67..829c24b 100755
|
||||
--- a/modules.d/90dm/module-setup.sh
|
||||
+++ b/modules.d/90dm/module-setup.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- type -P dmsetup >/dev/null || return 1
|
||||
+ require_binaries dmsetup || return 1
|
||||
return 255
|
||||
}
|
||||
|
||||
diff --git a/modules.d/90dmraid/module-setup.sh b/modules.d/90dmraid/module-setup.sh
|
||||
index a9e27a6..d3888a4 100755
|
||||
--- a/modules.d/90dmraid/module-setup.sh
|
||||
+++ b/modules.d/90dmraid/module-setup.sh
|
||||
@@ -7,7 +7,7 @@ check() {
|
||||
local _rootdev
|
||||
# if we don't have dmraid installed on the host system, no point
|
||||
# in trying to support it in the initramfs.
|
||||
- type -P dmraid >/dev/null || return 1
|
||||
+ require_binaries dmraid || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for dev in "${!host_fs_types[@]}"; do
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index a64e5d6..357797f 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
# No point trying to support lvm if the binaries are missing
|
||||
- type -P lvm >/dev/null || return 1
|
||||
+ require_binaries lvm || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in "${host_fs_types[@]}"; do
|
||||
diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh
|
||||
index 61483f2..7d72098 100755
|
||||
--- a/modules.d/90mdraid/module-setup.sh
|
||||
+++ b/modules.d/90mdraid/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
check() {
|
||||
local _rootdev
|
||||
# No mdadm? No mdraid support.
|
||||
- type -P mdadm >/dev/null || return 1
|
||||
+ require_binaries mdadm || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for dev in "${!host_fs_types[@]}"; do
|
||||
diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh
|
||||
index 261a957..b60cc60 100755
|
||||
--- a/modules.d/90multipath/module-setup.sh
|
||||
+++ b/modules.d/90multipath/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
check() {
|
||||
local _rootdev
|
||||
# if there's no multipath binary, no go.
|
||||
- type -P multipath >/dev/null || return 1
|
||||
+ require_binaries multipath || return 1
|
||||
|
||||
is_mpath() {
|
||||
local _dev=$1
|
||||
diff --git a/modules.d/91crypt-gpg/module-setup.sh b/modules.d/91crypt-gpg/module-setup.sh
|
||||
index 90c7bc2..b2154f0 100755
|
||||
--- a/modules.d/91crypt-gpg/module-setup.sh
|
||||
+++ b/modules.d/91crypt-gpg/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# GPG support is optional
|
||||
# called by dracut
|
||||
check() {
|
||||
- type -P gpg >/dev/null || return 1
|
||||
+ require_binaries gpg || return 1
|
||||
|
||||
return 255
|
||||
}
|
||||
diff --git a/modules.d/91crypt-loop/module-setup.sh b/modules.d/91crypt-loop/module-setup.sh
|
||||
index 00052d3..93ae92e 100644
|
||||
--- a/modules.d/91crypt-loop/module-setup.sh
|
||||
+++ b/modules.d/91crypt-loop/module-setup.sh
|
||||
@@ -1,23 +1,27 @@
|
||||
+#!/bin/bash
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
# called by dracut
|
||||
check() {
|
||||
- type -P losetup >/dev/null || return 1
|
||||
-
|
||||
- return 255
|
||||
+ require_binaries losetup || return 1
|
||||
+
|
||||
+ return 255
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
- echo crypt
|
||||
+ echo crypt
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
installkernel() {
|
||||
- instmods loop
|
||||
+ instmods loop
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
install() {
|
||||
- inst_multiple losetup
|
||||
- inst "$moddir/crypt-loop-lib.sh" "/lib/dracut-crypt-loop-lib.sh"
|
||||
- dracut_need_initqueue
|
||||
+ inst_multiple losetup
|
||||
+ inst "$moddir/crypt-loop-lib.sh" "/lib/dracut-crypt-loop-lib.sh"
|
||||
+ dracut_need_initqueue
|
||||
}
|
||||
diff --git a/modules.d/95cifs/module-setup.sh b/modules.d/95cifs/module-setup.sh
|
||||
index 546d2ff..8f5a3bf 100755
|
||||
--- a/modules.d/95cifs/module-setup.sh
|
||||
+++ b/modules.d/95cifs/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
# If our prerequisites are not met, fail anyways.
|
||||
- type -P mount.cifs >/dev/null || return 1
|
||||
+ require_binaries mount.cifs || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in ${host_fs_types[@]}; do
|
||||
diff --git a/modules.d/95dasd/module-setup.sh b/modules.d/95dasd/module-setup.sh
|
||||
index 9c93d40..da0f3c0 100755
|
||||
--- a/modules.d/95dasd/module-setup.sh
|
||||
+++ b/modules.d/95dasd/module-setup.sh
|
||||
@@ -5,8 +5,8 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
local _arch=$(uname -m)
|
||||
- [ -x /sbin/normalize_dasd_arg ] || return 1
|
||||
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ require_binaries normalize_dasd_arg || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95dasd_mod/module-setup.sh b/modules.d/95dasd_mod/module-setup.sh
|
||||
index 8fde525..bee4998 100755
|
||||
--- a/modules.d/95dasd_mod/module-setup.sh
|
||||
+++ b/modules.d/95dasd_mod/module-setup.sh
|
||||
@@ -6,6 +6,7 @@
|
||||
check() {
|
||||
local _arch=$(uname -m)
|
||||
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ require_binaries grep sed seq
|
||||
|
||||
return 0
|
||||
}
|
||||
diff --git a/modules.d/95dasd_rules/module-setup.sh b/modules.d/95dasd_rules/module-setup.sh
|
||||
index d313171..51c315d 100755
|
||||
--- a/modules.d/95dasd_rules/module-setup.sh
|
||||
+++ b/modules.d/95dasd_rules/module-setup.sh
|
||||
@@ -5,8 +5,8 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
local _arch=$(uname -m)
|
||||
- [ -x /sbin/dasd_configure ] || return 1
|
||||
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ require_binaries dasd_configure /usr/lib/udev/collect || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
index c91f775..0fb06e2 100755
|
||||
--- a/modules.d/95fcoe-uefi/module-setup.sh
|
||||
+++ b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
@@ -4,9 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- for i in dcbtool fipvlan lldpad ip readlink; do
|
||||
- type -P $i >/dev/null || return 1
|
||||
- done
|
||||
+ require_binaries dcbtool fipvlan lldpad ip readlink || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh
|
||||
index 539c464..c502ba0 100755
|
||||
--- a/modules.d/95fcoe/module-setup.sh
|
||||
+++ b/modules.d/95fcoe/module-setup.sh
|
||||
@@ -4,10 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- for i in dcbtool fipvlan lldpad ip readlink; do
|
||||
- type -P $i >/dev/null || return 1
|
||||
- done
|
||||
-
|
||||
+ require_binaries dcbtool fipvlan lldpad ip readlink || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
||||
index 8379f4b..1b0f292 100755
|
||||
--- a/modules.d/95iscsi/module-setup.sh
|
||||
+++ b/modules.d/95iscsi/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
check() {
|
||||
local _rootdev
|
||||
# If our prerequisites are not met, fail anyways.
|
||||
- type -P iscsistart hostname iscsi-iname >/dev/null || return 1
|
||||
+ require_binaries iscsistart hostname iscsi-iname || return 1
|
||||
|
||||
# If hostonly was requested, fail the check if we are not actually
|
||||
# booting from root.
|
||||
diff --git a/modules.d/95nbd/module-setup.sh b/modules.d/95nbd/module-setup.sh
|
||||
index 37ace21..e62f290 100755
|
||||
--- a/modules.d/95nbd/module-setup.sh
|
||||
+++ b/modules.d/95nbd/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
check() {
|
||||
local _rootdev
|
||||
# If our prerequisites are not met, fail.
|
||||
- type -P nbd-client >/dev/null || return 1
|
||||
+ require_binaries nbd-client || return 1
|
||||
|
||||
# if an nbd device is not somewhere in the chain of devices root is
|
||||
# mounted on, fail the hostonly check.
|
||||
diff --git a/modules.d/95nfs/module-setup.sh b/modules.d/95nfs/module-setup.sh
|
||||
index 345810a..dabf3b0 100755
|
||||
--- a/modules.d/95nfs/module-setup.sh
|
||||
+++ b/modules.d/95nfs/module-setup.sh
|
||||
@@ -5,8 +5,8 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
# If our prerequisites are not met, fail anyways.
|
||||
- type -P rpcbind >/dev/null || type -P portmap >/dev/null || return 1
|
||||
- type -P rpc.statd mount.nfs mount.nfs4 umount >/dev/null || return 1
|
||||
+ require_any_binary rpcbind portmap || return 1
|
||||
+ require_binaries rpc.statd mount.nfs mount.nfs4 umount || return 1
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
for fs in ${host_fs_types[@]}; do
|
||||
diff --git a/modules.d/95ssh-client/module-setup.sh b/modules.d/95ssh-client/module-setup.sh
|
||||
index 1f2b733..2e3c505 100755
|
||||
--- a/modules.d/95ssh-client/module-setup.sh
|
||||
+++ b/modules.d/95ssh-client/module-setup.sh
|
||||
@@ -6,11 +6,11 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- # If our prerequisites are not met, fail.
|
||||
- type -P ssh >/dev/null || return 1
|
||||
- type -P scp >/dev/null || return 1
|
||||
[[ $mount_needs ]] && return 1
|
||||
|
||||
+ # If our prerequisites are not met, fail.
|
||||
+ require_binaries ssh scp || return 1
|
||||
+
|
||||
if [[ $sshkey ]]; then
|
||||
[ ! -f $sshkey ] && {
|
||||
derror "ssh key: $sshkey is not found!"
|
||||
diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh
|
||||
index ebc4447..584d5c8 100755
|
||||
--- a/modules.d/95udev-rules/module-setup.sh
|
||||
+++ b/modules.d/95udev-rules/module-setup.sh
|
||||
@@ -6,7 +6,7 @@
|
||||
install() {
|
||||
local _i
|
||||
|
||||
- # Fixme: would be nice if we didn't have to know which rules to grab....
|
||||
+ # Fixme: would be nice if we didn't have to guess, which rules to grab....
|
||||
# ultimately, /lib/initramfs/rules.d or somesuch which includes links/copies
|
||||
# of the rules we want so that we just copy those in would be best
|
||||
inst_multiple udevadm cat uname blkid \
|
||||
diff --git a/modules.d/95zfcp/module-setup.sh b/modules.d/95zfcp/module-setup.sh
|
||||
index dfbeed5..b96ccd2 100755
|
||||
--- a/modules.d/95zfcp/module-setup.sh
|
||||
+++ b/modules.d/95zfcp/module-setup.sh
|
||||
@@ -5,9 +5,10 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
arch=$(uname -m)
|
||||
- [ -x /sbin/zfcp_cio_free ] || return 1
|
||||
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
||||
|
||||
+ require_binaries zfcp_cio_free grep sed seq || return 1
|
||||
+
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95zfcp_rules/module-setup.sh b/modules.d/95zfcp_rules/module-setup.sh
|
||||
index 9a1ab20..d9879cb 100755
|
||||
--- a/modules.d/95zfcp_rules/module-setup.sh
|
||||
+++ b/modules.d/95zfcp_rules/module-setup.sh
|
||||
@@ -5,8 +5,8 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
local _arch=$(uname -m)
|
||||
- [ -x /sbin/zfcp_disk_configure ] || return 1
|
||||
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ require_binaries zfcp_disk_configure /usr/lib/udev/collect || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95znet/module-setup.sh b/modules.d/95znet/module-setup.sh
|
||||
index 5012b77..346f893 100755
|
||||
--- a/modules.d/95znet/module-setup.sh
|
||||
+++ b/modules.d/95znet/module-setup.sh
|
||||
@@ -5,9 +5,10 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
arch=$(uname -m)
|
||||
- [ -z /sbin/znet_cio_free ] || return 1
|
||||
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
||||
|
||||
+ require_binaries znet_cio_free grep sed seq readlink || return 1
|
||||
+
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/97biosdevname/module-setup.sh b/modules.d/97biosdevname/module-setup.sh
|
||||
index b51c472..e285a7f 100755
|
||||
--- a/modules.d/97biosdevname/module-setup.sh
|
||||
+++ b/modules.d/97biosdevname/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ "$mount_needs" ]] && return 1
|
||||
- type -P biosdevname >/dev/null || return 1
|
||||
+ require_binaries biosdevname || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/97masterkey/module-setup.sh b/modules.d/97masterkey/module-setup.sh
|
||||
index e6e3690..82a6515 100755
|
||||
--- a/modules.d/97masterkey/module-setup.sh
|
||||
+++ b/modules.d/97masterkey/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ $hostonly ]] && {
|
||||
- [ -x "/bin/keyctl" ] || return 1
|
||||
+ require_binaries keyctl uname || return 1
|
||||
}
|
||||
|
||||
return 255
|
||||
diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh
|
||||
index 036f1c1..badce3c 100755
|
||||
--- a/modules.d/98systemd/module-setup.sh
|
||||
+++ b/modules.d/98systemd/module-setup.sh
|
||||
@@ -5,7 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
[[ $mount_needs ]] && return 1
|
||||
- if [[ -x $systemdutildir/systemd ]]; then
|
||||
+ if require_binaries $systemdutildir/systemd; then
|
||||
SYSTEMD_VERSION=$($systemdutildir/systemd --version | { read a b a; echo $b; })
|
||||
(( $SYSTEMD_VERSION >= 198 )) && return 0
|
||||
return 255
|
||||
diff --git a/modules.d/99img-lib/module-setup.sh b/modules.d/99img-lib/module-setup.sh
|
||||
index 2c3c992..69346b2 100755
|
||||
--- a/modules.d/99img-lib/module-setup.sh
|
||||
+++ b/modules.d/99img-lib/module-setup.sh
|
||||
@@ -3,9 +3,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- for cmd in tar gzip dd; do
|
||||
- command -v $cmd >/dev/null || return 1
|
||||
- done
|
||||
+ require_binaries tar gzip dd bash || return 1
|
||||
return 255
|
||||
}
|
||||
|
@ -1,83 +0,0 @@
|
||||
From 56903458d7e67f805a7e484cd025a059a5621d73 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 16 Oct 2013 11:47:01 +0200
|
||||
Subject: [PATCH] mkdir basic dirs in /run
|
||||
|
||||
for systemd initramfs, /run is also mounted
|
||||
for non-systemd the contents of /run is copied over, when mounting /run
|
||||
---
|
||||
modules.d/98systemd/dracut-cmdline.sh | 5 -----
|
||||
modules.d/99base/dracut-lib.sh | 7 +++++++
|
||||
modules.d/99base/init.sh | 10 +++-------
|
||||
3 files changed, 10 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/modules.d/98systemd/dracut-cmdline.sh b/modules.d/98systemd/dracut-cmdline.sh
|
||||
index 50b8d6c..aa8a02b 100755
|
||||
--- a/modules.d/98systemd/dracut-cmdline.sh
|
||||
+++ b/modules.d/98systemd/dracut-cmdline.sh
|
||||
@@ -2,11 +2,6 @@
|
||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
|
||||
-[ -d $NEWROOT ] || mkdir -p -m 0755 $NEWROOT
|
||||
-[ -d /run/initramfs ] || mkdir -p -m 0755 /run/initramfs
|
||||
-[ -d /run/lock ] || mkdir -p -m 0755 /run/lock
|
||||
-[ -d /run/log ] || mkdir -p -m 0755 /run/log
|
||||
-
|
||||
if [ -f /dracut-state.sh ]; then
|
||||
. /dracut-state.sh 2>/dev/null
|
||||
fi
|
||||
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
|
||||
index 74d7d35..0670cf2 100755
|
||||
--- a/modules.d/99base/dracut-lib.sh
|
||||
+++ b/modules.d/99base/dracut-lib.sh
|
||||
@@ -4,6 +4,13 @@
|
||||
|
||||
export DRACUT_SYSTEMD
|
||||
export NEWROOT
|
||||
+if [ -n "$NEWROOT" ]; then
|
||||
+ [ -d $NEWROOT ] || mkdir -p -m 0755 $NEWROOT
|
||||
+fi
|
||||
+
|
||||
+[ -d /run/initramfs ] || mkdir -p -m 0755 /run/initramfs
|
||||
+[ -d /run/lock ] || mkdir -p -m 0755 /run/lock
|
||||
+[ -d /run/log ] || mkdir -p -m 0755 /run/log
|
||||
|
||||
debug_off() {
|
||||
set +x
|
||||
diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh
|
||||
index 3ba440a..2364f4f 100755
|
||||
--- a/modules.d/99base/init.sh
|
||||
+++ b/modules.d/99base/init.sh
|
||||
@@ -56,17 +56,17 @@ fi
|
||||
|
||||
if ! ismounted /dev/pts; then
|
||||
mkdir -m 0755 /dev/pts
|
||||
- mount -t devpts -o gid=5,mode=620,noexec,nosuid devpts /dev/pts >/dev/null
|
||||
+ mount -t devpts -o gid=5,mode=620,noexec,nosuid devpts /dev/pts >/dev/null
|
||||
fi
|
||||
|
||||
if ! ismounted /dev/shm; then
|
||||
mkdir -m 0755 /dev/shm
|
||||
- mount -t tmpfs -o mode=1777,nosuid,nodev,strictatime tmpfs /dev/shm >/dev/null
|
||||
+ mount -t tmpfs -o mode=1777,nosuid,nodev,strictatime tmpfs /dev/shm >/dev/null
|
||||
fi
|
||||
|
||||
if ! ismounted /run; then
|
||||
mkdir -m 0755 /newrun
|
||||
- mount -t tmpfs -o mode=0755,nosuid,nodev,strictatime tmpfs /newrun >/dev/null
|
||||
+ mount -t tmpfs -o mode=0755,nosuid,nodev,strictatime tmpfs /newrun >/dev/null
|
||||
cp -a /run/* /newrun >/dev/null 2>&1
|
||||
mount --move /newrun /run
|
||||
rm -fr -- /newrun
|
||||
@@ -88,10 +88,6 @@ fi
|
||||
|
||||
trap "action_on_fail Signal caught!" 0
|
||||
|
||||
-[ -d /run/initramfs ] || mkdir -p -m 0755 /run/initramfs
|
||||
-[ -d /run/log ] || mkdir -p -m 0755 /run/log
|
||||
-[ -d /run/lock ] || mkdir -p -m 0755 /run/lock
|
||||
-
|
||||
export UDEVVERSION=$(udevadm --version)
|
||||
if [ $UDEVVERSION -gt 166 ]; then
|
||||
# newer versions of udev use /run/udev/rules.d
|
@ -1,50 +0,0 @@
|
||||
From 96c6f6f3d101a16b70d0fe760abbf8ea77975bc4 Mon Sep 17 00:00:00 2001
|
||||
From: Marian Csontos <mcsontos@redhat.com>
|
||||
Date: Fri, 18 Oct 2013 14:40:40 +0200
|
||||
Subject: [PATCH] dracut-functions.sh:check_block_and_slaves*() skip LVM
|
||||
internal devs
|
||||
|
||||
Not every device in /dev/mapper should be examined.
|
||||
If it is an LVM device, touch only devices which have /dev/VG/LV symlink.
|
||||
---
|
||||
dracut-functions.sh | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 45e0911..2e6e845 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -579,7 +579,7 @@ host_fs_all()
|
||||
check_block_and_slaves() {
|
||||
local _x
|
||||
[[ -b /dev/block/$2 ]] || return 1 # Not a block device? So sorry.
|
||||
- "$1" $2 && return
|
||||
+ if ! lvm_internal_dev $2; then "$1" $2 && return; fi
|
||||
check_vol_slaves "$@" && return 0
|
||||
if [[ -f /sys/dev/block/$2/../dev ]]; then
|
||||
check_block_and_slaves $1 $(<"/sys/dev/block/$2/../dev") && return 0
|
||||
@@ -595,7 +595,7 @@ check_block_and_slaves() {
|
||||
check_block_and_slaves_all() {
|
||||
local _x _ret=1
|
||||
[[ -b /dev/block/$2 ]] || return 1 # Not a block device? So sorry.
|
||||
- if "$1" $2; then
|
||||
+ if ! lvm_internal_dev $2 && "$1" $2; then
|
||||
_ret=0
|
||||
fi
|
||||
check_vol_slaves "$@" && return 0
|
||||
@@ -1672,3 +1672,15 @@ get_ucode_file ()
|
||||
printf "%02x-%02x-%02x" ${family} ${model} ${stepping}
|
||||
fi
|
||||
}
|
||||
+
|
||||
+# Not every device in /dev/mapper should be examined.
|
||||
+# If it is an LVM device, touch only devices which have /dev/VG/LV symlink.
|
||||
+lvm_internal_dev() {
|
||||
+ local dev_dm_dir=/sys/dev/block/$1/dm
|
||||
+ [[ ! -f $dev_dm_dir/uuid || $(<$dev_dm_dir/uuid) != LVM-* ]] && return 1 # Not an LVM device
|
||||
+ local DM_VG_NAME DM_LV_NAME DM_LV_LAYER
|
||||
+ eval $(dmsetup splitname --nameprefixes --noheadings --rows "$(<$dev_dm_dir/name)" 2>/dev/null)
|
||||
+ [[ ${DM_VG_NAME} ]] && [[ ${DM_LV_NAME} ]] || return 0 # Better skip this!
|
||||
+ [[ ${DM_LV_LAYER} ]] || [[ ! -L /dev/${DM_VG_NAME}/${DM_LV_NAME} ]]
|
||||
+}
|
||||
+
|
@ -1,23 +0,0 @@
|
||||
From 76a44782647c2693039d15a2d8073d70be9b6756 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 18 Oct 2013 14:56:51 +0200
|
||||
Subject: [PATCH] kernel-modules(ARM): add mmc_block usb_storage to statis list
|
||||
of kernel mods
|
||||
|
||||
---
|
||||
modules.d/90kernel-modules/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
|
||||
index f6d1c3d..2100336 100755
|
||||
--- a/modules.d/90kernel-modules/module-setup.sh
|
||||
+++ b/modules.d/90kernel-modules/module-setup.sh
|
||||
@@ -49,7 +49,7 @@ installkernel() {
|
||||
# arm specific modules
|
||||
hostonly='' instmods sdhci_esdhc_imx mmci sdhci_tegra mvsdio omap omapdrm \
|
||||
omap_hsmmc panel-tfp410 sdhci_dove ahci_platform pata_imx sata_mv \
|
||||
- ehci-tegra
|
||||
+ ehci-tegra mmc_block usb_storage
|
||||
fi
|
||||
|
||||
# install virtual machine support
|
@ -1,76 +0,0 @@
|
||||
From 5d623b1775ebc7dc17bc23f2839906f418b17383 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 21 Oct 2013 09:09:26 +0200
|
||||
Subject: [PATCH] lvm: always install thin utils for lvm
|
||||
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 33 +++++++--------------------------
|
||||
1 file changed, 7 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index cbdf4a2..87374da 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -24,7 +24,8 @@ depends() {
|
||||
return 0
|
||||
}
|
||||
|
||||
-get_host_lvs() {
|
||||
+# called by dracut
|
||||
+cmdline() {
|
||||
local _activated
|
||||
declare -A _activated
|
||||
|
||||
@@ -37,37 +38,20 @@ get_host_lvs() {
|
||||
eval $(dmsetup splitname --nameprefixes --noheadings --rows "$dev" 2>/dev/null)
|
||||
[[ ${DM_VG_NAME} ]] && [[ ${DM_LV_NAME} ]] || return 1
|
||||
if ! [[ ${_activated[${DM_VG_NAME}/${DM_LV_NAME}]} ]]; then
|
||||
- printf "%s\n" "${DM_VG_NAME}/${DM_LV_NAME} "
|
||||
+ printf " rd.lvm.lv=%s\n" "${DM_VG_NAME}/${DM_LV_NAME} "
|
||||
_activated["${DM_VG_NAME}/${DM_LV_NAME}"]=1
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
-cmdline() {
|
||||
- get_host_lvs | while read line; do
|
||||
- printf " rd.lvm.lv=$line"
|
||||
- done
|
||||
-}
|
||||
-
|
||||
-# called by dracut
|
||||
install() {
|
||||
- local _i _needthin
|
||||
+ local _i
|
||||
|
||||
inst lvm
|
||||
|
||||
- if [[ $hostonly ]]; then
|
||||
- while read line; do
|
||||
- [[ -n "$line" ]] || continue
|
||||
- printf "%s" " rd.lvm.lv=$line"
|
||||
- if ! [[ $_needthin ]]; then
|
||||
- [[ "$(lvs --noheadings -o segtype ${line%%/*} 2>/dev/null)" == *thin* ]] && _needthin=1
|
||||
- fi
|
||||
- done <<<$(get_host_lvs) >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
- echo >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
- else
|
||||
- _needthin=1
|
||||
- fi
|
||||
+ cmdline >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
+ echo >> "${initdir}/etc/cmdline.d/90lvm.conf"
|
||||
|
||||
inst_rules "$moddir/64-lvm.rules"
|
||||
|
||||
@@ -103,9 +87,6 @@ install() {
|
||||
|
||||
inst_libdir_file "libdevmapper-event-lvm*.so"
|
||||
|
||||
- if [[ $_needthin ]]; then
|
||||
- inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
- fi
|
||||
-
|
||||
+ inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
}
|
||||
|
@ -1,22 +0,0 @@
|
||||
From 0106da599a227cf1c28c3648b7e77985f617b878 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Fri, 25 Oct 2013 17:06:44 +0200
|
||||
Subject: [PATCH] usrmount/module-setup.sh: fixed typo
|
||||
|
||||
---
|
||||
modules.d/98usrmount/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/98usrmount/module-setup.sh b/modules.d/98usrmount/module-setup.sh
|
||||
index 1af789f..d8a0ec2 100755
|
||||
--- a/modules.d/98usrmount/module-setup.sh
|
||||
+++ b/modules.d/98usrmount/module-setup.sh
|
||||
@@ -7,7 +7,7 @@ check() {
|
||||
local _init
|
||||
[[ $mount_needs ]] && return 1
|
||||
_init=$(readlink -f /sbin/init)
|
||||
- [[ "$init" == "${init##/usr}" ]] && return 255
|
||||
+ [[ "$_init" == "${_init##/usr}" ]] && return 255
|
||||
return 0
|
||||
}
|
||||
|
@ -1,85 +0,0 @@
|
||||
From 4d7c18c7c0abf9c2347581d07a8e8be3d3969bd2 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 30 Oct 2013 12:22:52 +0100
|
||||
Subject: [PATCH] Handle crypto modules with and without modaliases
|
||||
|
||||
If new kernels have modules split out, handle the case, where modules
|
||||
have to modalias and just install them.
|
||||
|
||||
Also add the crypto drivers and names to host_modalias.
|
||||
---
|
||||
dracut-functions.sh | 14 ++++++++++----
|
||||
dracut.sh | 5 +++++
|
||||
modules.d/01fips/fips.sh | 1 -
|
||||
3 files changed, 15 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 2e6e845..38095ba 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -1480,7 +1480,7 @@ dracut_kernel_post() {
|
||||
|
||||
module_is_host_only() {
|
||||
local _mod=$1
|
||||
- local _modenc a i
|
||||
+ local _modenc a i _k _s _v _aliases
|
||||
_mod=${_mod##*/}
|
||||
_mod=${_mod%.ko}
|
||||
_modenc=${_mod//-/_}
|
||||
@@ -1497,19 +1497,25 @@ module_is_host_only() {
|
||||
# this covers the case, where a new module is introduced
|
||||
# or a module was renamed
|
||||
# or a module changed from builtin to a module
|
||||
+
|
||||
if [[ -d /lib/modules/$kernel_current ]]; then
|
||||
# if the modinfo can be parsed, but the module
|
||||
# is not loaded, then we can safely return 1
|
||||
modinfo -F filename "$_mod" &>/dev/null && return 1
|
||||
fi
|
||||
|
||||
- # Finally check all modalias, if we install for a kernel
|
||||
- # different from the current one
|
||||
- for a in $(modinfo -k $kernel -F alias $_mod 2>/dev/null); do
|
||||
+ _aliases=$(modinfo -k $kernel -F alias $_mod 2>/dev/null)
|
||||
+
|
||||
+ # if the module has no aliases, install it
|
||||
+ [[ $_aliases ]] || return 0
|
||||
+
|
||||
+ # finally check all modalias
|
||||
+ for a in $_aliases; do
|
||||
for i in "${!host_modalias[@]}"; do
|
||||
[[ $i == $a ]] && return 0
|
||||
done
|
||||
done
|
||||
+
|
||||
fi
|
||||
|
||||
return 1
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 4613d5b..ae792c4 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -968,6 +968,11 @@ if [[ $hostonly ]]; then
|
||||
|
||||
rm -f -- "$initdir/.modalias"
|
||||
|
||||
+ while read _k _s _v; do
|
||||
+ [ "$_k" != "name" -a "$_k" != "driver" ] && continue
|
||||
+ host_modalias["$_v"]=1
|
||||
+ done </proc/crypto
|
||||
+
|
||||
# check /proc/modules
|
||||
declare -A host_modules
|
||||
while read m rest; do
|
||||
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||
index f0a4c5c..98dd1c2 100755
|
||||
--- a/modules.d/01fips/fips.sh
|
||||
+++ b/modules.d/01fips/fips.sh
|
||||
@@ -96,7 +96,6 @@ do_fips()
|
||||
_found=0
|
||||
while read _k _s _v; do
|
||||
[ "$_k" != "name" -a "$_k" != "driver" ] && continue
|
||||
- [ "$_k" = "driver" ] && _v=$(str_replace "$_v" "_" "-")
|
||||
[ "$_v" != "$_module" ] && continue
|
||||
_found=1
|
||||
break
|
@ -1,23 +0,0 @@
|
||||
From 0a8e91bb24de6eaf542ade0fffc941c3f072daec Mon Sep 17 00:00:00 2001
|
||||
From: Kyle McMartin <kmcmarti@redhat.com>
|
||||
Date: Wed, 30 Oct 2013 12:35:27 +0100
|
||||
Subject: [PATCH] fips: include crct10dif_generic
|
||||
|
||||
Resolves: rhbz#1024455
|
||||
---
|
||||
modules.d/01fips/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh
|
||||
index 6493290..fb5a5cd 100755
|
||||
--- a/modules.d/01fips/module-setup.sh
|
||||
+++ b/modules.d/01fips/module-setup.sh
|
||||
@@ -16,7 +16,7 @@ depends() {
|
||||
installkernel() {
|
||||
local _fipsmodules _mod
|
||||
_fipsmodules="aead aes_generic aes-x86_64 ansi_cprng arc4 blowfish camellia cast6 cbc ccm "
|
||||
- _fipsmodules+="chainiv crc32c cryptomgr crypto_null ctr cts deflate des des3_ede dm-crypt dm-mod "
|
||||
+ _fipsmodules+="chainiv crc32c crct10dif_generic cryptomgr crypto_null ctr cts deflate des des3_ede dm-crypt dm-mod "
|
||||
_fipsmodules+="ecb eseqiv fcrypt gcm ghash_generic hmac khazad lzo md4 md5 michael_mic rmd128 "
|
||||
_fipsmodules+="rmd160 rmd256 rmd320 rot13 salsa20 seed seqiv serpent sha1 sha224 sha256 sha256_generic "
|
||||
_fipsmodules+="sha384 sha512 sha512_generic tcrypt tea tnepres twofish wp256 wp384 wp512 xeta xtea xts zlib"
|
@ -1,61 +0,0 @@
|
||||
From fa9384b1c0414efd33d82a2e083346b35c378f50 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 30 Oct 2013 17:36:54 +0100
|
||||
Subject: [PATCH] iscsi/nbd: do not try to mount the whole disk, if root= is
|
||||
missing
|
||||
|
||||
only mount the whole disk for root=dhcp
|
||||
---
|
||||
modules.d/95iscsi/iscsiroot.sh | 11 ++---------
|
||||
modules.d/95nbd/nbdroot.sh | 2 +-
|
||||
2 files changed, 3 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
|
||||
index 5181f52..738fff4 100755
|
||||
--- a/modules.d/95iscsi/iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/iscsiroot.sh
|
||||
@@ -40,14 +40,6 @@ modprobe crc32c 2>/dev/null
|
||||
[ -e /sys/module/bnx2i ] && iscsiuio
|
||||
|
||||
if getargbool 0 rd.iscsi.firmware -d -y iscsi_firmware ; then
|
||||
- if [ -z "$root" -o -n "${root%%block:*}" ]; then
|
||||
- # if root is not specified try to mount the whole iSCSI LUN
|
||||
- printf 'ENV{DEVTYPE}!="partition", SYMLINK=="disk/by-path/*-iscsi-*-*", SYMLINK+="root"\n' >> /etc/udev/rules.d/99-iscsi-root.rules
|
||||
- udevadm control --reload
|
||||
- write_fs_tab /dev/root
|
||||
- wait_for_dev /dev/root
|
||||
- fi
|
||||
-
|
||||
for p in $(getargs rd.iscsi.param -d iscsi_param); do
|
||||
iscsi_param="$iscsi_param --param $p"
|
||||
done
|
||||
@@ -55,6 +47,7 @@ if getargbool 0 rd.iscsi.firmware -d -y iscsi_firmware ; then
|
||||
iscsistart -b $iscsi_param
|
||||
echo 'started' > "/tmp/iscsistarted-iscsi"
|
||||
echo 'started' > "/tmp/iscsistarted-firmware"
|
||||
+ need_shutdown
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -137,7 +130,7 @@ handle_netroot()
|
||||
|
||||
# FIXME $iscsi_protocol??
|
||||
|
||||
- if [ -z "$root" -o -n "${root%%block:*}" ]; then
|
||||
+ if [ "$root" = "dhcp" ]; then
|
||||
# if root is not specified try to mount the whole iSCSI LUN
|
||||
printf 'SYMLINK=="disk/by-path/*-iscsi-*-%s", SYMLINK+="root"\n' $iscsi_lun >> /etc/udev/rules.d/99-iscsi-root.rules
|
||||
udevadm control --reload
|
||||
diff --git a/modules.d/95nbd/nbdroot.sh b/modules.d/95nbd/nbdroot.sh
|
||||
index 823da0e..2e9d917 100755
|
||||
--- a/modules.d/95nbd/nbdroot.sh
|
||||
+++ b/modules.d/95nbd/nbdroot.sh
|
||||
@@ -97,7 +97,7 @@ done
|
||||
|
||||
# If we didn't get a root= on the command line, then we need to
|
||||
# add the udev rules for mounting the nbd0 device
|
||||
-if [ -z "$root" -o -n "${root%%block:*}" -o "$root" = "block:/dev/root" ]; then
|
||||
+if [ "$root" = "block:/dev/root" -o "$root" = "dhcp" ]; then
|
||||
printf 'KERNEL=="nbd0", ENV{DEVTYPE}!="partition", ENV{ID_FS_TYPE}=="?*", SYMLINK+="root"\n' >> /etc/udev/rules.d/99-nbd-root.rules
|
||||
udevadm control --reload
|
||||
type write_fs_tab >/dev/null 2>&1 || . /lib/fs-lib.sh
|
@ -1,33 +0,0 @@
|
||||
From 06d418abd1a78c79ca11ce597d7dcfdb0091c96e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 21 Oct 2013 09:43:04 +0200
|
||||
Subject: [PATCH] dracut.spec: move /sbin/dracut to /usr/sbin/dracut
|
||||
|
||||
---
|
||||
dracut.spec | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 3ec0ec0..44171d8 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -274,8 +274,8 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||
%endif
|
||||
|
||||
# create compat symlink
|
||||
-mkdir -p $RPM_BUILD_ROOT/sbin
|
||||
-ln -s /usr/bin/dracut $RPM_BUILD_ROOT/sbin/dracut
|
||||
+mkdir -p $RPM_BUILD_ROOT%{_sbindir}
|
||||
+ln -sr $RPM_BUILD_ROOT%{_bindir}/dracut $RPM_BUILD_ROOT%{_sbindir}/dracut
|
||||
|
||||
%clean
|
||||
rm -rf -- $RPM_BUILD_ROOT
|
||||
@@ -285,7 +285,7 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%doc README HACKING TODO COPYING AUTHORS NEWS dracut.html dracut.png dracut.svg
|
||||
%{_bindir}/dracut
|
||||
# compat symlink
|
||||
-/sbin/dracut
|
||||
+%{_sbindir}/dracut
|
||||
%{_datadir}/bash-completion/completions/dracut
|
||||
%{_datadir}/bash-completion/completions/lsinitrd
|
||||
%if 0%{?fedora} > 12 || 0%{?rhel} >= 6 || 0%{?suse_version} > 9999
|
@ -1,22 +0,0 @@
|
||||
From cf3fd99e72745b894a5c787277f90305f2ea1215 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Sat, 2 Nov 2013 13:14:40 +0100
|
||||
Subject: [PATCH] dracut.sh: fixed PATH shortener
|
||||
|
||||
---
|
||||
dracut.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index ae792c4..03472ba 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -533,7 +533,7 @@ for i in /usr/sbin /sbin /usr/bin /bin; do
|
||||
if [ -L "$i" ]; then
|
||||
rl=$(readlink -f $i)
|
||||
fi
|
||||
- if [[ "$NPATH" != "*:$rl*" ]] ; then
|
||||
+ if [[ "$NPATH" != *:$rl* ]] ; then
|
||||
NPATH+=":$rl"
|
||||
fi
|
||||
done
|
@ -1,21 +0,0 @@
|
||||
From 095fa1559178522029ad854017a0c83d4979e876 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Sat, 2 Nov 2013 13:20:32 +0100
|
||||
Subject: [PATCH] dracut.modules.7.asc: removed empty section
|
||||
|
||||
---
|
||||
dracut.modules.7.asc | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.modules.7.asc b/dracut.modules.7.asc
|
||||
index 4cb2aa1..17acdb4 100644
|
||||
--- a/dracut.modules.7.asc
|
||||
+++ b/dracut.modules.7.asc
|
||||
@@ -10,7 +10,6 @@ dracut.modules - dracut modules
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
-== dracut Components
|
||||
|
||||
dracut uses a modular system to build and extend the initramfs image. All
|
||||
modules are located in _/usr/lib/dracut/modules.d_ or in _<git-src>/modules.d_.
|
@ -1,20 +0,0 @@
|
||||
From 185e940e27eb8c1658556d17b30ac60a16894502 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 4 Nov 2013 17:29:15 +0100
|
||||
Subject: [PATCH] fips: also install /etc/system-fips in the initramfs
|
||||
|
||||
---
|
||||
modules.d/01fips/module-setup.sh | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh
|
||||
index fb5a5cd..a4081dc 100755
|
||||
--- a/modules.d/01fips/module-setup.sh
|
||||
+++ b/modules.d/01fips/module-setup.sh
|
||||
@@ -45,5 +45,6 @@ install() {
|
||||
libssl.so 'hmaccalc/sha512hmac.hmac' libssl.so.10
|
||||
|
||||
inst_multiple -o prelink
|
||||
+ inst_simple /etc/system-fips
|
||||
}
|
||||
|
@ -1,43 +0,0 @@
|
||||
From 1d50dfe6025126c38b1d23815360bd48e9e8c24c Mon Sep 17 00:00:00 2001
|
||||
From: Colin Guthrie <colin@mageia.org>
|
||||
Date: Sat, 2 Nov 2013 11:26:30 +0000
|
||||
Subject: [PATCH] dracut-functions.sh: Avoid loading unnecessary 32-bit
|
||||
libraries for 64-bit initrds
|
||||
|
||||
Due to the 'inst_libdir_file "libnss_files*"' in the udev-rules module
|
||||
this caues the /usr/lib/libnss_files-2.18.so* to be included. This is a
|
||||
32-bit library and pulls in a 32-bit version of glibc also even on a
|
||||
64-bit system.
|
||||
|
||||
This is due to the fact that ldconfig -pN will print [/usr]/lib paths
|
||||
from the cache as well as [/usr]/lib64. As we handle these paths
|
||||
specifically we should ignore these results from the cache.
|
||||
|
||||
Also there was a missing space when appending the ldconfig paths
|
||||
onto our list meaning the last builtin and first ldconfig path
|
||||
were unusable.
|
||||
---
|
||||
dracut-functions.sh | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 38095ba..2872516 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -65,6 +65,7 @@ ldconfig_paths()
|
||||
printf "%s\n" ${d%/*};
|
||||
done
|
||||
); do
|
||||
+ [[ "$i" = "/lib" || "$i" = "/usr/lib" || "$i" = "/lib64" || "$i" = "/usr/lib64" ]] && continue
|
||||
a["$i"]=1;
|
||||
done;
|
||||
printf "%s\n" ${!a[@]}
|
||||
@@ -81,7 +82,7 @@ if ! [[ $libdirs ]] ; then
|
||||
[[ -d /usr/lib ]] && libdirs+=" /usr/lib"
|
||||
fi
|
||||
|
||||
- libdirs+="$(ldconfig_paths)"
|
||||
+ libdirs+=" $(ldconfig_paths)"
|
||||
|
||||
export libdirs
|
||||
fi
|
@ -1,36 +0,0 @@
|
||||
From c2ab99093817d4694c0360b77845b8f2a8a10caf Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 11 Nov 2013 16:57:09 +0100
|
||||
Subject: [PATCH] iscsi,nbd: do not fail in hostonly mode
|
||||
|
||||
---
|
||||
modules.d/95iscsi/module-setup.sh | 2 +-
|
||||
modules.d/95nbd/module-setup.sh | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
||||
index c8051bd..8379f4b 100755
|
||||
--- a/modules.d/95iscsi/module-setup.sh
|
||||
+++ b/modules.d/95iscsi/module-setup.sh
|
||||
@@ -24,7 +24,7 @@ check() {
|
||||
|
||||
[[ $hostonly ]] || [[ $mount_needs ]] && {
|
||||
pushd . >/dev/null
|
||||
- for_each_host_dev_and_slaves is_iscsi || return 1
|
||||
+ for_each_host_dev_and_slaves is_iscsi || return 255
|
||||
popd >/dev/null
|
||||
}
|
||||
return 0
|
||||
diff --git a/modules.d/95nbd/module-setup.sh b/modules.d/95nbd/module-setup.sh
|
||||
index ac30823..37ace21 100755
|
||||
--- a/modules.d/95nbd/module-setup.sh
|
||||
+++ b/modules.d/95nbd/module-setup.sh
|
||||
@@ -15,7 +15,7 @@ check() {
|
||||
|
||||
_rootdev=$(find_root_block_device)
|
||||
[[ -b /dev/block/$_rootdev ]] || return 1
|
||||
- check_block_and_slaves is_nbd "$_rootdev" || return 1
|
||||
+ check_block_and_slaves is_nbd "$_rootdev" || return 255
|
||||
}
|
||||
|
||||
return 0
|
@ -1,27 +0,0 @@
|
||||
From 7e4f74f5040fc3f4e7646695b54c5c11b0b95c62 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 11 Nov 2013 16:57:32 +0100
|
||||
Subject: [PATCH] systemd: do not exit the initqueue, if systemd asks a
|
||||
password
|
||||
|
||||
this prevents bailing out the initqueue, while passwords are still to be
|
||||
asked
|
||||
---
|
||||
modules.d/98systemd/dracut-initqueue.sh | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules.d/98systemd/dracut-initqueue.sh b/modules.d/98systemd/dracut-initqueue.sh
|
||||
index d7ebf2b..64e8154 100755
|
||||
--- a/modules.d/98systemd/dracut-initqueue.sh
|
||||
+++ b/modules.d/98systemd/dracut-initqueue.sh
|
||||
@@ -52,6 +52,10 @@ while :; do
|
||||
# no more udev jobs and queues empty.
|
||||
sleep 0.5
|
||||
|
||||
+ for i in /run/systemd/ask-password/ask.*; do
|
||||
+ [ -e "$i" ] && continue
|
||||
+ done
|
||||
+
|
||||
if [ $main_loop -gt $((2*$RDRETRY/3)) ]; then
|
||||
for job in $hookdir/initqueue/timeout/*.sh; do
|
||||
[ -e "$job" ] || break
|
@ -1,35 +0,0 @@
|
||||
From a3bfaa191958c4b70d6c674f972c3b911f8b1bfa Mon Sep 17 00:00:00 2001
|
||||
From: Vratislav Podzimek <vpodzime@redhat.com>
|
||||
Date: Wed, 13 Nov 2013 13:20:39 +0100
|
||||
Subject: [PATCH] Run 'xz' and 'lzma' with multiple threads
|
||||
|
||||
This speeds up compression a lot on multicore systems.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1029786
|
||||
|
||||
[Edited-by: Harald Hoyer: use getconf for cpu_count]
|
||||
---
|
||||
dracut.sh | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 03472ba..bce2662 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -693,12 +693,14 @@ stdloglvl=$((stdloglvl + verbosity_mod_l))
|
||||
# eliminate IFS hackery when messing with fw_dir
|
||||
fw_dir=${fw_dir//:/ }
|
||||
|
||||
+cpu_count=$(getconf _NPROCESSORS_ONLN)
|
||||
+
|
||||
# handle compression options.
|
||||
[[ $compress ]] || compress="gzip"
|
||||
case $compress in
|
||||
bzip2) compress="bzip2 -9";;
|
||||
- lzma) compress="lzma -9";;
|
||||
- xz) compress="xz --check=crc32 --lzma2=dict=1MiB";;
|
||||
+ lzma) compress="lzma -9 ${cpu_count:+-T$cpu_count}";;
|
||||
+ xz) compress="xz --check=crc32 --lzma2=dict=1MiB ${cpu_count:+-T$cpu_count}";;
|
||||
gzip) compress="gzip -9"; command -v pigz > /dev/null 2>&1 && compress="pigz -9";;
|
||||
lzo) compress="lzop -9";;
|
||||
lz4) compress="lz4 -9";;
|
@ -1,30 +0,0 @@
|
||||
From 28609baf6e9581ea97c4550340e2a6031c1b6fbd Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 14 Nov 2013 10:07:04 +0100
|
||||
Subject: [PATCH] kernel-modules: add ohci-pci to the list of forced module
|
||||
installs
|
||||
|
||||
---
|
||||
modules.d/90kernel-modules/module-setup.sh | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
|
||||
index 2100336..d65e92b 100755
|
||||
--- a/modules.d/90kernel-modules/module-setup.sh
|
||||
+++ b/modules.d/90kernel-modules/module-setup.sh
|
||||
@@ -36,9 +36,12 @@ installkernel() {
|
||||
return 0
|
||||
}
|
||||
|
||||
- hostonly='' instmods sr_mod sd_mod scsi_dh ata_piix \
|
||||
- ehci-hcd ehci-pci ehci-platform ohci-hcd uhci-hcd xhci-hcd hid_generic \
|
||||
- unix
|
||||
+ hostonly='' instmods \
|
||||
+ sr_mod sd_mod scsi_dh ata_piix hid_generic unix \
|
||||
+ ehci-hcd ehci-pci ehci-platform \
|
||||
+ ohci-hcd ohci-pci \
|
||||
+ uhci-hcd \
|
||||
+ xhci-hcd
|
||||
|
||||
instmods yenta_socket scsi_dh_rdac scsi_dh_emc \
|
||||
atkbd i8042 usbhid hid-apple hid-sunplus hid-cherry hid-logitech \
|
@ -1,36 +0,0 @@
|
||||
From 297b8edc050715d563d54cfa34e42bf5909b9a7b Mon Sep 17 00:00:00 2001
|
||||
From: Peter Rajnoha <prajnoha@redhat.com>
|
||||
Date: Mon, 25 Nov 2013 14:38:00 +0100
|
||||
Subject: [PATCH] lvm: do not run pvscan for lvmetad update
|
||||
|
||||
The lvmetad daemon is not yet running in initramfs so there's no
|
||||
need to run pvscan (or instantiate any lvm2-pvscan systemd service).
|
||||
If pvscan was called in this case (either directly or via systemd
|
||||
instantiated service), it would fail because there's no lvmetad
|
||||
daemon to update. This could cause confusion, especially in systemd
|
||||
instantiated service which is run only once!
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index 87374da..a220a55 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -76,6 +76,16 @@ install() {
|
||||
fi
|
||||
|
||||
inst_rules 11-dm-lvm.rules 69-dm-lvm-metad.rules
|
||||
+
|
||||
+ # Do not run lvmetad update via pvscan in udev rule - lvmetad is not running yet in dracut!
|
||||
+ if grep -q SYSTEMD_WANTS ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules; then
|
||||
+ sed -i -e 's/^ENV{SYSTEMD_ALIAS}=.*/# No LVM pvscan in dracut - lvmetad is not running yet/' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules
|
||||
+ sed -i -e 's/^ENV{ID_MODEL}=.*//' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules
|
||||
+ sed -i -e 's/^ENV{SYSTEMD_WANTS}=.*//' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules
|
||||
+ else
|
||||
+ sed -i -e 's/.*lvm pvscan.*/# No LVM pvscan for in dracut - lvmetad is not running yet/' ${initdir}/lib/udev/rules.d/69-dm-lvm-metad.rules
|
||||
+ fi
|
||||
+
|
||||
# Gentoo ebuild for LVM2 prior to 2.02.63-r1 doesn't install above rules
|
||||
# files, but provides the one below:
|
||||
inst_rules 64-device-mapper.rules
|
@ -1,39 +0,0 @@
|
||||
From 928da5744721842d3e02151323c3a1357baf0032 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 8 Nov 2013 15:06:18 +0100
|
||||
Subject: [PATCH] fips: fix RHEV vmlinuz check
|
||||
|
||||
---
|
||||
modules.d/01fips/fips.sh | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||
index 98dd1c2..7fa48f1 100755
|
||||
--- a/modules.d/01fips/fips.sh
|
||||
+++ b/modules.d/01fips/fips.sh
|
||||
@@ -60,8 +60,8 @@ do_rhevh_check()
|
||||
KERNEL=$(uname -r)
|
||||
kpath=${1}
|
||||
|
||||
- # If we're on RHEV-H, the kernel is in /dev/.initramfs/live/vmlinuz0
|
||||
- HMAC_SUM_ORIG=$(cat /boot/.vmlinuz-${KERNEL}.hmac | while read a b; do printf "%s\n" $a; done)
|
||||
+ # If we're on RHEV-H, the kernel is in /run/initramfs/live/vmlinuz0
|
||||
+ HMAC_SUM_ORIG=$(cat $NEWROOT/boot/.vmlinuz-${KERNEL}.hmac | while read a b; do printf "%s\n" $a; done)
|
||||
HMAC_SUM_CALC=$(sha512hmac $kpath | while read a b; do printf "%s\n" $a; done || return 1)
|
||||
if [ -z "$HMAC_SUM_ORIG" ] || [ -z "$HMAC_SUM_CALC" ] || [ "${HMAC_SUM_ORIG}" != "${HMAC_SUM_CALC}" ]; then
|
||||
warn "HMAC sum mismatch"
|
||||
@@ -111,10 +111,10 @@ do_fips()
|
||||
rmmod tcrypt
|
||||
|
||||
info "Checking integrity of kernel"
|
||||
- if [ -e "$NEWROOT/dev/.initramfs/live/vmlinuz0" ]; then
|
||||
- do_rhevh_check "$NEWROOT/dev/.initramfs/live/vmlinuz0" || return 1
|
||||
- elif [ -e "$NEWROOT/dev/.initramfs/live/isolinux/vmlinuz0" ]; then
|
||||
- do_rhevh_check "$NEWROOT/dev/.initramfs/live/isolinux/vmlinuz0" || return 1
|
||||
+ if [ -e "/run/initramfs/live/vmlinuz0" ]; then
|
||||
+ do_rhevh_check /run/initramfs/live/vmlinuz0 || return 1
|
||||
+ elif [ -e "/run/initramfs/live/isolinux/vmlinuz0" ]; then
|
||||
+ do_rhevh_check /run/initramfs/live/isolinux/vmlinuz0 || return 1
|
||||
else
|
||||
sha512hmac -c "/boot/.vmlinuz-${KERNEL}.hmac" || return 1
|
||||
fi
|
@ -1,28 +0,0 @@
|
||||
From e38e73d5a683ce93146c147305278b9175def3a0 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:30:52 +0100
|
||||
Subject: [PATCH] dracut.cmdline.7.asc: document "server-ip" of "ip=" parameter
|
||||
|
||||
---
|
||||
dracut.cmdline.7.asc | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
||||
index 19bfb93..6a5fc8f 100644
|
||||
--- a/dracut.cmdline.7.asc
|
||||
+++ b/dracut.cmdline.7.asc
|
||||
@@ -444,10 +444,12 @@ cannot be used in conjunction with the **ifname** argument for the
|
||||
same <interface>.
|
||||
=====================
|
||||
|
||||
-**ip=**__<client-IP>__:__<server-IP>__:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__:[:[__<mtu>__][:__<macaddr>__]]::
|
||||
+**ip=**__<client-IP>__:[__<peer>__]:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__:[:[__<mtu>__][:__<macaddr>__]]::
|
||||
explicit network configuration. If you want do define a IPv6 address, put it
|
||||
in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
|
||||
- times.
|
||||
+ times. __<peer>__ is optional and is the address of the remote endpoint
|
||||
+ for pointopoint interfaces and it may be followed by a slash and a decimal number,
|
||||
+ encoding the network prefix length.
|
||||
+
|
||||
=====================
|
||||
<macaddr>::: optionally **set** <macaddr> on the <interface>. This
|
@ -1,31 +0,0 @@
|
||||
From e41f3f902512a91a286e14d6ffa52206c70ea5f6 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:32:00 +0100
|
||||
Subject: [PATCH] dracut.sh:_get_fs_type() if block device exists return early
|
||||
|
||||
even, if no ID_FS_TYPE was found, return if the block device exists
|
||||
---
|
||||
dracut.sh | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index bce2662..177b813 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -987,12 +987,12 @@ unset rest
|
||||
|
||||
_get_fs_type() {
|
||||
[[ $1 ]] || return
|
||||
- if [[ -b /dev/block/$1 ]] && ID_FS_TYPE=$(get_fs_env "/dev/block/$1"); then
|
||||
- host_fs_types["$(readlink -f "/dev/block/$1")"]="$ID_FS_TYPE"
|
||||
+ if [[ -b /dev/block/$1 ]]; then
|
||||
+ ID_FS_TYPE=$(get_fs_env "/dev/block/$1") && host_fs_types["$(readlink -f "/dev/block/$1")"]="$ID_FS_TYPE"
|
||||
return 1
|
||||
fi
|
||||
- if [[ -b $1 ]] && ID_FS_TYPE=$(get_fs_env "$1"); then
|
||||
- host_fs_types["$(readlink -f "$1")"]="$ID_FS_TYPE"
|
||||
+ if [[ -b $1 ]]; then
|
||||
+ ID_FS_TYPE=$(get_fs_env "$1") && host_fs_types["$(readlink -f "$1")"]="$ID_FS_TYPE"
|
||||
return 1
|
||||
fi
|
||||
if fstype=$(find_dev_fstype "$1"); then
|
@ -1,23 +0,0 @@
|
||||
From 56ee31ccfec50f40bade2127eb1fae041a81f16a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:34:18 +0100
|
||||
Subject: [PATCH] network/net-lib.sh:wait_for_if_up() wait for "state UP"
|
||||
|
||||
really wait for "state UP", otherwise it returns earlier than we want
|
||||
---
|
||||
modules.d/40network/net-lib.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||
index 88e72ec..0aa312a 100644
|
||||
--- a/modules.d/40network/net-lib.sh
|
||||
+++ b/modules.d/40network/net-lib.sh
|
||||
@@ -443,7 +443,7 @@ wait_for_if_up() {
|
||||
local li
|
||||
while [ $cnt -lt 200 ]; do
|
||||
li=$(ip -o link show up dev $1)
|
||||
- [ -n "$li" ] && return 0
|
||||
+ [ -n "$li" ] && [ -z "${li##*state UP*}" ] && return 0
|
||||
sleep 0.1
|
||||
cnt=$(($cnt+1))
|
||||
done
|
@ -1,73 +0,0 @@
|
||||
From 7c8da72c11b74a1759e0ebbabe003d69a4459114 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:36:42 +0100
|
||||
Subject: [PATCH] network/net-lib.sh:iface_has_link() fixup
|
||||
|
||||
Just echo'ing the flags IFF_UP|IFF_RUNNING does _not_ reflect the
|
||||
carrier state immediately. So wait for it to really show up.
|
||||
---
|
||||
modules.d/40network/net-lib.sh | 47 +++++++++++++++++++++---------------------
|
||||
1 file changed, 23 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||
index 0aa312a..7544401 100644
|
||||
--- a/modules.d/40network/net-lib.sh
|
||||
+++ b/modules.d/40network/net-lib.sh
|
||||
@@ -28,30 +28,6 @@ iface_for_mac() {
|
||||
done
|
||||
}
|
||||
|
||||
-iface_has_link() {
|
||||
- local interface="$1" flags=""
|
||||
- [ -n "$interface" ] || return 2
|
||||
- interface="/sys/class/net/$interface"
|
||||
- [ -d "$interface" ] || return 2
|
||||
- flags=$(cat $interface/flags)
|
||||
- echo $(($flags|0x41)) > $interface/flags # 0x41: IFF_UP|IFF_RUNNING
|
||||
- [ "$(cat $interface/carrier)" = 1 ] || return 1
|
||||
- # XXX Do we need to reset the flags here? anaconda never bothered..
|
||||
-}
|
||||
-
|
||||
-find_iface_with_link() {
|
||||
- local iface_path="" iface=""
|
||||
- for iface_path in /sys/class/net/*; do
|
||||
- iface=${iface_path##*/}
|
||||
- str_starts "$iface" "lo" && continue
|
||||
- if iface_has_link $iface; then
|
||||
- echo "$iface"
|
||||
- return 0
|
||||
- fi
|
||||
- done
|
||||
- return 1
|
||||
-}
|
||||
-
|
||||
# get the iface name for the given identifier - either a MAC, IP, or iface name
|
||||
iface_name() {
|
||||
case $1 in
|
||||
@@ -483,3 +459,26 @@ type hostname >/dev/null 2>&1 || \
|
||||
hostname() {
|
||||
cat /proc/sys/kernel/hostname
|
||||
}
|
||||
+
|
||||
+iface_has_link() {
|
||||
+ local interface="$1" flags=""
|
||||
+ [ -n "$interface" ] || return 2
|
||||
+ interface="/sys/class/net/$interface"
|
||||
+ [ -d "$interface" ] || return 2
|
||||
+ linkup "$1"
|
||||
+ [ "$(cat $interface/carrier)" = 1 ] || return 1
|
||||
+ # XXX Do we need to reset the flags here? anaconda never bothered..
|
||||
+}
|
||||
+
|
||||
+find_iface_with_link() {
|
||||
+ local iface_path="" iface=""
|
||||
+ for iface_path in /sys/class/net/*; do
|
||||
+ iface=${iface_path##*/}
|
||||
+ str_starts "$iface" "lo" && continue
|
||||
+ if iface_has_link $iface; then
|
||||
+ echo "$iface"
|
||||
+ return 0
|
||||
+ fi
|
||||
+ done
|
||||
+ return 1
|
||||
+}
|
@ -1,25 +0,0 @@
|
||||
From 271cd19dbe895c24b1f70fa5c6bbecace3b97f4d Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:38:21 +0100
|
||||
Subject: [PATCH] network/ifup.sh: before doing dhcp, check, if the link has a
|
||||
carrier
|
||||
|
||||
---
|
||||
modules.d/40network/ifup.sh | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
|
||||
index 9f6f449..2edcfe6 100755
|
||||
--- a/modules.d/40network/ifup.sh
|
||||
+++ b/modules.d/40network/ifup.sh
|
||||
@@ -87,6 +87,10 @@ do_dhcp() {
|
||||
# dhclient-script will mark the netif up and generate the online
|
||||
# event for nfsroot
|
||||
# XXX add -V vendor class and option parsing per kernel
|
||||
+ if ! iface_has_link $netif; then
|
||||
+ echo "No carrier detected"
|
||||
+ return 1
|
||||
+ fi
|
||||
echo "Starting dhcp for interface $netif"
|
||||
dhclient "$@" -1 -q -cf /etc/dhclient.conf -pf /tmp/dhclient.$netif.pid -lf /tmp/dhclient.$netif.lease $netif \
|
||||
|| echo "dhcp failed"
|
@ -1,39 +0,0 @@
|
||||
From b92896ece49d27741f41e915c4673bde2a9bcb1f Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:39:36 +0100
|
||||
Subject: [PATCH] base/dracut-lib.sh:wait_for_dev() relax requirement
|
||||
|
||||
Do not "require" the devices, but "want" them. This might boot more
|
||||
systems, where:
|
||||
- the UUID changed
|
||||
- swap devices do not show up
|
||||
---
|
||||
modules.d/99base/dracut-lib.sh | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
|
||||
index 0670cf2..970bcfb 100755
|
||||
--- a/modules.d/99base/dracut-lib.sh
|
||||
+++ b/modules.d/99base/dracut-lib.sh
|
||||
@@ -863,9 +863,9 @@ wait_for_dev()
|
||||
|
||||
if [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
_name=$(dev_unit_name "$1")
|
||||
- if ! [ -L ${PREFIX}/etc/systemd/system/initrd.target.requires/${_name}.device ]; then
|
||||
- [ -d ${PREFIX}/etc/systemd/system/initrd.target.requires ] || mkdir -p ${PREFIX}/etc/systemd/system/initrd.target.requires
|
||||
- ln -s ../${_name}.device ${PREFIX}/etc/systemd/system/initrd.target.requires/${_name}.device
|
||||
+ if ! [ -L ${PREFIX}/etc/systemd/system/initrd.target.wants/${_name}.device ]; then
|
||||
+ [ -d ${PREFIX}/etc/systemd/system/initrd.target.wants ] || mkdir -p ${PREFIX}/etc/systemd/system/initrd.target.wants
|
||||
+ ln -s ../${_name}.device ${PREFIX}/etc/systemd/system/initrd.target.wants/${_name}.device
|
||||
fi
|
||||
|
||||
mkdir -p ${PREFIX}/etc/systemd/system/${_name}.device.d
|
||||
@@ -885,7 +885,7 @@ cancel_wait_for_dev()
|
||||
rm -f -- "$hookdir/emergency/80-${_name}.sh"
|
||||
if [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
_name=$(dev_unit_name "$1")
|
||||
- rm -f -- ${PREFIX}/etc/systemd/system/initrd.target.requires/${_name}.device
|
||||
+ rm -f -- ${PREFIX}/etc/systemd/system/initrd.target.wants/${_name}.device
|
||||
rm -f -- ${PREFIX}/etc/systemd/system/${_name}.device.d/timeout.conf
|
||||
/sbin/initqueue --onetime --unique --name daemon-reload systemctl daemon-reload
|
||||
fi
|
@ -1,37 +0,0 @@
|
||||
From 40da1e5a319a02f30c585e0e963e75e4257d2bf7 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 10:45:17 +0100
|
||||
Subject: [PATCH] resume: autoconf resume
|
||||
|
||||
---
|
||||
modules.d/95resume/module-setup.sh | 15 +++++++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
|
||||
diff --git a/modules.d/95resume/module-setup.sh b/modules.d/95resume/module-setup.sh
|
||||
index a172c27..ceb7855 100755
|
||||
--- a/modules.d/95resume/module-setup.sh
|
||||
+++ b/modules.d/95resume/module-setup.sh
|
||||
@@ -16,8 +16,23 @@ check() {
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
+cmdline() {
|
||||
+ local _activated
|
||||
+ declare -A _activated
|
||||
+
|
||||
+ for dev in "${!host_fs_types[@]}"; do
|
||||
+ [[ ${host_fs_types[$dev]} =~ ^(swap|swsuspend|swsupend)$ ]] || continue
|
||||
+ printf "resume=%s " "$(shorten_persistent_dev "$(get_persistent_dev "$dev")")"
|
||||
+ done
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
install() {
|
||||
local _bin
|
||||
+
|
||||
+ cmdline >> "${initdir}/etc/cmdline.d/95resume.conf"
|
||||
+ echo >> "${initdir}/etc/cmdline.d/95resume.conf"
|
||||
+
|
||||
# Optional uswsusp support
|
||||
for _bin in /usr/sbin/resume /usr/lib/suspend/resume /usr/lib/uswsusp/resume
|
||||
do
|
@ -1,98 +0,0 @@
|
||||
From 8064f68d602b45778afc3f32a703b8376609d019 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 11:02:34 +0100
|
||||
Subject: [PATCH] resume: no more autoresume
|
||||
|
||||
---
|
||||
modules.d/95resume/parse-resume.sh | 76 +++++++++++++++++++++-----------------
|
||||
1 file changed, 43 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95resume/parse-resume.sh b/modules.d/95resume/parse-resume.sh
|
||||
index bd4bcd3..c84dafb 100755
|
||||
--- a/modules.d/95resume/parse-resume.sh
|
||||
+++ b/modules.d/95resume/parse-resume.sh
|
||||
@@ -36,41 +36,51 @@ case "$splash" in
|
||||
;;
|
||||
esac
|
||||
|
||||
-if [ -n "$resume" ]; then
|
||||
- {
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- } >> /etc/udev/rules.d/99-resume-link.rules
|
||||
|
||||
- {
|
||||
- if [ -x /usr/sbin/resume ]; then
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
- ${resume#/dev/} "$a_splash" "$resume";
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
- ${resume#/dev/} "$a_splash" "$resume";
|
||||
- fi
|
||||
- printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n" \
|
||||
- ${resume#/dev/};
|
||||
- } >> /etc/udev/rules.d/99-resume.rules
|
||||
+if ! getarg noresume; then
|
||||
+ if [ -n "$resume" ]; then
|
||||
+ {
|
||||
+ printf "KERNEL==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
+ ${resume#/dev/};
|
||||
+ printf "SYMLINK==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||
+ ${resume#/dev/};
|
||||
+ } >> /etc/udev/rules.d/99-resume-link.rules
|
||||
|
||||
- printf '[ -e "%s" ] && { ln -s "%s" /dev/resume; rm -f -- "$job" "%s/initqueue/timeout/resume.sh"; }\n' \
|
||||
- "$resume" "$resume" "$hookdir" >> $hookdir/initqueue/settled/resume.sh
|
||||
+ {
|
||||
+ if [ -x /usr/sbin/resume ]; then
|
||||
+ printf -- "KERNEL==\"%s\", " "${resume#/dev/}"
|
||||
+ printf -- "ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- " RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
+ "$a_splash" "$resume";
|
||||
+ printf -- "SYMLINK==\"%s\", " "${resume#/dev/}"
|
||||
+ printf -- "ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- " RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \'%s\'\"\n" \
|
||||
+ "$a_splash" "$resume";
|
||||
+ fi
|
||||
+ printf -- "KERNEL==\"%s\", " ${resume#/dev/};
|
||||
+ printf -- "ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- "%s" " RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n"
|
||||
+ printf -- "SYMLINK==\"%s\", " ${resume#/dev/};
|
||||
+ printf -- "%s" "ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- "%s" " RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %%M:%%m > /sys/power/resume\"\n"
|
||||
+ } >> /etc/udev/rules.d/99-resume.rules
|
||||
|
||||
- printf 'warn "Cancelling resume operation. Device not found."; cancel_wait_for_dev /dev/resume; rm -f -- "$job" "%s/initqueue/settled/resume.sh";' \
|
||||
- "$hookdir" >> $hookdir/initqueue/timeout/resume.sh
|
||||
+ printf '[ -e "%s" ] && { ln -s "%s" /dev/resume; rm -f -- "$job" "%s/initqueue/timeout/resume.sh"; }\n' \
|
||||
+ "$resume" "$resume" "$hookdir" >> $hookdir/initqueue/settled/resume.sh
|
||||
|
||||
- wait_for_dev "/dev/resume"
|
||||
- mv /lib/dracut/resume.sh /lib/dracut/hooks/pre-mount/10-resume.sh
|
||||
-elif ! getarg noresume; then
|
||||
- {
|
||||
- if [ -x /usr/sbin/resume ]; then
|
||||
- printf "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \$tempnode\"\n" "$a_splash"
|
||||
- fi
|
||||
- echo "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\"," \
|
||||
- " RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %M:%m > /sys/power/resume\"";
|
||||
- } >> /etc/udev/rules.d/99-resume.rules
|
||||
+ printf -- "%s" 'warn "Cancelling resume operation. Device not found.";'
|
||||
+ printf -- ' cancel_wait_for_dev /dev/resume; rm -f -- "$job" "%s/initqueue/settled/resume.sh";' \
|
||||
+ "$hookdir" >> $hookdir/initqueue/timeout/resume.sh
|
||||
+
|
||||
+ mv /lib/dracut/resume.sh /lib/dracut/hooks/pre-mount/10-resume.sh
|
||||
+ else
|
||||
+ {
|
||||
+ if [ -x /usr/sbin/resume ]; then
|
||||
+ printf "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- " RUN+=\"/sbin/initqueue --finished --unique --name 00resume /usr/sbin/resume %s \$tempnode\"\n" "$a_splash"
|
||||
+ fi
|
||||
+ printf -- "%s" "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\","
|
||||
+ printf -- "%s" " RUN+=\"/sbin/initqueue --finished --unique --name 00resume echo %M:%m > /sys/power/resume\"";
|
||||
+ } >> /etc/udev/rules.d/99-resume.rules
|
||||
+ fi
|
||||
fi
|
@ -1,22 +0,0 @@
|
||||
From 64ae4e07a4af4db2cdd1009ab484f89b4a6b9cb2 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 2 Dec 2013 11:05:21 +0100
|
||||
Subject: [PATCH] dracut.sh: skip crypt swaps with password files
|
||||
|
||||
---
|
||||
dracut.sh | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 177b813..6975d90 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -947,6 +947,8 @@ if [[ $hostonly ]]; then
|
||||
[[ $_mapper = \#* ]] && continue
|
||||
[[ "$_d" -ef /dev/mapper/"$_mapper" ]] || continue
|
||||
[[ "$_o" ]] || _o="$_p"
|
||||
+ # skip entries with password files
|
||||
+ [[ "$_p" == /* ]] && [[ -f $_p ]] && continue 2
|
||||
# skip mkswap swap
|
||||
[[ $_o == *swap* ]] && continue 2
|
||||
done < /etc/crypttab
|
@ -1,41 +0,0 @@
|
||||
From b29cb51654db13706c7356aa827e554456b25b0a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 15:06:06 +0100
|
||||
Subject: [PATCH] dracut-functions.sh: do not force require modules.builtin*
|
||||
|
||||
---
|
||||
dracut-functions.sh | 7 -------
|
||||
dracut.sh | 2 +-
|
||||
2 files changed, 1 insertion(+), 8 deletions(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 2872516..04f4fea 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -1456,13 +1456,6 @@ dracut_kernel_post() {
|
||||
wait $_pid
|
||||
fi
|
||||
|
||||
- for _f in modules.builtin.bin modules.builtin; do
|
||||
- [[ $srcmods/$_f ]] && break
|
||||
- done || {
|
||||
- dfatal "No modules.builtin.bin and modules.builtin found!"
|
||||
- return 1
|
||||
- }
|
||||
-
|
||||
for _f in modules.builtin.bin modules.builtin modules.order; do
|
||||
[[ $srcmods/$_f ]] && inst_simple "$srcmods/$_f" "/lib/modules/$kernel/$_f"
|
||||
done
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 6975d90..5709874 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -501,7 +501,7 @@ if [[ $regenerate_all == "yes" ]]; then
|
||||
|
||||
cd /lib/modules
|
||||
for i in *; do
|
||||
- [[ -f $i/modules.builtin ]] || continue
|
||||
+ [[ -f $i/modules.dep ]] || [[ -f $i/modules.dep.bin ]] || continue
|
||||
dracut --kver="$i" "${dracut_args[@]}"
|
||||
((ret+=$?))
|
||||
done
|
@ -1,56 +0,0 @@
|
||||
From 443fb524877f28fd072f63c4dd98b74926d2513a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 15:06:39 +0100
|
||||
Subject: [PATCH] 10i18n/parse-i18n.sh: fixed vconsole.conf/locale.conf
|
||||
generation
|
||||
|
||||
---
|
||||
modules.d/10i18n/parse-i18n.sh | 27 +++++++++++++--------------
|
||||
1 file changed, 13 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/modules.d/10i18n/parse-i18n.sh b/modules.d/10i18n/parse-i18n.sh
|
||||
index 416a746..135c57b 100755
|
||||
--- a/modules.d/10i18n/parse-i18n.sh
|
||||
+++ b/modules.d/10i18n/parse-i18n.sh
|
||||
@@ -6,28 +6,27 @@ inst_key_val() {
|
||||
local _value
|
||||
local _file
|
||||
local _default
|
||||
- _default=$1
|
||||
- shift
|
||||
- _file=$1
|
||||
- shift
|
||||
- _value=$(getarg $@)
|
||||
+ _file="$1"; shift
|
||||
+ _key="$1"; shift
|
||||
+ _default="$1"; shift
|
||||
+ _value="$(getarg $@)"
|
||||
[ -z "${_value}" ] && _value=$_default
|
||||
if [ -n "${_value}" ]; then
|
||||
- printf '%s="%s"\n' $2 ${_value} >> $_file
|
||||
+ printf '%s="%s"\n' $key ${_value} >> $_file
|
||||
fi
|
||||
unset _file
|
||||
unset _value
|
||||
}
|
||||
|
||||
-inst_key_val '' /etc/vconsole.conf rd.vconsole.keymap vconsole.keymap KEYMAP -d KEYTABLE
|
||||
-inst_key_val '' /etc/vconsole.conf rd.vconsole.font vconsole.font FONT -d SYSFONT
|
||||
-inst_key_val '' /etc/vconsole.conf rd.vconsole.font.map vconsole.font.map FONT_MAP -d CONTRANS
|
||||
-inst_key_val '' /etc/vconsole.conf rd.vconsole.font.unimap vconsole.font.unimap FONT_UNIMAP -d UNIMAP
|
||||
-inst_key_val 1 /etc/vconsole.conf rd.vconsole.font.unicode vconsole.font.unicode UNICODE vconsole.unicode
|
||||
-inst_key_val '' /etc/vconsole.conf rd.vconsole.keymap.ext vconsole.keymap.ext EXT_KEYMAP
|
||||
+inst_key_val /etc/vconsole.conf KEYMAP '' rd.vconsole.keymap KEYMAP -d KEYTABLE
|
||||
+inst_key_val /etc/vconsole.conf FONT '' rd.vconsole.font FONT -d SYSFONT
|
||||
+inst_key_val /etc/vconsole.conf FONT_MAP '' rd.vconsole.font.map FONT_MAP -d CONTRANS
|
||||
+inst_key_val /etc/vconsole.conf FONT_UNIMAP '' rd.vconsole.font.unimap FONT_UNIMAP -d UNIMAP
|
||||
+inst_key_val /etc/vconsole.conf UNICODE 1 rd.vconsole.font.unicode UNICODE vconsole.unicode
|
||||
+inst_key_val /etc/vconsole.conf EXT_KEYMAP '' rd.vconsole.keymap.ext EXT_KEYMAP
|
||||
|
||||
-inst_key_val '' /etc/locale.conf rd.locale.LANG locale.LANG LANG
|
||||
-inst_key_val '' /etc/locale.conf rd.locale.LC_ALL locale.LC_ALL LC_ALL
|
||||
+inst_key_val /etc/locale.conf LANG '' rd.locale.LANG LANG
|
||||
+inst_key_val /etc/locale.conf LC_ALL '' rd.locale.LC_ALL LC_ALL
|
||||
|
||||
if [ -f /etc/locale.conf ]; then
|
||||
. /etc/locale.conf
|
@ -1,34 +0,0 @@
|
||||
From 690905cea07bdf1783c86522927efb5fd9b5a299 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:42 +0100
|
||||
Subject: [PATCH] 95dasd: Install kernel modules only once
|
||||
|
||||
Move kernel module selection to 95dasd_mod and make 95dasd depend
|
||||
on that module.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95dasd/module-setup.sh | 6 +-----
|
||||
1 file changed, 1 insertion(+), 5 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95dasd/module-setup.sh b/modules.d/95dasd/module-setup.sh
|
||||
index 861df29..16207bc 100755
|
||||
--- a/modules.d/95dasd/module-setup.sh
|
||||
+++ b/modules.d/95dasd/module-setup.sh
|
||||
@@ -11,15 +11,11 @@ check() {
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
+ echo "dasd_mod"
|
||||
return 0
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
-installkernel() {
|
||||
- instmods dasd_mod dasd_eckd_mod dasd_fba_mod dasd_diag_mod
|
||||
-}
|
||||
-
|
||||
-# called by dracut
|
||||
install() {
|
||||
inst_hook cmdline 30 "$moddir/parse-dasd.sh"
|
||||
inst_multiple dasdinfo dasdconf.sh normalize_dasd_arg
|
@ -1,25 +0,0 @@
|
||||
From 07cacb245547066c7b6a335509a0ed77ad227372 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:43 +0100
|
||||
Subject: [PATCH] 95dasd: Only install module if normalize_dasd_arg is present
|
||||
|
||||
normalize_dasd_arg is a RedHat specific script, so no point
|
||||
installing this module if the script isn't present.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95dasd/module-setup.sh | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/modules.d/95dasd/module-setup.sh b/modules.d/95dasd/module-setup.sh
|
||||
index 16207bc..9c93d40 100755
|
||||
--- a/modules.d/95dasd/module-setup.sh
|
||||
+++ b/modules.d/95dasd/module-setup.sh
|
||||
@@ -5,6 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
local _arch=$(uname -m)
|
||||
+ [ -x /sbin/normalize_dasd_arg ] || return 1
|
||||
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
return 0
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
From 8b2b77e460663b3fe45e0eea2f4a5babe4b731bc Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:44 +0100
|
||||
Subject: [PATCH] 95dasd_mod: make dasd_cio_free optional
|
||||
|
||||
dasd_cio_free is a RedHat-specific tool, so make it optional.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95dasd_mod/module-setup.sh | 3 ++-
|
||||
modules.d/95dasd_mod/parse-dasd-mod.sh | 4 +++-
|
||||
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95dasd_mod/module-setup.sh b/modules.d/95dasd_mod/module-setup.sh
|
||||
index 011010d..8fde525 100755
|
||||
--- a/modules.d/95dasd_mod/module-setup.sh
|
||||
+++ b/modules.d/95dasd_mod/module-setup.sh
|
||||
@@ -23,6 +23,7 @@ installkernel() {
|
||||
# called by dracut
|
||||
install() {
|
||||
inst_hook cmdline 31 "$moddir/parse-dasd-mod.sh"
|
||||
- inst_multiple dasd_cio_free grep sed seq
|
||||
+ inst_multiple grep sed seq
|
||||
+ inst_multiple -o dasd_cio_free
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95dasd_mod/parse-dasd-mod.sh b/modules.d/95dasd_mod/parse-dasd-mod.sh
|
||||
index 87c88ed..0236d12 100755
|
||||
--- a/modules.d/95dasd_mod/parse-dasd-mod.sh
|
||||
+++ b/modules.d/95dasd_mod/parse-dasd-mod.sh
|
||||
@@ -15,4 +15,6 @@ if [ -n "$mod_args" ]; then
|
||||
fi
|
||||
|
||||
unset dasd_arg
|
||||
-dasd_cio_free
|
||||
+if [ -x /sbin/dasd_cio_free ] ; then
|
||||
+ dasd_cio_free
|
||||
+fi
|
@ -1,35 +0,0 @@
|
||||
From 61c0665dad633fdd2358a1a2ce5d25d282673c1a Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:45 +0100
|
||||
Subject: [PATCH] 95zfcp: Make installation optional
|
||||
|
||||
zfcp_cio_free is a RedHat-specific tool, so do not install this
|
||||
module if the program isn't present.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95zfcp/module-setup.sh | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95zfcp/module-setup.sh b/modules.d/95zfcp/module-setup.sh
|
||||
index 5d9b506..dfbeed5 100755
|
||||
--- a/modules.d/95zfcp/module-setup.sh
|
||||
+++ b/modules.d/95zfcp/module-setup.sh
|
||||
@@ -5,6 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
arch=$(uname -m)
|
||||
+ [ -x /sbin/zfcp_cio_free ] || return 1
|
||||
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
||||
|
||||
return 0
|
||||
@@ -12,9 +13,6 @@ check() {
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
- arch=$(uname -m)
|
||||
- [ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
||||
-
|
||||
return 0
|
||||
}
|
||||
|
@ -1,25 +0,0 @@
|
||||
From dda7ae7dcdde7f9a00bbaebc7df7fbd7ed2f8ff0 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:46 +0100
|
||||
Subject: [PATCH] 95znet: Make installation optional
|
||||
|
||||
znet_cio_free is a RedHat-specific tool, so do not install this
|
||||
module on systems where the program is missing.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95znet/module-setup.sh | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/modules.d/95znet/module-setup.sh b/modules.d/95znet/module-setup.sh
|
||||
index 4c211a9..5012b77 100755
|
||||
--- a/modules.d/95znet/module-setup.sh
|
||||
+++ b/modules.d/95znet/module-setup.sh
|
||||
@@ -5,6 +5,7 @@
|
||||
# called by dracut
|
||||
check() {
|
||||
arch=$(uname -m)
|
||||
+ [ -z /sbin/znet_cio_free ] || return 1
|
||||
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
||||
|
||||
return 0
|
@ -1,152 +0,0 @@
|
||||
From bfa1db78cdcf6aaea09da560b578426fe663a05e Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:47 +0100
|
||||
Subject: [PATCH] Add DASD configuration for SuSE
|
||||
|
||||
On SuSE the DASD configuration is kept in udev rules, one rule
|
||||
file per device. So add a new module for copying and creating
|
||||
these rules during boot.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
dracut-functions.sh | 28 +++++++++++++++++
|
||||
modules.d/95dasd_rules/module-setup.sh | 27 ++++++++++++++++
|
||||
modules.d/95dasd_rules/parse-dasd.sh | 56 ++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 111 insertions(+)
|
||||
create mode 100755 modules.d/95dasd_rules/module-setup.sh
|
||||
create mode 100755 modules.d/95dasd_rules/parse-dasd.sh
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 04f4fea..7cfa097 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -899,6 +899,34 @@ inst_rules() {
|
||||
done
|
||||
}
|
||||
|
||||
+inst_rules_wildcard() {
|
||||
+ local _target=/etc/udev/rules.d _rule _found
|
||||
+
|
||||
+ inst_dir "${udevdir}/rules.d"
|
||||
+ inst_dir "$_target"
|
||||
+ for _rule in ${udevdir}/rules.d/$1 ${dracutbasedir}/rules.d/$1 ; do
|
||||
+ if [[ -e $_rule ]]; then
|
||||
+ inst_rule_programs "$_rule"
|
||||
+ inst_rule_group_owner "$_rule"
|
||||
+ inst_rule_initqueue "$_rule"
|
||||
+ inst_simple "$_rule"
|
||||
+ _found=$_rule
|
||||
+ fi
|
||||
+ done
|
||||
+ if [ -n ${hostonly} ] ; then
|
||||
+ for _rule in ${_target}/$1 ; do
|
||||
+ if [[ -f $_rule ]]; then
|
||||
+ inst_rule_programs "$_rule"
|
||||
+ inst_rule_group_owner "$_rule"
|
||||
+ inst_rule_initqueue "$_rule"
|
||||
+ inst_simple "$_rule"
|
||||
+ _found=$_rule
|
||||
+ fi
|
||||
+ done
|
||||
+ fi
|
||||
+ [[ $_found ]] || dinfo "Skipping udev rule: $_rule"
|
||||
+}
|
||||
+
|
||||
prepare_udev_rules() {
|
||||
[ -z "$UDEVVERSION" ] && export UDEVVERSION=$(udevadm --version)
|
||||
|
||||
diff --git a/modules.d/95dasd_rules/module-setup.sh b/modules.d/95dasd_rules/module-setup.sh
|
||||
new file mode 100755
|
||||
index 0000000..d313171
|
||||
--- /dev/null
|
||||
+++ b/modules.d/95dasd_rules/module-setup.sh
|
||||
@@ -0,0 +1,27 @@
|
||||
+#!/bin/bash
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ local _arch=$(uname -m)
|
||||
+ [ -x /sbin/dasd_configure ] || return 1
|
||||
+ [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ echo 'dasd_mod'
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ inst_multiple /usr/lib/udev/collect
|
||||
+ inst_hook cmdline 30 "$moddir/parse-dasd.sh"
|
||||
+ if [[ $hostonly ]] ; then
|
||||
+ inst_rules_wildcard 51-dasd-*.rules
|
||||
+ fi
|
||||
+ inst_rules 59-dasd.rules
|
||||
+}
|
||||
diff --git a/modules.d/95dasd_rules/parse-dasd.sh b/modules.d/95dasd_rules/parse-dasd.sh
|
||||
new file mode 100755
|
||||
index 0000000..9389c44
|
||||
--- /dev/null
|
||||
+++ b/modules.d/95dasd_rules/parse-dasd.sh
|
||||
@@ -0,0 +1,56 @@
|
||||
+#!/bin/sh
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+create_udev_rule() {
|
||||
+ local ccw=$1
|
||||
+ local _drv _cu_type _dev_type
|
||||
+ local _rule=/etc/udev/rules.d/51-dasd-${ccw}.rules
|
||||
+
|
||||
+ if [ -e /sys/bus/ccw/devices/${ccw} ] ; then
|
||||
+ read _cu_type < /sys/bus/ccw/devices/${ccw}/cutype
|
||||
+ read _dev_type < /sys/bus/ccw/devices/${ccw}/devtype
|
||||
+ fi
|
||||
+ case "$_cu_type" in
|
||||
+ 3990/*|2105/*|2107/*|1750/*|9343/*)
|
||||
+ _drv=dasd-eckd
|
||||
+ ;;
|
||||
+ 6310/*)
|
||||
+ _drv=dasd-fba
|
||||
+ ;;
|
||||
+ 3880/*)
|
||||
+ case "$_dev_type" in
|
||||
+ 3380/*)
|
||||
+ _drv=dasd_eckd
|
||||
+ ;;
|
||||
+ 3370/*)
|
||||
+ _drv=dasd-fba
|
||||
+ ;;
|
||||
+ esac
|
||||
+ ;;
|
||||
+ esac
|
||||
+ [ -z "${_drv}" ] && return 0
|
||||
+
|
||||
+ [ -e ${_rule} ] && return 0
|
||||
+
|
||||
+ cat > $_rule <<EOF
|
||||
+ACTION=="add", SUBSYSTEM=="ccw", KERNEL=="$ccw", IMPORT{program}="collect $ccw %k ${ccw} $_drv"
|
||||
+ACTION=="add", SUBSYSTEM=="drivers", KERNEL=="$_drv", IMPORT{program}="collect $ccw %k ${ccw} $_drv"
|
||||
+ACTION=="add", ENV{COLLECT_$ccw}=="0", ATTR{[ccw/$ccw]online}="1"
|
||||
+EOF
|
||||
+}
|
||||
+
|
||||
+for dasd_arg in $(getargs root=) $(getargs resume=); do
|
||||
+ (
|
||||
+ case $dasd_arg in
|
||||
+ /dev/disk/by-path/ccw-*)
|
||||
+ ccw_arg=${dasd_arg##*/}
|
||||
+ break;
|
||||
+ esac
|
||||
+ if [ -n "$ccw_arg" ] ; then
|
||||
+ IFS="-"
|
||||
+ set -- $ccw_arg
|
||||
+ create_udev_rule $2
|
||||
+ fi
|
||||
+ )
|
||||
+done
|
@ -1,118 +0,0 @@
|
||||
From d6f0467edf3895143713eab579f48df2be140178 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:48 +0100
|
||||
Subject: [PATCH] Add zfcp scripts for SUSE
|
||||
|
||||
SuSE is storing the zfcp configuration in udev files, so we should
|
||||
be including these.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/95zfcp_rules/module-setup.sh | 25 +++++++++++++
|
||||
modules.d/95zfcp_rules/parse-zfcp.sh | 65 ++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 90 insertions(+)
|
||||
create mode 100755 modules.d/95zfcp_rules/module-setup.sh
|
||||
create mode 100755 modules.d/95zfcp_rules/parse-zfcp.sh
|
||||
|
||||
diff --git a/modules.d/95zfcp_rules/module-setup.sh b/modules.d/95zfcp_rules/module-setup.sh
|
||||
new file mode 100755
|
||||
index 0000000..9a1ab20
|
||||
--- /dev/null
|
||||
+++ b/modules.d/95zfcp_rules/module-setup.sh
|
||||
@@ -0,0 +1,25 @@
|
||||
+#!/bin/bash
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ local _arch=$(uname -m)
|
||||
+ [ -x /sbin/zfcp_disk_configure ] || return 1
|
||||
+ [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ inst_multiple /usr/lib/udev/collect
|
||||
+ inst_hook cmdline 30 "$moddir/parse-zfcp.sh"
|
||||
+ if [[ $hostonly ]] ; then
|
||||
+ inst_rules_wildcard 51-zfcp-*.rules
|
||||
+ fi
|
||||
+}
|
||||
diff --git a/modules.d/95zfcp_rules/parse-zfcp.sh b/modules.d/95zfcp_rules/parse-zfcp.sh
|
||||
new file mode 100755
|
||||
index 0000000..24dbdd3
|
||||
--- /dev/null
|
||||
+++ b/modules.d/95zfcp_rules/parse-zfcp.sh
|
||||
@@ -0,0 +1,65 @@
|
||||
+#!/bin/sh
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+create_udev_rule() {
|
||||
+ local ccw=$1
|
||||
+ local wwpn=$2
|
||||
+ local lun=$3
|
||||
+ local _rule=/etc/udev/rules.d/51-zfcp-${ccw}.rules
|
||||
+
|
||||
+ local _cu_type _dev_type
|
||||
+ local _rule=/etc/udev/rules.d/51-zfcp-${ccw}.rules
|
||||
+
|
||||
+ if [ -e /sys/bus/ccw/devices/${ccw} ] ; then
|
||||
+ read _cu_type < /sys/bus/ccw/devices/${ccw}/cutype
|
||||
+ read _dev_type < /sys/bus/ccw/devices/${ccw}/devtype
|
||||
+ fi
|
||||
+ if [ "$_cu_type" != "1731/03" ] ; then
|
||||
+ return 0;
|
||||
+ fi
|
||||
+ if [ "$_dev_type" != "1732/03" ] && [ "$_dev_type" != "1732/04" ] ; then
|
||||
+ return 0;
|
||||
+ fi
|
||||
+
|
||||
+ [ -e ${_rule} ] && return 0
|
||||
+
|
||||
+ if [ ! -f "$_rule" ] ; then
|
||||
+ cat > $_rule <<EOF
|
||||
+ACTION=="add", SUBSYSTEM=="ccw", KERNEL=="$ccw", IMPORT{program}="collect $ccw %k ${ccw} zfcp"
|
||||
+ACTION=="add", SUBSYSTEM=="drivers", KERNEL=="zfcp", IMPORT{program}="collect $ccw %k ${ccw} zfcp"
|
||||
+ACTION=="add", ENV{COLLECT_$ccw}=="0", ATTR{[ccw/$ccw]online}="1"
|
||||
+EOF
|
||||
+ fi
|
||||
+ m=$(sed -n "/.*${wwpn}.*${lun}.*/p" $_rule)
|
||||
+ if [ -z "$m" ] ; then
|
||||
+ cat >> $_rule <<EOF
|
||||
+ACTION=="add", KERNEL=="rport-*", ATTR{port_name}=="$wwpn", SUBSYSTEMS=="ccw", KERNELS=="$ccw", ATTR{[ccw/$ccw]$wwpn/unit_add}="$lun"
|
||||
+EOF
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
+for zfcp_arg in $(getargs rd.zfcp); do
|
||||
+ (
|
||||
+ IFS=","
|
||||
+ set $zfcp_arg
|
||||
+ create_udev_rule $1 $2 $3
|
||||
+ )
|
||||
+done
|
||||
+
|
||||
+for zfcp_arg in $(getargs root=) $(getargs resume=); do
|
||||
+ (
|
||||
+ case $zfcp_arg in
|
||||
+ /dev/disk/by-path/ccw-*)
|
||||
+ ccw_arg=${zfcp_arg##*/}
|
||||
+ break;
|
||||
+ esac
|
||||
+ if [ -n "$ccw_arg" ] ; then
|
||||
+ IFS="-"
|
||||
+ set -- $ccw_arg
|
||||
+ wwpn=${4%:*}
|
||||
+ lun=${4#*:}
|
||||
+ create_udev_rule $2 $wwpn $lun
|
||||
+ fi
|
||||
+ )
|
||||
+done
|
@ -1,67 +0,0 @@
|
||||
From ee54b8404c10e29e5bddb633a4c7becb7acb0632 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:49 +0100
|
||||
Subject: [PATCH] Make logfile configurable
|
||||
|
||||
Add '--logfile' option to make the log file configurable during
|
||||
runtime.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
dracut.8.asc | 6 ++++++
|
||||
dracut.sh | 4 ++++
|
||||
2 files changed, 10 insertions(+)
|
||||
|
||||
diff --git a/dracut.8.asc b/dracut.8.asc
|
||||
index 2ea6744..d381dcf 100644
|
||||
--- a/dracut.8.asc
|
||||
+++ b/dracut.8.asc
|
||||
@@ -275,6 +275,12 @@ Default:
|
||||
|
||||
**--sshkey** _<sshkey file>_:: ssh key file used with ssh-client module.
|
||||
|
||||
+**--logfile** _<logfile>_:: logfile to use; overrides any setting from
|
||||
+ the configuration files.
|
||||
++
|
||||
+Default:
|
||||
+ _/var/log/dracut.log_
|
||||
+
|
||||
**-l, --local**::
|
||||
activates the local mode. dracut will use modules from the current working
|
||||
directory instead of the system-wide installed modules in
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 5709874..11dcd0e 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -183,6 +183,7 @@ Creates initial ramdisk images for preloading modules
|
||||
--keep Keep the temporary initramfs for debugging purposes
|
||||
--printsize Print out the module install size
|
||||
--sshkey [SSHKEY] Add ssh key to initramfs (use with ssh-client module)
|
||||
+ --logfile [FILE] Logfile to use (overrides configuration setting)
|
||||
|
||||
If [LIST] has multiple arguments, then you have to put these in quotes.
|
||||
|
||||
@@ -335,6 +336,7 @@ TEMP=$(unset POSIXLY_CORRECT; getopt \
|
||||
--long debug \
|
||||
--long profile \
|
||||
--long sshkey: \
|
||||
+ --long logfile: \
|
||||
--long verbose \
|
||||
--long quiet \
|
||||
--long local \
|
||||
@@ -418,6 +420,7 @@ while :; do
|
||||
--debug) debug="yes";;
|
||||
--profile) profile="yes";;
|
||||
--sshkey) sshkey="$2"; shift;;
|
||||
+ --logfile) logfile_l="$2"; shift;;
|
||||
-v|--verbose) ((verbosity_mod_l++));;
|
||||
-q|--quiet) ((verbosity_mod_l--));;
|
||||
-l|--local)
|
||||
@@ -690,6 +693,7 @@ stdloglvl=$((stdloglvl + verbosity_mod_l))
|
||||
[[ $ro_mnt_l ]] && ro_mnt="yes"
|
||||
[[ $early_microcode_l ]] && early_microcode=$early_microcode_l
|
||||
[[ $early_microcode ]] || early_microcode=no
|
||||
+[[ $logfile_l ]] && logfile="$logfile_l"
|
||||
# eliminate IFS hackery when messing with fw_dir
|
||||
fw_dir=${fw_dir//:/ }
|
||||
|
@ -1,375 +0,0 @@
|
||||
From 2b3e22d60246e7c8bfa96a6d7504fb0bfa67e641 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:50 +0100
|
||||
Subject: [PATCH] mkinitrd-suse: Add SUSE compability wrapper for dracut
|
||||
|
||||
SUSE has its own mkinitrd system. As the arguments clash
|
||||
with the dracut-provided mkinitrd script I've added a new
|
||||
mkinitrd-suse.sh wrapper.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
mkinitrd-suse.sh | 354 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 354 insertions(+)
|
||||
create mode 100755 mkinitrd-suse.sh
|
||||
|
||||
diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh
|
||||
new file mode 100755
|
||||
index 0000000..d20270a
|
||||
--- /dev/null
|
||||
+++ b/mkinitrd-suse.sh
|
||||
@@ -0,0 +1,354 @@
|
||||
+#!/bin/bash --norc
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+#
|
||||
+# mkinitrd compability wrapper for SUSE.
|
||||
+#
|
||||
+# Copyright (c) 2013 SUSE Linux Products GmbH. All rights reserved.
|
||||
+#
|
||||
+# This program is free software; you can redistribute it and/or modify
|
||||
+# it under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation; either version 2 of the License, or
|
||||
+# (at your option) any later version.
|
||||
+#
|
||||
+# This program is distributed in the hope that it will be useful,
|
||||
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+# GNU General Public License for more details.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+#
|
||||
+
|
||||
+boot_dir="/boot"
|
||||
+quiet=0
|
||||
+host_only=1
|
||||
+force=0
|
||||
+logfile=/var/log/YaST2/mkinitrd.log
|
||||
+dracut_cmd=dracut
|
||||
+
|
||||
+error() { echo "$@" >&2; }
|
||||
+
|
||||
+usage () {
|
||||
+ [[ $1 = '-n' ]] && cmd=echo || cmd=error
|
||||
+
|
||||
+ $cmd "usage: ${0##*/} [options]"
|
||||
+ $cmd ""
|
||||
+ $cmd " Create initial ramdisk images that contain all kernel modules needed"
|
||||
+ $cmd " in the early boot process, before the root file system becomes"
|
||||
+ $cmd " available."
|
||||
+ $cmd " This usually includes SCSI and/or RAID modules, a file system module"
|
||||
+ $cmd " for the root file system, or a network interface driver module for dhcp."
|
||||
+ $cmd ""
|
||||
+ $cmd " options:"
|
||||
+ $cmd " -f \"feature list\" Features to be enabled when generating initrd."
|
||||
+ $cmd " Available features are:"
|
||||
+ $cmd " iscsi, md, multipath, lvm, lvm2,"
|
||||
+ $cmd " ifup, fcoe, dcbd"
|
||||
+ $cmd " -k \"kernel list\" List of kernel images for which initrd files are"
|
||||
+ $cmd " created. Defaults to all kernels found in /boot."
|
||||
+ $cmd " -i \"initrd list\" List of file names for the initrd; position have"
|
||||
+ $cmd " match to \"kernel list\". Defaults to all kernels"
|
||||
+ $cmd " found in /boot."
|
||||
+ $cmd " -b boot_dir Boot directory. Defaults to /boot."
|
||||
+ $cmd " -t tmp_dir Temporary directory. Defaults to /var/tmp."
|
||||
+ $cmd " -M map System.map file to use."
|
||||
+ $cmd " -A Create a so called \"monster initrd\" which"
|
||||
+ $cmd " includes all features and modules possible."
|
||||
+ $cmd " -B Do not update bootloader configuration."
|
||||
+ $cmd " -v Verbose mode."
|
||||
+ $cmd " -L Disable logging."
|
||||
+ $cmd " -h This help screen."
|
||||
+ $cmd " -m \"module list\" Modules to include in initrd. Defaults to the"
|
||||
+ $cmd " INITRD_MODULES variable in /etc/sysconfig/kernel"
|
||||
+ $cmd " -u \"DomU module list\" Modules to include in initrd. Defaults to the"
|
||||
+ $cmd " DOMU_INITRD_MODULES variable in"
|
||||
+ $cmd " /etc/sysconfig/kernel."
|
||||
+ $cmd " -d root_device Root device. Defaults to the device from"
|
||||
+ $cmd " which / is mounted. Overrides the rootdev"
|
||||
+ $cmd " enviroment variable if set."
|
||||
+ $cmd " -j device Journal device"
|
||||
+ $cmd " -D interface Run dhcp on the specified interface."
|
||||
+ $cmd " -I interface Configure the specified interface statically."
|
||||
+ $cmd " -a acpi_dsdt Attach compiled ACPI DSDT (Differentiated"
|
||||
+ $cmd " System Description Table) to initrd. This"
|
||||
+ $cmd " replaces the DSDT of the BIOS. Defaults to"
|
||||
+ $cmd " the ACPI_DSDT variable in /etc/sysconfig/kernel."
|
||||
+ $cmd " -s size Add splash animation and bootscreen to initrd."
|
||||
+
|
||||
+ [[ $1 = '-n' ]] && exit 0
|
||||
+ exit 1
|
||||
+}
|
||||
+
|
||||
+# Little helper function for reading args from the commandline.
|
||||
+# it automatically handles -a b and -a=b variants, and returns 1 if
|
||||
+# we need to shift $3.
|
||||
+read_arg() {
|
||||
+ # $1 = arg name
|
||||
+ # $2 = arg value
|
||||
+ # $3 = arg parameter
|
||||
+ param="$1"
|
||||
+ local rematch='^[^=]*=(.*)$' result
|
||||
+ if [[ $2 =~ $rematch ]]; then
|
||||
+ read "$param" <<< "${BASH_REMATCH[1]}"
|
||||
+ else
|
||||
+ for ((i=3; $i <= $#; i++)); do
|
||||
+ # Only read next arg if it not an arg itself.
|
||||
+ if [[ ${@:$i:1} = -* ]];then
|
||||
+ break
|
||||
+ fi
|
||||
+ result="$result ${@:$i:1}"
|
||||
+ # There is no way to shift our callers args, so
|
||||
+ # return "no of args" to indicate they should do it instead.
|
||||
+ done
|
||||
+ read "$1" <<< "$result"
|
||||
+ return $(($i - 3))
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
+# Helper functions to calculate ipconfig command line
|
||||
+calc_netmask() {
|
||||
+ local prefix=$1
|
||||
+
|
||||
+ [ -z "$prefix" ] && return
|
||||
+ mask=$(echo "(2 ^ 32) - (2 ^ $prefix)" | bc -l)
|
||||
+ byte1=$(( mask >> 24 ))
|
||||
+ byte2=$(( mask >> 16 ))
|
||||
+ byte3=$(( mask >> 8 ))
|
||||
+ byte4=$(( mask & 0xff ))
|
||||
+ netmask=$(printf "%d.%d.%d.%d" $(( byte1 & 0xff )) $(( byte2 & 0xff )) $(( byte3 & 0xff )) $byte4);
|
||||
+
|
||||
+ echo $netmask
|
||||
+}
|
||||
+
|
||||
+ipconfig() {
|
||||
+ local interface=$1
|
||||
+ local iplink macaddr broadcast gateway ipaddr prefix netmask
|
||||
+
|
||||
+ iplink=$(ip addr show dev $interface | sed -n 's/ *inet \(.*\) brd.*/\1/p')
|
||||
+ macaddr=$(ip addr show dev $interface | sed -n 's/.*ether \(.*\) brd.*/\1/p')
|
||||
+ broadcast=$(ip addr show dev $interface | sed -n 's/.*brd \(.*\) scope.*/\1/p')
|
||||
+ gateway=$(ip route show dev $interface | sed -n 's/default via \([0-9\.]*\).*/\1/p')
|
||||
+
|
||||
+ ipaddr=${iplink%%/*}
|
||||
+ prefix=${iplink##*/}
|
||||
+ netmask=$(calc_netmask $prefix)
|
||||
+
|
||||
+ echo "${ipaddr}:${serveraddr}:${gateway}:${netmask}:${hostname}:${interface}:none::${macaddr}"
|
||||
+}
|
||||
+
|
||||
+is_xen_kernel() {
|
||||
+ local kversion=$1
|
||||
+ local root_dir=$2
|
||||
+ local cfg
|
||||
+
|
||||
+ for cfg in ${root_dir}/boot/config-$kversion $root_dir/lib/modules/$kversion/build/.config
|
||||
+ do
|
||||
+ test -r $cfg || continue
|
||||
+ grep -q "^CONFIG_XEN=y\$" $cfg
|
||||
+ return
|
||||
+ done
|
||||
+ test $kversion != "${kversion%-xen*}"
|
||||
+ return
|
||||
+}
|
||||
+
|
||||
+
|
||||
+# Taken over from SUSE mkinitrd
|
||||
+default_kernel_images() {
|
||||
+ local regex kernel_image kernel_version version_version initrd_image
|
||||
+ local qf='%{NAME}-%{VERSION}-%{RELEASE}\n'
|
||||
+
|
||||
+ case "$(uname -m)" in
|
||||
+ s390|s390x)
|
||||
+ regex='image'
|
||||
+ ;;
|
||||
+ ppc|ppc64)
|
||||
+ regex='vmlinux'
|
||||
+ ;;
|
||||
+ i386|x86_64)
|
||||
+ regex='vmlinuz'
|
||||
+ ;;
|
||||
+ arm*)
|
||||
+ regex='[uz]Image'
|
||||
+ ;;
|
||||
+ aarch64)
|
||||
+ regex='Image'
|
||||
+ ;;
|
||||
+ *) regex='vmlinu.'
|
||||
+ ;;
|
||||
+ esac
|
||||
+
|
||||
+ kernel_images=""
|
||||
+ initrd_images=""
|
||||
+ for kernel_image in $(ls $boot_dir \
|
||||
+ | sed -ne "\|^$regex\(-[0-9.]\+-[0-9]\+-[a-z0-9]\+$\)\?|p" \
|
||||
+ | grep -v kdump$ ) ; do
|
||||
+
|
||||
+ # Note that we cannot check the RPM database here -- this
|
||||
+ # script is itself called from within the binary kernel
|
||||
+ # packages, and rpm does not allow recursive calls.
|
||||
+
|
||||
+ [ -L "$boot_dir/$kernel_image" ] && continue
|
||||
+ [ "${kernel_image%%.gz}" != "$kernel_image" ] && continue
|
||||
+ kernel_version=$(/usr/bin/get_kernel_version \
|
||||
+ $boot_dir/$kernel_image 2> /dev/null)
|
||||
+ initrd_image=$(echo $kernel_image | sed -e "s|${regex}|initrd|")
|
||||
+ if [ "$kernel_image" != "$initrd_image" -a \
|
||||
+ -n "$kernel_version" -a \
|
||||
+ -d "/lib/modules/$kernel_version" ]; then
|
||||
+ kernel_images="$kernel_images $boot_dir/$kernel_image"
|
||||
+ initrd_images="$initrd_images $boot_dir/$initrd_image"
|
||||
+ fi
|
||||
+ done
|
||||
+ for kernel_image in $kernel_images;do
|
||||
+ kernels="$kernels ${kernel_image#*-}"
|
||||
+ done
|
||||
+ for initrd_image in $initrd_images;do
|
||||
+ targets="$targets $initrd_image"
|
||||
+ done
|
||||
+ host_only=1
|
||||
+ force=1
|
||||
+}
|
||||
+
|
||||
+while (($# > 0)); do
|
||||
+ case ${1%%=*} in
|
||||
+ -f) read_arg feature_list "$@" || shift $?
|
||||
+ # Could be several features
|
||||
+ ;;
|
||||
+ -k) # Would be nice to get a list of images here
|
||||
+ read_arg kernel_images "$@" || shift $?
|
||||
+ for kernel_image in $kernel_images;do
|
||||
+ kernels="$kernels ${kernel_image#*-}"
|
||||
+ done
|
||||
+ host_only=1
|
||||
+ force=1
|
||||
+ ;;
|
||||
+ -i) read_arg initrd_images "$@" || shift $?
|
||||
+ for initrd_image in $initrd_images;do
|
||||
+ # Check if the initrd_image contains a path.
|
||||
+ # if not, then add the default boot_dir
|
||||
+ dname=`dirname $initrd_image`
|
||||
+ if [ "$dname" == "." ]; then
|
||||
+ targets="$targets $boot_dir/$initrd_image";
|
||||
+ else
|
||||
+ targets="$targets $initrd_image";
|
||||
+ fi
|
||||
+ done
|
||||
+ ;;
|
||||
+ -b) read_arg boot_dir "$@" || shift $?
|
||||
+ if [ ! -d $boot_dir ];then
|
||||
+ error "Boot directory $boot_dir does not exist"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ ;;
|
||||
+ -t) read_arg tmp_dir "$@" || shift $?
|
||||
+ dracut_args="${dracut_args} --tmpdir $tmp_dir"
|
||||
+ ;;
|
||||
+ -M) read_arg map_file "$@" || shift $?
|
||||
+ ;;
|
||||
+ -A) host_only=0;;
|
||||
+ -B) skip_update_bootloader=1;;
|
||||
+ -v|--verbose) dracut_args="${dracut_args} -v";;
|
||||
+ -L) logfile=;;
|
||||
+ -h|--help) usage -n;;
|
||||
+ -m) read_arg module_list "$@" || shift $? ;;
|
||||
+ -u) read_arg domu_module_list "$@" || shift $?
|
||||
+ echo "mkinitrd: DomU modules not yet supported" ;;
|
||||
+ -d) read_arg rootfs "$@" || shift $?
|
||||
+ dracut_args="${dracut_args} --filesystems $rootfs" ;;
|
||||
+ -D) read_arg dhcp_if "$@" || shift $?
|
||||
+ dracut_cmdline="${dracut_cmdline} ip=${dhcp_if}:dhcp"
|
||||
+ ;;
|
||||
+ -I) read_arg static_if "$@" || shift $?
|
||||
+ dracut_cmdline="${dracut_cmdline} ip=$(ipconfig $static_if)":
|
||||
+ ;;
|
||||
+ -a) read_arg acpi_dsdt "$@" || shift $?
|
||||
+ echo "mkinitrd: custom DSDT not yet supported"
|
||||
+ exit 1
|
||||
+ ;;
|
||||
+ -s) read_arg boot_splash "$@" || shift $?
|
||||
+ echo "mkinitrd: boot splash not yet supported"
|
||||
+ exit 1
|
||||
+ ;;
|
||||
+ -V) echo "mkinitrd: vendor scipts are no longer supported"
|
||||
+ exit 1;;
|
||||
+ --dracut)
|
||||
+ read_arg dracut_cmd "$@" || shift $? ;;
|
||||
+ --version|-R)
|
||||
+ echo "mkinitrd: dracut compatibility wrapper"
|
||||
+ exit 0;;
|
||||
+ --force) force=1;;
|
||||
+ --quiet|-q) quiet=1;;
|
||||
+ *) if [[ ! $targets ]]; then
|
||||
+ targets=$1
|
||||
+ elif [[ ! $kernels ]]; then
|
||||
+ kernels=$1
|
||||
+ else
|
||||
+ usage
|
||||
+ fi;;
|
||||
+ esac
|
||||
+ shift
|
||||
+done
|
||||
+
|
||||
+[[ $targets && $kernels ]] || default_kernel_images
|
||||
+[[ $targets && $kernels ]] || (error "No kernel found in $boot_dir" && usage)
|
||||
+
|
||||
+# We can have several targets/kernels, transform the list to an array
|
||||
+targets=( $targets )
|
||||
+[[ $kernels ]] && kernels=( $kernels )
|
||||
+
|
||||
+[[ $logfile ]] && dracut_args="${dracut_args} --logfile $logfile"
|
||||
+[[ $host_only == 1 ]] && dracut_args="${dracut_args} --hostonly"
|
||||
+[[ $force == 1 ]] && dracut_args="${dracut_args} --force"
|
||||
+[[ $dracut_cmdline ]] && dracut_args="${dracut_args} --kernel-cmdline ${dracut_cmdline}"
|
||||
+[ -z "$(type -p update-bootloader)" ] && skip_update_bootloader=1
|
||||
+
|
||||
+# Update defaults from /etc/sysconfig/kernel
|
||||
+if [ -f /etc/sysconfig/kernel ] ; then
|
||||
+ . /etc/sysconfig/kernel
|
||||
+fi
|
||||
+[[ $module_list ]] || module_list="${INITRD_MODULES}"
|
||||
+basicmodules="$basicmodules ${module_list}"
|
||||
+[[ $domu_module_list ]] || domu_module_list="${DOMU_INITRD_MODULES}"
|
||||
+[[ $acpi_dsdt ]] || acpi_dsdt="${ACPI_DSDT}"
|
||||
+
|
||||
+echo "Creating: target|kernel|dracut args|basicmodules "
|
||||
+for ((i=0 ; $i<${#targets[@]} ; i++)); do
|
||||
+
|
||||
+ if [[ $img_vers ]];then
|
||||
+ target="${targets[$i]}-${kernels[$i]}"
|
||||
+ else
|
||||
+ target="${targets[$i]}"
|
||||
+ fi
|
||||
+ kernel="${kernels[$i]}"
|
||||
+
|
||||
+ # Duplicate code: No way found how to redirect output based on $quiet
|
||||
+ if [[ $quiet == 1 ]];then
|
||||
+ echo "$target|$kernel|$dracut_args|$basicmodules"
|
||||
+ if is_xen_kernel $kernel $rootfs ; then
|
||||
+ basicmodules="$basicmodules ${domu_module_list}"
|
||||
+ fi
|
||||
+ if [[ $basicmodules ]]; then
|
||||
+ $dracut_cmd $dracut_args --add-drivers "$basicmodules" "$target" \
|
||||
+ "$kernel" &>/dev/null
|
||||
+ else
|
||||
+ $dracut_cmd $dracut_args "$target" "$kernel" &>/dev/null
|
||||
+ fi
|
||||
+ else
|
||||
+ if is_xen_kernel $kernel $rootfs ; then
|
||||
+ basicmodules="$basicmodules ${domu_module_list}"
|
||||
+ fi
|
||||
+ if [[ $basicmodules ]]; then
|
||||
+ $dracut_cmd $dracut_args --add-drivers "$basicmodules" "$target" \
|
||||
+ "$kernel"
|
||||
+ else
|
||||
+ $dracut_cmd $dracut_args "$target" "$kernel"
|
||||
+ fi
|
||||
+ fi
|
||||
+done
|
||||
+
|
||||
+if [ "$skip_update_bootloader" ] ; then
|
||||
+ echo 2>&1 "Did not refresh the bootloader. You might need to refresh it manually."
|
||||
+else
|
||||
+ update-bootloader --refresh
|
||||
+fi
|
@ -1,136 +0,0 @@
|
||||
From 463e13fe8144376a95bf437b64c16bec056a9855 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:51 +0100
|
||||
Subject: [PATCH] mkinitrd-suse.8.asc: Add manpage for SUSE compat mkinitrd
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
Makefile | 1 +
|
||||
mkinitrd-suse.8.asc | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 107 insertions(+)
|
||||
create mode 100644 mkinitrd-suse.8.asc
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index e7da948..ba551cf 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -27,6 +27,7 @@ man7pages = dracut.cmdline.7 \
|
||||
man8pages = dracut.8 \
|
||||
dracut-catimages.8 \
|
||||
mkinitrd.8 \
|
||||
+ mkinitrd-suse.8 \
|
||||
modules.d/98systemd/dracut-cmdline.service.8 \
|
||||
modules.d/98systemd/dracut-initqueue.service.8 \
|
||||
modules.d/98systemd/dracut-mount.service.8 \
|
||||
diff --git a/mkinitrd-suse.8.asc b/mkinitrd-suse.8.asc
|
||||
new file mode 100644
|
||||
index 0000000..9eb8fc9
|
||||
--- /dev/null
|
||||
+++ b/mkinitrd-suse.8.asc
|
||||
@@ -0,0 +1,106 @@
|
||||
+MKINITRD(8)
|
||||
+===========
|
||||
+:doctype: manpage
|
||||
+:man source: dracut
|
||||
+:man manual: dracut
|
||||
+
|
||||
+NAME
|
||||
+----
|
||||
+mkinitrd-suse - is a compat wrapper, which calls dracut to generate an initramfs
|
||||
+
|
||||
+SYNOPSIS
|
||||
+--------
|
||||
+*mkinitrd* ['OPTION...']
|
||||
+
|
||||
+DESCRIPTION
|
||||
+-----------
|
||||
+*mkinitrd* creates an initramfs image <initrd-image> for the kernel with
|
||||
+version <kernel-version> by calling *dracut*.
|
||||
+
|
||||
+[IMPORTANT]
|
||||
+This version of mkinitrd is provided for compability with older
|
||||
+versions of mkinitrd. If a more fine grained control over the
|
||||
+resulting image is needed, *dracut* should be called directly.
|
||||
+
|
||||
+OPTIONS
|
||||
+-------
|
||||
+**-R, --version**::
|
||||
+ print info about the version
|
||||
+
|
||||
+**-k** _<kernel_list>_::
|
||||
+ List of kernel images for which initrd files are created (relative
|
||||
+ to _boot_dir_), defaults to _vmlinux_ on ppc/ppc64, _image_ on s390/s390x
|
||||
+ and _vmlinuz_ for everything else.
|
||||
+
|
||||
+**-i** _<initrd_list>_::
|
||||
+ List of file names (relative to _boot_dir_) for the initrd; positions
|
||||
+ have to match the _kernel_list_. Defaults to _initrd_.
|
||||
+
|
||||
+**-m** _<module_list>_::
|
||||
+ Modules to include in initrd, defaults to _INITRD_MODULES_ variable
|
||||
+ in */etc/sysconfig/kernel*.
|
||||
+
|
||||
+**-f** _<feature_list>_::
|
||||
+ Features to be enabled for the initrd. In general mkinitrd
|
||||
+ configures the initrd for the root device it is started from. With
|
||||
+ this option additional feature can be enabled.
|
||||
+
|
||||
+**-b** _<bootdir>_::
|
||||
+ Boot directory, defaults to */boot*, where the initrd is created.
|
||||
+
|
||||
+**-d** _<root_device>_::
|
||||
+ Root device, defaults to the device from which the root_dir is
|
||||
+ mounted; overwrites the rootdev enviroment variable if set
|
||||
+
|
||||
+**-s** _<size>_::
|
||||
+ Add splash animation and bootscreen to initrd.
|
||||
+
|
||||
+**-D** _<interface>::
|
||||
+ Run dhcp on the specified interface (for example "eth0").
|
||||
+
|
||||
+**-I** _<interface>::
|
||||
+ Configure the specified interface statically.
|
||||
+
|
||||
+**-a** _<acpi_dsdt>::
|
||||
+ Attach compiled ACPI DSDT (Differentiated System Description Table)
|
||||
+ to initrd. This replaces the DSDT of the BIOS. Defaults to the
|
||||
+ _ACPI_DSDT_ variable in */etc/sysconfig/kernel*.
|
||||
+
|
||||
+**-M** _<map>::
|
||||
+ System.map file to use.
|
||||
+
|
||||
+**-B**::
|
||||
+ Don’t run the *update-bootloader(8)* script after the initrd(s) have
|
||||
+ been created. This is useful if you call mkinitrd(8) for anything
|
||||
+ else than the running system.
|
||||
+
|
||||
+**-A**::
|
||||
+ Create a so called "monster initrd" which includes all available
|
||||
+ features and modules.
|
||||
+
|
||||
+**-v, --verbose**::
|
||||
+ increase verbosity level
|
||||
+
|
||||
+**-L**::
|
||||
+ Disable logging to _/var/log/YaST2/mkinitrd.log_. This is useful for
|
||||
+ testing if you don’t want to clutter the system log.
|
||||
+
|
||||
+**--force**::
|
||||
+ overwrite existing initramfs file.
|
||||
+
|
||||
+**--help**::
|
||||
+ print a help message and exit.
|
||||
+
|
||||
+AVAILABILITY
|
||||
+------------
|
||||
+The mkinitrd command is part of the dracut package and is available from
|
||||
+link:$$https://dracut.wiki.kernel.org$$[https://dracut.wiki.kernel.org]
|
||||
+
|
||||
+AUTHORS
|
||||
+-------
|
||||
+Harald Hoyer, Hannes Reinecke
|
||||
+
|
||||
+SEE ALSO
|
||||
+--------
|
||||
+*dracut*(8)
|
||||
+*update-bootloader*(8)
|
@ -1,26 +0,0 @@
|
||||
From 1d3496b4c1ef229a8e6969e530b49dedb865f409 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:52 +0100
|
||||
Subject: [PATCH] Fixup keymap setting for openSUSE
|
||||
|
||||
openSUSE is using compressed keymaps.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/10i18n/module-setup.sh | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh
|
||||
index 0741c64..f07b148 100755
|
||||
--- a/modules.d/10i18n/module-setup.sh
|
||||
+++ b/modules.d/10i18n/module-setup.sh
|
||||
@@ -161,6 +161,9 @@ install() {
|
||||
# Gentoo user may have KEYMAP set to something like "-u pl2",
|
||||
KEYMAP=${KEYMAP#-* }
|
||||
|
||||
+ # openSUSE user may have KEYMAP set to something like ".gz"
|
||||
+ KEYMAP=${KEYMAP/.gz/}
|
||||
+
|
||||
# KEYTABLE is a bit special - it defines base keymap name and UNICODE
|
||||
# determines whether non-UNICODE or UNICODE version is used
|
||||
|
@ -1,46 +0,0 @@
|
||||
From 1c89fd148d361a43b1ddb7ec1e8068849244a9b7 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:53 +0100
|
||||
Subject: [PATCH] Fixup script permissions
|
||||
|
||||
Scripts with a shebang should be marked as executable.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
modules.d/03modsign/load-modsign-keys.sh | 0
|
||||
modules.d/03modsign/module-setup.sh | 0
|
||||
modules.d/40network/net-lib.sh | 0
|
||||
modules.d/40network/parse-vlan.sh | 0
|
||||
modules.d/50drm/module-setup.sh | 0
|
||||
modules.d/91crypt-loop/crypt-loop-lib.sh | 0
|
||||
modules.d/98pollcdrom/pollcdrom.sh | 0
|
||||
7 files changed, 0 insertions(+), 0 deletions(-)
|
||||
mode change 100644 => 100755 modules.d/03modsign/load-modsign-keys.sh
|
||||
mode change 100644 => 100755 modules.d/03modsign/module-setup.sh
|
||||
mode change 100644 => 100755 modules.d/40network/net-lib.sh
|
||||
mode change 100644 => 100755 modules.d/40network/parse-vlan.sh
|
||||
mode change 100644 => 100755 modules.d/50drm/module-setup.sh
|
||||
mode change 100644 => 100755 modules.d/91crypt-loop/crypt-loop-lib.sh
|
||||
mode change 100644 => 100755 modules.d/98pollcdrom/pollcdrom.sh
|
||||
|
||||
diff --git a/modules.d/03modsign/load-modsign-keys.sh b/modules.d/03modsign/load-modsign-keys.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/03modsign/module-setup.sh b/modules.d/03modsign/module-setup.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/40network/parse-vlan.sh b/modules.d/40network/parse-vlan.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/50drm/module-setup.sh b/modules.d/50drm/module-setup.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/91crypt-loop/crypt-loop-lib.sh b/modules.d/91crypt-loop/crypt-loop-lib.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
diff --git a/modules.d/98pollcdrom/pollcdrom.sh b/modules.d/98pollcdrom/pollcdrom.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
@ -1,34 +0,0 @@
|
||||
From 336bd09d2cf9d3ded4abb828eb54742218a32b04 Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Fri, 29 Nov 2013 13:13:54 +0100
|
||||
Subject: [PATCH] Remove shebang from shell-completion files
|
||||
|
||||
Shell-completion files are meant to be sourced, not executed.
|
||||
So they shouldn't have a shebang at the start.
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
---
|
||||
dracut-bash-completion.sh | 2 +-
|
||||
lsinitrd-bash-completion.sh | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dracut-bash-completion.sh b/dracut-bash-completion.sh
|
||||
index d796c35..9f359c6 100644
|
||||
--- a/dracut-bash-completion.sh
|
||||
+++ b/dracut-bash-completion.sh
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#
|
||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
#
|
||||
diff --git a/lsinitrd-bash-completion.sh b/lsinitrd-bash-completion.sh
|
||||
index 78ab165..3df2965 100644
|
||||
--- a/lsinitrd-bash-completion.sh
|
||||
+++ b/lsinitrd-bash-completion.sh
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#
|
||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
#
|
@ -1,27 +0,0 @@
|
||||
From c21c4dc2b469107ac35d8c1157f245965fd55292 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 15:57:42 +0100
|
||||
Subject: [PATCH] lvm: install thin tools, only when needed in hostonly
|
||||
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index a220a55..1206310 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -97,6 +97,11 @@ install() {
|
||||
|
||||
inst_libdir_file "libdevmapper-event-lvm*.so"
|
||||
|
||||
- inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
+ if [[ $hostonly ]] && type -P lvs &>/dev/null; then
|
||||
+ for dev in "${!host_fs_types[@]}"; do
|
||||
+ if [[ "$(lvs --noheadings -o segtype "$dev" 2>/dev/null)" == *thin* ]] ; then
|
||||
+ inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
+ fi
|
||||
+ done
|
||||
+ fi
|
||||
}
|
||||
-
|
@ -1,127 +0,0 @@
|
||||
From 45845cb6a5f1100fa4163e25c0681afceb838b64 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 16:42:05 +0100
|
||||
Subject: [PATCH] i18n: introduce i18n_install_all, to install everything
|
||||
|
||||
if i18n_install_all is set to "yes", then install all keyboard layouts
|
||||
and fonts regardless of the hostonly setting.
|
||||
|
||||
This way, people can switch keyboard layouts, without having to recreate
|
||||
the initramfs.
|
||||
---
|
||||
dracut.conf.5.asc | 14 ++++++++++++--
|
||||
dracut.conf.d/fedora.conf.example | 1 +
|
||||
modules.d/10i18n/module-setup.sh | 31 +++++++++++++++++--------------
|
||||
3 files changed, 30 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/dracut.conf.5.asc b/dracut.conf.5.asc
|
||||
index c9c854a..30b7e03 100644
|
||||
--- a/dracut.conf.5.asc
|
||||
+++ b/dracut.conf.5.asc
|
||||
@@ -122,10 +122,10 @@ If chrooted to another root other than the real root device, use --fstab and pro
|
||||
*kernel_only=*"__{yes|no}__"::
|
||||
Only install kernel drivers and firmware files. (default=no)
|
||||
|
||||
-*no_kernel=*"{yes|no}"::
|
||||
+*no_kernel=*"__{yes|no}__"::
|
||||
Do not install kernel drivers and firmware files (default=no)
|
||||
|
||||
-*acpi_override=*"{yes|no}"::
|
||||
+*acpi_override=*"__{yes|no}__"::
|
||||
[WARNING] ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! +
|
||||
Override BIOS provided ACPI tables. For further documentation read
|
||||
Documentation/acpi/initrd_table_override.txt in the kernel sources.
|
||||
@@ -158,6 +158,16 @@ If chrooted to another root other than the real root device, use --fstab and pro
|
||||
*show_modules=*"__{yes|no}__"::
|
||||
Print the name of the included modules to standard output during build.
|
||||
|
||||
+*i18n_vars="__<variable mapping>__"::
|
||||
+ Distribution specific variable mapping.
|
||||
+ See dracut/modules.d/10i18n/README for a detailed description.
|
||||
+
|
||||
+*i18n_default_font=*"__<fontname>__"::
|
||||
+ The font <fontname> to install, if not specified otherwise. Default is "LatArCyrHeb-16".
|
||||
+
|
||||
+*i18n_install_all=*"__{yes|no}__"::
|
||||
+ Install everything regardless of generic or hostonly mode.
|
||||
+
|
||||
Files
|
||||
-----
|
||||
_/etc/dracut.conf_::
|
||||
diff --git a/dracut.conf.d/fedora.conf.example b/dracut.conf.d/fedora.conf.example
|
||||
index 1a56a86..495e8fb 100644
|
||||
--- a/dracut.conf.d/fedora.conf.example
|
||||
+++ b/dracut.conf.d/fedora.conf.example
|
||||
@@ -3,6 +3,7 @@
|
||||
# i18n
|
||||
i18n_vars="/etc/sysconfig/keyboard:KEYTABLE-KEYMAP /etc/sysconfig/i18n:SYSFONT-FONT,FONTACM-FONT_MAP,FONT_UNIMAP"
|
||||
i18n_default_font="latarcyrheb-sun16"
|
||||
+i18n_install_all="yes"
|
||||
stdloglvl=3
|
||||
sysloglvl=5
|
||||
install_items+=" vi /etc/virc ps grep cat rm "
|
||||
diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh
|
||||
index f07b148..fcb18d1 100755
|
||||
--- a/modules.d/10i18n/module-setup.sh
|
||||
+++ b/modules.d/10i18n/module-setup.sh
|
||||
@@ -21,15 +21,11 @@ depends() {
|
||||
# called by dracut
|
||||
install() {
|
||||
if dracut_module_included "systemd"; then
|
||||
- [[ -f /etc/vconsole.conf ]] || return 0
|
||||
unset FONT
|
||||
unset KEYMAP
|
||||
- . /etc/vconsole.conf
|
||||
- # if vconsole.conf has no settings, do not include anything
|
||||
- [[ $FONT ]] || [[ $KEYMAP ]] || return 0
|
||||
+ [[ -f /etc/vconsole.conf ]] && . /etc/vconsole.conf
|
||||
fi
|
||||
|
||||
- inst_multiple -o $systemdutildir/systemd-vconsole-setup
|
||||
KBDSUBDIRS=consolefonts,consoletrans,keymaps,unimaps
|
||||
DEFAULT_FONT="${i18n_default_font:-LatArCyrHeb-16}"
|
||||
I18N_CONF="/etc/locale.conf"
|
||||
@@ -213,10 +209,20 @@ install() {
|
||||
inst_simple ${kbddir}/unimaps/${FONT_UNIMAP}.uni
|
||||
fi
|
||||
|
||||
- mksubdirs ${initdir}${I18N_CONF}
|
||||
- mksubdirs ${initdir}${VCONFIG_CONF}
|
||||
- print_vars LC_ALL LANG >> ${initdir}${I18N_CONF}
|
||||
- print_vars KEYMAP EXT_KEYMAPS UNICODE FONT FONT_MAP FONT_UNIMAP >> ${initdir}${VCONFIG_CONF}
|
||||
+ if dracut_module_included "systemd" && [[ -f ${I18N_CONF} ]]; then
|
||||
+ inst_simple ${I18N_CONF}
|
||||
+ else
|
||||
+ mksubdirs ${initdir}${I18N_CONF}
|
||||
+ print_vars LC_ALL LANG >> ${initdir}${I18N_CONF}
|
||||
+ fi
|
||||
+
|
||||
+ if dracut_module_included "systemd" && [[ -f ${VCONFIG_CONF} ]]; then
|
||||
+ inst_simple ${VCONFIG_CONF}
|
||||
+ else
|
||||
+ mksubdirs ${initdir}${VCONFIG_CONF}
|
||||
+ print_vars KEYMAP EXT_KEYMAPS UNICODE FONT FONT_MAP FONT_UNIMAP >> ${initdir}${VCONFIG_CONF}
|
||||
+ fi
|
||||
+
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -240,16 +246,13 @@ install() {
|
||||
return 0
|
||||
}
|
||||
|
||||
- if checks
|
||||
- then
|
||||
+ if checks; then
|
||||
install_base
|
||||
|
||||
- if [[ ${hostonly} ]]
|
||||
- then
|
||||
+ if [[ ${hostonly} ]] && ! [[ ${i18n_install_all} ]]; then
|
||||
install_local_i18n || install_all_kbd
|
||||
else
|
||||
install_all_kbd
|
||||
fi
|
||||
fi
|
||||
}
|
||||
-
|
@ -1,24 +0,0 @@
|
||||
From 57575f3c9c5323887b1aec7f04d1467ba1e5fb1b Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 17:27:57 +0100
|
||||
Subject: [PATCH] dracut.spec: add new modules
|
||||
|
||||
---
|
||||
dracut.spec | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 44171d8..91ec15d 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -350,8 +350,10 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%{dracutlibdir}/modules.d/95rootfs-block
|
||||
%{dracutlibdir}/modules.d/95dasd
|
||||
%{dracutlibdir}/modules.d/95dasd_mod
|
||||
+%{dracutlibdir}/modules.d/95dasd_rules
|
||||
%{dracutlibdir}/modules.d/95fstab-sys
|
||||
%{dracutlibdir}/modules.d/95zfcp
|
||||
+%{dracutlibdir}/modules.d/95zfcp_rules
|
||||
%{dracutlibdir}/modules.d/95terminfo
|
||||
%{dracutlibdir}/modules.d/95udev-rules
|
||||
%{dracutlibdir}/modules.d/95virtfs
|
@ -1,35 +0,0 @@
|
||||
From 11ee2ca8d497980c98c3c5a2c3be25b4724c43a0 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 17:31:09 +0100
|
||||
Subject: [PATCH] dracut.spec: remove suse man pages
|
||||
|
||||
---
|
||||
dracut.spec | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 91ec15d..bd35aa7 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -246,15 +246,18 @@ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log
|
||||
touch $RPM_BUILD_ROOT%{_localstatedir}/log/dracut.log
|
||||
mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/initramfs
|
||||
|
||||
-%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||
+%if 0%{?fedora} || 0%{?rhel}
|
||||
install -m 0644 dracut.conf.d/fedora.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/01-dist.conf
|
||||
-install -m 0644 dracut.conf.d/fips.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/40-fips.conf
|
||||
+rm -f $RPM_BUILD_ROOT%{_mandir}/man?/*suse*
|
||||
%endif
|
||||
-
|
||||
%if 0%{?suse_version}
|
||||
install -m 0644 dracut.conf.d/suse.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/01-dist.conf
|
||||
%endif
|
||||
|
||||
+%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||
+install -m 0644 dracut.conf.d/fips.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/40-fips.conf
|
||||
+%endif
|
||||
+
|
||||
%if 0%{?fedora} <= 12 && 0%{?rhel} < 6 && 0%{?suse_version} <= 9999
|
||||
rm -f -- $RPM_BUILD_ROOT%{_bindir}/mkinitrd
|
||||
rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd
|
@ -1,21 +0,0 @@
|
||||
From ce052202f0cdb673536999a7d7810bd3a3a2aaca Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 18:38:23 +0100
|
||||
Subject: [PATCH] TODO: update
|
||||
|
||||
---
|
||||
TODO | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/TODO b/TODO
|
||||
index 4e52fbf..875541d 100644
|
||||
--- a/TODO
|
||||
+++ b/TODO
|
||||
@@ -22,6 +22,7 @@ INITRAMFS TODO
|
||||
|
||||
GENERATOR TODO
|
||||
|
||||
+- report errors on missing files in check()
|
||||
- remove wait for swap devs, if no "resume=" is given on the kernel command line
|
||||
- add presets (predefined set of modules)
|
||||
- add interpreter/plugin-scripts to be sourced at the beginning or end (can use dracut-functions)
|
@ -1,25 +0,0 @@
|
||||
From 3934ca8e6c0e80ecb32a2ed9403321afd510842e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 5 Dec 2013 18:38:35 +0100
|
||||
Subject: [PATCH] systemd/dracut-initqueue.sh: fixed waiting in the loop if PW
|
||||
asked
|
||||
|
||||
continue the main loop instead of the for loop, if a password is
|
||||
currently asked
|
||||
---
|
||||
modules.d/98systemd/dracut-initqueue.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/98systemd/dracut-initqueue.sh b/modules.d/98systemd/dracut-initqueue.sh
|
||||
index 64e8154..1e05dcd 100755
|
||||
--- a/modules.d/98systemd/dracut-initqueue.sh
|
||||
+++ b/modules.d/98systemd/dracut-initqueue.sh
|
||||
@@ -53,7 +53,7 @@ while :; do
|
||||
sleep 0.5
|
||||
|
||||
for i in /run/systemd/ask-password/ask.*; do
|
||||
- [ -e "$i" ] && continue
|
||||
+ [ -e "$i" ] && continue 2
|
||||
done
|
||||
|
||||
if [ $main_loop -gt $((2*$RDRETRY/3)) ]; then
|
@ -1,22 +0,0 @@
|
||||
From f11712ea2189e01004115702a3756b70122c3b05 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 10 Dec 2013 12:58:37 +0100
|
||||
Subject: [PATCH] base/rdsosreport.sh: add "ip a" output
|
||||
|
||||
---
|
||||
modules.d/99base/rdsosreport.sh | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/modules.d/99base/rdsosreport.sh b/modules.d/99base/rdsosreport.sh
|
||||
index bfa55bb..5e11166 100755
|
||||
--- a/modules.d/99base/rdsosreport.sh
|
||||
+++ b/modules.d/99base/rdsosreport.sh
|
||||
@@ -42,6 +42,8 @@ command -v dmsetup >/dev/null 2>/dev/null && dmsetup ls --tree
|
||||
|
||||
cat /proc/mdstat
|
||||
|
||||
+command -v ip >/dev/null 2>/dev/null && ip addr
|
||||
+
|
||||
if command -v journalctl >/dev/null 2>/dev/null; then
|
||||
journalctl -ab --no-pager -o short-monotonic
|
||||
else
|
@ -1,25 +0,0 @@
|
||||
From ded4c82acedb373ed4393b69a9683c6bee38ff48 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Thu, 21 Nov 2013 20:33:38 +0400
|
||||
Subject: [PATCH] usrmount: always install
|
||||
|
||||
/usr should be mounted by initramfs even if /sbin/init lives in /
|
||||
---
|
||||
modules.d/98usrmount/module-setup.sh | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/modules.d/98usrmount/module-setup.sh b/modules.d/98usrmount/module-setup.sh
|
||||
index d8a0ec2..31a6229 100755
|
||||
--- a/modules.d/98usrmount/module-setup.sh
|
||||
+++ b/modules.d/98usrmount/module-setup.sh
|
||||
@@ -4,10 +4,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- local _init
|
||||
[[ $mount_needs ]] && return 1
|
||||
- _init=$(readlink -f /sbin/init)
|
||||
- [[ "$_init" == "${_init##/usr}" ]] && return 255
|
||||
return 0
|
||||
}
|
||||
|
@ -1,57 +0,0 @@
|
||||
From ab173bb4c1c758d2f87d11b03efca6b6c950225e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 12 Dec 2013 09:20:53 +0100
|
||||
Subject: [PATCH] fcoe: move uefi parsing to fcoe-uefi module
|
||||
|
||||
---
|
||||
modules.d/95fcoe-uefi/module-setup.sh | 22 ++++++++++++++++++++++
|
||||
.../{95fcoe => 95fcoe-uefi}/parse-uefifcoe.sh | 0
|
||||
modules.d/95fcoe/module-setup.sh | 1 -
|
||||
3 files changed, 22 insertions(+), 1 deletion(-)
|
||||
create mode 100755 modules.d/95fcoe-uefi/module-setup.sh
|
||||
rename modules.d/{95fcoe => 95fcoe-uefi}/parse-uefifcoe.sh (100%)
|
||||
|
||||
diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
new file mode 100755
|
||||
index 0000000..007aa59
|
||||
--- /dev/null
|
||||
+++ b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
@@ -0,0 +1,22 @@
|
||||
+#!/bin/bash
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ [[ $hostonly ]] || [[ $mount_needs ]] && return 1
|
||||
+
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ echo fcoe bash
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ inst_hook cmdline 20 "$moddir/parse-uefifcoe.sh"
|
||||
+}
|
||||
+
|
||||
diff --git a/modules.d/95fcoe/parse-uefifcoe.sh b/modules.d/95fcoe-uefi/parse-uefifcoe.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/95fcoe/parse-uefifcoe.sh
|
||||
rename to modules.d/95fcoe-uefi/parse-uefifcoe.sh
|
||||
diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh
|
||||
index 7ada2ee..2605fa0 100755
|
||||
--- a/modules.d/95fcoe/module-setup.sh
|
||||
+++ b/modules.d/95fcoe/module-setup.sh
|
||||
@@ -36,7 +36,6 @@ install() {
|
||||
inst "$moddir/fcoe-up.sh" "/sbin/fcoe-up"
|
||||
inst "$moddir/fcoe-edd.sh" "/sbin/fcoe-edd"
|
||||
inst "$moddir/fcoe-genrules.sh" "/sbin/fcoe-genrules.sh"
|
||||
- inst_hook cmdline 20 "$moddir/parse-uefifcoe.sh"
|
||||
inst_hook cmdline 99 "$moddir/parse-fcoe.sh"
|
||||
dracut_need_initqueue
|
||||
}
|
@ -1,92 +0,0 @@
|
||||
From 89031be3735045ae06d560bf4f42ec58d889fe8e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 12 Dec 2013 09:49:06 +0100
|
||||
Subject: [PATCH] move uefi-lib to a seperate module
|
||||
|
||||
---
|
||||
modules.d/95fcoe-uefi/module-setup.sh | 4 +---
|
||||
modules.d/95fcoe/module-setup.sh | 5 -----
|
||||
modules.d/99base/module-setup.sh | 1 -
|
||||
modules.d/99uefi-lib/module-setup.sh | 19 +++++++++++++++++++
|
||||
modules.d/{99base => 99uefi-lib}/uefi-lib.sh | 0
|
||||
5 files changed, 20 insertions(+), 9 deletions(-)
|
||||
create mode 100755 modules.d/99uefi-lib/module-setup.sh
|
||||
rename modules.d/{99base => 99uefi-lib}/uefi-lib.sh (100%)
|
||||
|
||||
diff --git a/modules.d/95fcoe-uefi/module-setup.sh b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
index 007aa59..653d88e 100755
|
||||
--- a/modules.d/95fcoe-uefi/module-setup.sh
|
||||
+++ b/modules.d/95fcoe-uefi/module-setup.sh
|
||||
@@ -4,14 +4,12 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- [[ $hostonly ]] || [[ $mount_needs ]] && return 1
|
||||
-
|
||||
return 0
|
||||
}
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
- echo fcoe bash
|
||||
+ echo fcoe uefi-lib
|
||||
return 0
|
||||
}
|
||||
|
||||
diff --git a/modules.d/95fcoe/module-setup.sh b/modules.d/95fcoe/module-setup.sh
|
||||
index 2605fa0..539c464 100755
|
||||
--- a/modules.d/95fcoe/module-setup.sh
|
||||
+++ b/modules.d/95fcoe/module-setup.sh
|
||||
@@ -4,11 +4,6 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- # FIXME
|
||||
- # If hostonly was requested, fail the check until we have some way of
|
||||
- # knowing we are booting from FCoE
|
||||
- [[ $hostonly ]] || [[ $mount_needs ]] && return 1
|
||||
-
|
||||
for i in dcbtool fipvlan lldpad ip readlink; do
|
||||
type -P $i >/dev/null || return 1
|
||||
done
|
||||
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh
|
||||
index e53cf2e..d4dbca9 100755
|
||||
--- a/modules.d/99base/module-setup.sh
|
||||
+++ b/modules.d/99base/module-setup.sh
|
||||
@@ -45,7 +45,6 @@ install() {
|
||||
mkdir -p ${initdir}/tmp
|
||||
|
||||
inst_simple "$moddir/dracut-lib.sh" "/lib/dracut-lib.sh"
|
||||
- inst_simple "$moddir/uefi-lib.sh" "/lib/uefi-lib.sh"
|
||||
|
||||
if ! dracut_module_included "systemd"; then
|
||||
inst_multiple switch_root || dfatal "Failed to install switch_root"
|
||||
diff --git a/modules.d/99uefi-lib/module-setup.sh b/modules.d/99uefi-lib/module-setup.sh
|
||||
new file mode 100755
|
||||
index 0000000..4a856ea
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99uefi-lib/module-setup.sh
|
||||
@@ -0,0 +1,19 @@
|
||||
+#!/bin/bash
|
||||
+# module-setup for img-lib
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ return 255
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ echo bash
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ inst_simple "$moddir/uefi-lib.sh" "/lib/uefi-lib.sh"
|
||||
+}
|
||||
+
|
||||
diff --git a/modules.d/99base/uefi-lib.sh b/modules.d/99uefi-lib/uefi-lib.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/99base/uefi-lib.sh
|
||||
rename to modules.d/99uefi-lib/uefi-lib.sh
|
@ -1,31 +0,0 @@
|
||||
From 831625d29ed6f174b276cd738e34bfebc5052e1c Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 13 Dec 2013 11:05:39 +0100
|
||||
Subject: [PATCH] lvm: fixed lvm thin check
|
||||
|
||||
---
|
||||
modules.d/90lvm/module-setup.sh | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
|
||||
index 1206310..a64e5d6 100755
|
||||
--- a/modules.d/90lvm/module-setup.sh
|
||||
+++ b/modules.d/90lvm/module-setup.sh
|
||||
@@ -99,9 +99,16 @@ install() {
|
||||
|
||||
if [[ $hostonly ]] && type -P lvs &>/dev/null; then
|
||||
for dev in "${!host_fs_types[@]}"; do
|
||||
- if [[ "$(lvs --noheadings -o segtype "$dev" 2>/dev/null)" == *thin* ]] ; then
|
||||
+ [ -e /sys/block/${dev#/dev/}/dm/name ] || continue
|
||||
+ dev=$(</sys/block/${dev#/dev/}/dm/name)
|
||||
+ eval $(dmsetup splitname --nameprefixes --noheadings --rows "$dev" 2>/dev/null)
|
||||
+ [[ ${DM_VG_NAME} ]] && [[ ${DM_LV_NAME} ]] || continue
|
||||
+ if [[ "$(lvs --noheadings -o segtype ${DM_VG_NAME} 2>/dev/null)" == *thin* ]] ; then
|
||||
inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
+ break
|
||||
fi
|
||||
done
|
||||
+ else
|
||||
+ inst_multiple -o thin_dump thin_restore thin_check thin_repair
|
||||
fi
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
From 08f06c93419aacac9d9980fa9c0c65d15fa4bf0e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 16 Dec 2013 12:30:26 +0100
|
||||
Subject: [PATCH] dracut.spec: add 95fcoe-uefi and 99uefi-lib
|
||||
|
||||
---
|
||||
dracut.spec | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index bd35aa7..6cc60e1 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -414,6 +414,8 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%{dracutlibdir}/modules.d/95ssh-client
|
||||
%{dracutlibdir}/modules.d/45ifcfg
|
||||
%{dracutlibdir}/modules.d/95znet
|
||||
+%{dracutlibdir}/modules.d/95fcoe-uefi
|
||||
+%{dracutlibdir}/modules.d/99uefi-lib
|
||||
|
||||
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||
%files fips
|
@ -1,232 +0,0 @@
|
||||
From 61a02caca422ddca0ee7c71e63d3cdfd786293c8 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 16 Dec 2013 13:15:48 +0100
|
||||
Subject: [PATCH] test/TEST-17-LVM-THIN: add test case for lvm thin pools
|
||||
|
||||
---
|
||||
test/TEST-17-LVM-THIN/.testdir | 1 +
|
||||
test/TEST-17-LVM-THIN/99-idesymlinks.rules | 8 +++
|
||||
test/TEST-17-LVM-THIN/Makefile | 10 ++++
|
||||
test/TEST-17-LVM-THIN/create-root.sh | 31 +++++++++++
|
||||
test/TEST-17-LVM-THIN/finished-false.sh | 2 +
|
||||
test/TEST-17-LVM-THIN/hard-off.sh | 3 +
|
||||
test/TEST-17-LVM-THIN/test-init.sh | 17 ++++++
|
||||
test/TEST-17-LVM-THIN/test.sh | 88 ++++++++++++++++++++++++++++++
|
||||
8 files changed, 160 insertions(+)
|
||||
create mode 100644 test/TEST-17-LVM-THIN/.testdir
|
||||
create mode 100644 test/TEST-17-LVM-THIN/99-idesymlinks.rules
|
||||
create mode 100644 test/TEST-17-LVM-THIN/Makefile
|
||||
create mode 100755 test/TEST-17-LVM-THIN/create-root.sh
|
||||
create mode 100755 test/TEST-17-LVM-THIN/finished-false.sh
|
||||
create mode 100755 test/TEST-17-LVM-THIN/hard-off.sh
|
||||
create mode 100755 test/TEST-17-LVM-THIN/test-init.sh
|
||||
create mode 100755 test/TEST-17-LVM-THIN/test.sh
|
||||
|
||||
diff --git a/test/TEST-17-LVM-THIN/.testdir b/test/TEST-17-LVM-THIN/.testdir
|
||||
new file mode 100644
|
||||
index 0000000..9af2638
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/.testdir
|
||||
@@ -0,0 +1 @@
|
||||
+TESTDIR="/var/tmp/dracut-test.uElZSK"
|
||||
diff --git a/test/TEST-17-LVM-THIN/99-idesymlinks.rules b/test/TEST-17-LVM-THIN/99-idesymlinks.rules
|
||||
new file mode 100644
|
||||
index 0000000..d557790
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/99-idesymlinks.rules
|
||||
@@ -0,0 +1,8 @@
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hda", SYMLINK+="sda"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hda*", SYMLINK+="sda$env{MINOR}"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdb", SYMLINK+="sdb"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdb*", SYMLINK+="sdb$env{MINOR}"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdc", SYMLINK+="sdc"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdc*", SYMLINK+="sdc$env{MINOR}"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdd", SYMLINK+="sdd"
|
||||
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdd*", SYMLINK+="sdd$env{MINOR}"
|
||||
diff --git a/test/TEST-17-LVM-THIN/Makefile b/test/TEST-17-LVM-THIN/Makefile
|
||||
new file mode 100644
|
||||
index 0000000..aad2705
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/Makefile
|
||||
@@ -0,0 +1,10 @@
|
||||
+all:
|
||||
+ @$(MAKE) -s --no-print-directory -C ../.. all
|
||||
+ @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||
+setup:
|
||||
+ @$(MAKE) --no-print-directory -C ../.. all
|
||||
+ @basedir=../.. testdir=../ ./test.sh --setup
|
||||
+clean:
|
||||
+ @basedir=../.. testdir=../ ./test.sh --clean
|
||||
+run:
|
||||
+ @basedir=../.. testdir=../ ./test.sh --run
|
||||
diff --git a/test/TEST-17-LVM-THIN/create-root.sh b/test/TEST-17-LVM-THIN/create-root.sh
|
||||
new file mode 100755
|
||||
index 0000000..740704f
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/create-root.sh
|
||||
@@ -0,0 +1,31 @@
|
||||
+#!/bin/sh
|
||||
+# don't let udev and this script step on eachother's toes
|
||||
+for x in 64-lvm.rules 70-mdadm.rules 99-mount-rules; do
|
||||
+ > "/etc/udev/rules.d/$x"
|
||||
+done
|
||||
+rm -f -- /etc/lvm/lvm.conf
|
||||
+udevadm control --reload
|
||||
+# save a partition at the beginning for future flagging purposes
|
||||
+sfdisk -C 2560 -H 2 -S 32 -L /dev/sda <<EOF
|
||||
+,1
|
||||
+,800
|
||||
+,800
|
||||
+,800
|
||||
+EOF
|
||||
+for i in sda2 sda3 sda4; do
|
||||
+lvm pvcreate -ff -y /dev/$i ;
|
||||
+done && \
|
||||
+lvm vgcreate dracut /dev/sda[234] && \
|
||||
+lvm lvcreate -l 16 -T dracut/mythinpool && \
|
||||
+lvm lvcreate -V1G -T dracut/mythinpool -n root && \
|
||||
+lvm vgchange -ay && \
|
||||
+mke2fs /dev/dracut/root && \
|
||||
+mkdir -p /sysroot && \
|
||||
+mount /dev/dracut/root /sysroot && \
|
||||
+cp -a -t /sysroot /source/* && \
|
||||
+umount /sysroot && \
|
||||
+sleep 1 && \
|
||||
+lvm lvchange -a n /dev/dracut/root && \
|
||||
+sleep 1 && \
|
||||
+echo "dracut-root-block-created" >/dev/sda1
|
||||
+poweroff -f
|
||||
diff --git a/test/TEST-17-LVM-THIN/finished-false.sh b/test/TEST-17-LVM-THIN/finished-false.sh
|
||||
new file mode 100755
|
||||
index 0000000..ecdbef9
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/finished-false.sh
|
||||
@@ -0,0 +1,2 @@
|
||||
+#!/bin/sh
|
||||
+exit 1
|
||||
diff --git a/test/TEST-17-LVM-THIN/hard-off.sh b/test/TEST-17-LVM-THIN/hard-off.sh
|
||||
new file mode 100755
|
||||
index 0000000..12c3d5a
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/hard-off.sh
|
||||
@@ -0,0 +1,3 @@
|
||||
+#!/bin/sh
|
||||
+getarg rd.shell || poweroff -f
|
||||
+getarg failme && poweroff -f
|
||||
diff --git a/test/TEST-17-LVM-THIN/test-init.sh b/test/TEST-17-LVM-THIN/test-init.sh
|
||||
new file mode 100755
|
||||
index 0000000..fd03aa5
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/test-init.sh
|
||||
@@ -0,0 +1,17 @@
|
||||
+#!/bin/sh
|
||||
+export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
+strstr() { [ "${1#*$2*}" != "$1" ]; }
|
||||
+CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
|
||||
+plymouth --quit
|
||||
+exec >/dev/console 2>&1
|
||||
+echo "dracut-root-block-success" >/dev/sda1
|
||||
+export TERM=linux
|
||||
+export PS1='initramfs-test:\w\$ '
|
||||
+[ -f /etc/mtab ] || ln -sfn /proc/mounts /etc/mtab
|
||||
+[ -f /etc/fstab ] || ln -sfn /proc/mounts /etc/fstab
|
||||
+stty sane
|
||||
+echo "made it to the rootfs!"
|
||||
+strstr "$CMDLINE" "rd.shell" && sh -i
|
||||
+echo "Powering down."
|
||||
+mount -n -o remount,ro /
|
||||
+poweroff -f
|
||||
diff --git a/test/TEST-17-LVM-THIN/test.sh b/test/TEST-17-LVM-THIN/test.sh
|
||||
new file mode 100755
|
||||
index 0000000..0cfce19
|
||||
--- /dev/null
|
||||
+++ b/test/TEST-17-LVM-THIN/test.sh
|
||||
@@ -0,0 +1,88 @@
|
||||
+#!/bin/bash
|
||||
+TEST_DESCRIPTION="root filesystem on LVM PV with thin pool"
|
||||
+
|
||||
+KVERSION=${KVERSION-$(uname -r)}
|
||||
+
|
||||
+# Uncomment this to debug failures
|
||||
+#DEBUGFAIL="rd.break rd.shell"
|
||||
+
|
||||
+test_run() {
|
||||
+ $testdir/run-qemu \
|
||||
+ -hda $TESTDIR/root.ext2 \
|
||||
+ -m 256M -smp 2 -nographic \
|
||||
+ -net none -kernel /boot/vmlinuz-$KVERSION \
|
||||
+ -append "root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
|
||||
+ -initrd $TESTDIR/initramfs.testing
|
||||
+ grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
||||
+}
|
||||
+
|
||||
+test_setup() {
|
||||
+ # Create the blank file to use as a root filesystem
|
||||
+ dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=80
|
||||
+
|
||||
+ kernel=$KVERSION
|
||||
+ # Create what will eventually be our root filesystem onto an overlay
|
||||
+ (
|
||||
+ export initdir=$TESTDIR/overlay/source
|
||||
+ . $basedir/dracut-functions.sh
|
||||
+ inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip route \
|
||||
+ mount dmesg ifconfig dhclient mkdir cp ping dhclient
|
||||
+ for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
+ [ -f ${_terminfodir}/l/linux ] && break
|
||||
+ done
|
||||
+ inst_multiple -o ${_terminfodir}/l/linux
|
||||
+ inst "$basedir/modules.d/40network/dhclient-script.sh" "/sbin/dhclient-script"
|
||||
+ inst "$basedir/modules.d/40network/ifup.sh" "/sbin/ifup"
|
||||
+ inst_multiple grep
|
||||
+ inst_simple /etc/os-release
|
||||
+ inst ./test-init.sh /sbin/init
|
||||
+ find_binary plymouth >/dev/null && inst_multiple plymouth
|
||||
+ (cd "$initdir"; mkdir -p dev sys proc etc var/run tmp )
|
||||
+ cp -a /etc/ld.so.conf* $initdir/etc
|
||||
+ mkdir $initdir/run
|
||||
+ sudo ldconfig -r "$initdir"
|
||||
+ )
|
||||
+
|
||||
+ # second, install the files needed to make the root filesystem
|
||||
+ (
|
||||
+ export initdir=$TESTDIR/overlay
|
||||
+ . $basedir/dracut-functions.sh
|
||||
+ inst_multiple sfdisk mke2fs poweroff cp umount
|
||||
+ inst_hook initqueue 01 ./create-root.sh
|
||||
+ inst_hook initqueue/finished 01 ./finished-false.sh
|
||||
+ inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||
+ )
|
||||
+
|
||||
+ # create an initramfs that will create the target root filesystem.
|
||||
+ # We do it this way so that we do not risk trashing the host mdraid
|
||||
+ # devices, volume groups, encrypted partitions, etc.
|
||||
+ $basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||
+ -m "dash lvm mdraid udev-rules base rootfs-block kernel-modules" \
|
||||
+ -d "piix ide-gd_mod ata_piix ext2 sd_mod" \
|
||||
+ -f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||
+ rm -rf -- $TESTDIR/overlay
|
||||
+ # Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||
+ $testdir/run-qemu -hda $TESTDIR/root.ext2 -m 256M -smp 2 -nographic -net none \
|
||||
+ -kernel "/boot/vmlinuz-$kernel" \
|
||||
+ -append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||
+ -initrd $TESTDIR/initramfs.makeroot || return 1
|
||||
+ grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
||||
+ (
|
||||
+ export initdir=$TESTDIR/overlay
|
||||
+ . $basedir/dracut-functions.sh
|
||||
+ inst_multiple poweroff shutdown
|
||||
+ inst_hook emergency 000 ./hard-off.sh
|
||||
+ inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||
+ )
|
||||
+ sudo $basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||
+ -o "plymouth network" \
|
||||
+ -a "debug" -I lvs \
|
||||
+ -d "piix ide-gd_mod ata_piix ext2 sd_mod" \
|
||||
+ -f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||
+}
|
||||
+
|
||||
+test_cleanup() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+. $testdir/test-functions
|
@ -1,17 +0,0 @@
|
||||
From 859e3a77d0a1343fe84fc425676d8f8fa09c558c Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 17 Dec 2013 13:36:55 +0100
|
||||
Subject: [PATCH] test/TEST-17-LVM-THIN: remove .testdir
|
||||
|
||||
---
|
||||
test/TEST-17-LVM-THIN/.testdir | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
delete mode 100644 test/TEST-17-LVM-THIN/.testdir
|
||||
|
||||
diff --git a/test/TEST-17-LVM-THIN/.testdir b/test/TEST-17-LVM-THIN/.testdir
|
||||
deleted file mode 100644
|
||||
index 9af2638..0000000
|
||||
--- a/test/TEST-17-LVM-THIN/.testdir
|
||||
+++ /dev/null
|
||||
@@ -1 +0,0 @@
|
||||
-TESTDIR="/var/tmp/dracut-test.uElZSK"
|
@ -1,66 +0,0 @@
|
||||
From ab6f4a825e31b582cb77181ef6803c77236f74f0 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 18 Dec 2013 12:26:05 +0100
|
||||
Subject: [PATCH] iscsi: do iscsi_firmware regardless of network
|
||||
|
||||
Do the iscsi_firmware iscsistart at least once, even if the network is
|
||||
not up, to activate offload HBA iSCSI.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1031160
|
||||
---
|
||||
modules.d/95iscsi/iscsiroot.sh | 12 +++++++-----
|
||||
modules.d/95iscsi/parse-iscsiroot.sh | 2 +-
|
||||
test/TEST-30-ISCSI/test.sh | 2 +-
|
||||
3 files changed, 9 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
|
||||
index 738fff4..ef090f7 100755
|
||||
--- a/modules.d/95iscsi/iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/iscsiroot.sh
|
||||
@@ -44,13 +44,15 @@ if getargbool 0 rd.iscsi.firmware -d -y iscsi_firmware ; then
|
||||
iscsi_param="$iscsi_param --param $p"
|
||||
done
|
||||
|
||||
- iscsistart -b $iscsi_param
|
||||
- echo 'started' > "/tmp/iscsistarted-iscsi"
|
||||
- echo 'started' > "/tmp/iscsistarted-firmware"
|
||||
- need_shutdown
|
||||
- exit 0
|
||||
+ if ! [ -e /tmp/iscsistarted-firmware ] && iscsistart -b $iscsi_param; then
|
||||
+ echo 'started' > "/tmp/iscsistarted-iscsi"
|
||||
+ echo 'started' > "/tmp/iscsistarted-firmware"
|
||||
+ need_shutdown
|
||||
+ fi
|
||||
+ [ "$netif" = dummy ] && exit 0
|
||||
fi
|
||||
|
||||
+
|
||||
handle_netroot()
|
||||
{
|
||||
local iscsi_initiator iscsi_target_name iscsi_target_ip iscsi_target_port
|
||||
diff --git a/modules.d/95iscsi/parse-iscsiroot.sh b/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
index 0c8b524..77bd991 100755
|
||||
--- a/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
@@ -64,7 +64,7 @@ if [ -n "$iscsi_firmware" ] ; then
|
||||
netroot=${netroot:-iscsi}
|
||||
modprobe -q iscsi_boot_sysfs 2>/dev/null
|
||||
modprobe -q iscsi_ibft
|
||||
- echo "[ -f '/tmp/iscsistarted-firmware' ]" > $hookdir/initqueue/finished/iscsi_firmware_started.sh
|
||||
+ initqueue --onetime --settled /sbin/iscsiroot dummy "$netroot" "$NEWROOT"
|
||||
fi
|
||||
|
||||
# If it's not iscsi we don't continue
|
||||
diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh
|
||||
index 4c29956..f597783 100755
|
||||
--- a/test/TEST-30-ISCSI/test.sh
|
||||
+++ b/test/TEST-30-ISCSI/test.sh
|
||||
@@ -69,7 +69,7 @@ do_test_run() {
|
||||
|| return 1
|
||||
|
||||
run_client "netroot=iscsi" \
|
||||
- "root=LABEL=sysroot ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
|
||||
+ "iscsi_firmware root=LABEL=sysroot ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
|
||||
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||
|| return 1
|
||||
return 0
|
@ -1,127 +0,0 @@
|
||||
From ac5bff2b6fcbeb6a2409ac9e79721c92b10b4fa9 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 18 Dec 2013 12:28:51 +0100
|
||||
Subject: [PATCH] dracut-lib/wait_for_dev(): prevent systemd daemon-reload
|
||||
|
||||
prevent a systemd daemon-reload, if it is not necessary to do.
|
||||
---
|
||||
modules.d/98systemd/dracut-cmdline.sh | 2 --
|
||||
modules.d/98systemd/module-setup.sh | 2 ++
|
||||
modules.d/98systemd/rootfs-generator.sh | 30 ++++++++++++++++++++++++++++++
|
||||
modules.d/99base/dracut-lib.sh | 30 ++++++++++++++++++++++++------
|
||||
4 files changed, 56 insertions(+), 8 deletions(-)
|
||||
create mode 100755 modules.d/98systemd/rootfs-generator.sh
|
||||
|
||||
diff --git a/modules.d/98systemd/dracut-cmdline.sh b/modules.d/98systemd/dracut-cmdline.sh
|
||||
index aa8a02b..3170e75 100755
|
||||
--- a/modules.d/98systemd/dracut-cmdline.sh
|
||||
+++ b/modules.d/98systemd/dracut-cmdline.sh
|
||||
@@ -61,8 +61,6 @@ case "$root" in
|
||||
rootok=1 ;;
|
||||
esac
|
||||
|
||||
-[ "${root%%:*}" = "block" ] && wait_for_dev "${root#block:}"
|
||||
-
|
||||
[ -z "$root" ] && die "No or empty root= argument"
|
||||
[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||
|
||||
diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh
|
||||
index 748e25b..74ce5f9 100755
|
||||
--- a/modules.d/98systemd/module-setup.sh
|
||||
+++ b/modules.d/98systemd/module-setup.sh
|
||||
@@ -181,6 +181,8 @@ install() {
|
||||
inst_script "$moddir/dracut-mount.sh" /bin/dracut-mount
|
||||
inst_script "$moddir/dracut-pre-pivot.sh" /bin/dracut-pre-pivot
|
||||
|
||||
+ inst_script "$moddir/rootfs-generator.sh" /lib/systemd/system-generators/dracut-rootfs-generator
|
||||
+
|
||||
inst_rules 99-systemd.rules
|
||||
|
||||
for i in \
|
||||
diff --git a/modules.d/98systemd/rootfs-generator.sh b/modules.d/98systemd/rootfs-generator.sh
|
||||
new file mode 100755
|
||||
index 0000000..3770c6b
|
||||
--- /dev/null
|
||||
+++ b/modules.d/98systemd/rootfs-generator.sh
|
||||
@@ -0,0 +1,30 @@
|
||||
+#!/bin/sh
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh
|
||||
+root=$(getarg root=)
|
||||
+case "$root" in
|
||||
+ block:LABEL=*|LABEL=*)
|
||||
+ root="${root#block:}"
|
||||
+ root="$(echo $root | sed 's,/,\\x2f,g')"
|
||||
+ root="block:/dev/disk/by-label/${root#LABEL=}"
|
||||
+ rootok=1 ;;
|
||||
+ block:UUID=*|UUID=*)
|
||||
+ root="${root#block:}"
|
||||
+ root="block:/dev/disk/by-uuid/${root#UUID=}"
|
||||
+ rootok=1 ;;
|
||||
+ block:PARTUUID=*|PARTUUID=*)
|
||||
+ root="${root#block:}"
|
||||
+ root="block:/dev/disk/by-partuuid/${root#PARTUUID=}"
|
||||
+ rootok=1 ;;
|
||||
+ block:PARTLABEL=*|PARTLABEL=*)
|
||||
+ root="${root#block:}"
|
||||
+ root="block:/dev/disk/by-partlabel/${root#PARTLABEL=}"
|
||||
+ rootok=1 ;;
|
||||
+ /dev/*)
|
||||
+ root="block:${root}"
|
||||
+ rootok=1 ;;
|
||||
+esac
|
||||
+
|
||||
+[ "${root%%:*}" = "block" ] && wait_for_dev -n "${root#block:}"
|
||||
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
|
||||
index 970bcfb..85f7cdf 100755
|
||||
--- a/modules.d/99base/dracut-lib.sh
|
||||
+++ b/modules.d/99base/dracut-lib.sh
|
||||
@@ -853,7 +853,18 @@ dev_unit_name()
|
||||
wait_for_dev()
|
||||
{
|
||||
local _name
|
||||
+ local _needreload
|
||||
+ local _noreload
|
||||
+
|
||||
+ if [ "$1" = "-n" ]; then
|
||||
+ _noreload=1
|
||||
+ shift
|
||||
+ fi
|
||||
+
|
||||
_name="$(str_replace "$1" '/' '\x2f')"
|
||||
+
|
||||
+ [ -e "${PREFIX}$hookdir/initqueue/finished/devexists-${_name}.sh" ] && return 0
|
||||
+
|
||||
printf '[ -e "%s" ]\n' $1 \
|
||||
>> "${PREFIX}$hookdir/initqueue/finished/devexists-${_name}.sh"
|
||||
{
|
||||
@@ -866,14 +877,21 @@ wait_for_dev()
|
||||
if ! [ -L ${PREFIX}/etc/systemd/system/initrd.target.wants/${_name}.device ]; then
|
||||
[ -d ${PREFIX}/etc/systemd/system/initrd.target.wants ] || mkdir -p ${PREFIX}/etc/systemd/system/initrd.target.wants
|
||||
ln -s ../${_name}.device ${PREFIX}/etc/systemd/system/initrd.target.wants/${_name}.device
|
||||
+ _needreload=1
|
||||
fi
|
||||
|
||||
- mkdir -p ${PREFIX}/etc/systemd/system/${_name}.device.d
|
||||
- {
|
||||
- echo "[Unit]"
|
||||
- echo "JobTimeoutSec=3600"
|
||||
- } > ${PREFIX}/etc/systemd/system/${_name}.device.d/timeout.conf
|
||||
- [ -z "$PREFIX" ] && /sbin/initqueue --onetime --unique --name daemon-reload systemctl daemon-reload
|
||||
+ if ! [ -f ${PREFIX}/etc/systemd/system/${_name}.device.d/timeout.conf ]; then
|
||||
+ mkdir -p ${PREFIX}/etc/systemd/system/${_name}.device.d
|
||||
+ {
|
||||
+ echo "[Unit]"
|
||||
+ echo "JobTimeoutSec=3600"
|
||||
+ } > ${PREFIX}/etc/systemd/system/${_name}.device.d/timeout.conf
|
||||
+ _needreload=1
|
||||
+ fi
|
||||
+
|
||||
+ if [ -z "$PREFIX" ] && [ "$_needreload" = 1 ] && [ -z "$_noreload" ]; then
|
||||
+ /sbin/initqueue --onetime --unique --name daemon-reload systemctl daemon-reload
|
||||
+ fi
|
||||
fi
|
||||
}
|
||||
|
128
dracut.spec
128
dracut.spec
@ -1,4 +1,5 @@
|
||||
%define dracutlibdir %{_prefix}/lib/dracut
|
||||
%bcond_without doc
|
||||
|
||||
# Variables must be defined
|
||||
%define with_nbd 1
|
||||
@ -9,8 +10,8 @@
|
||||
%endif
|
||||
|
||||
Name: dracut
|
||||
Version: 034
|
||||
Release: 74.git20131218%{?dist}
|
||||
Version: 036
|
||||
Release: 16.git20140206%{?dist}
|
||||
|
||||
Summary: Initramfs generator using udev
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
@ -28,80 +29,22 @@ URL: https://dracut.wiki.kernel.org/
|
||||
|
||||
# Source can be generated by
|
||||
# http://git.kernel.org/?p=boot/dracut/dracut.git;a=snapshot;h=%{version};sf=tgz
|
||||
Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.bz2
|
||||
Patch1: 0001-lvm-install-thin-utils-for-non-hostonly.patch
|
||||
Patch2: 0002-module-setup.sh-add-comments-for-dracut-called-funct.patch
|
||||
Patch3: 0003-10i18n-parse-i18n.sh-parse-rd.vconsole-and-rd.locale.patch
|
||||
Patch4: 0004-dracut.sh-do-not-bail-out-if-kernel-modules-dir-is-m.patch
|
||||
Patch5: 0005-Doc-cleanup-extend-and-split-and-reuse.patch
|
||||
Patch6: 0006-dmsquash-live-add-dev-mapper-live-base.patch
|
||||
Patch7: 0007-base-init.sh-also-mkdir-run-lock.patch
|
||||
Patch8: 0008-resume-fix-swap-detection-in-hostonly.patch
|
||||
Patch9: 0009-resume-remove-resume-genrules.sh.patch
|
||||
Patch10: 0010-Add-lzo-lz4-compression-and-read-INITRD_COMPRESS.patch
|
||||
Patch11: 0011-lvm-fix-thin-recognition.patch
|
||||
Patch12: 0012-dracut.sh-also-mkdir-run-lock-which-is-copied-to.patch
|
||||
Patch13: 0013-dracut.sh-no-need-to-make-subdirs-in-run.patch
|
||||
Patch14: 0014-network-fcoe-only-redirect-output-to-loginit.pipe-if.patch
|
||||
Patch15: 0015-mkdir-basic-dirs-in-run.patch
|
||||
Patch16: 0016-dracut-functions.sh-check_block_and_slaves-skip-LVM-.patch
|
||||
Patch17: 0017-kernel-modules-ARM-add-mmc_block-usb_storage-to-stat.patch
|
||||
Patch18: 0018-lvm-always-install-thin-utils-for-lvm.patch
|
||||
Patch19: 0019-usrmount-module-setup.sh-fixed-typo.patch
|
||||
Patch20: 0020-Handle-crypto-modules-with-and-without-modaliases.patch
|
||||
Patch21: 0021-fips-include-crct10dif_generic.patch
|
||||
Patch22: 0022-iscsi-nbd-do-not-try-to-mount-the-whole-disk-if-root.patch
|
||||
Patch23: 0023-dracut.spec-move-sbin-dracut-to-usr-sbin-dracut.patch
|
||||
Patch24: 0024-dracut.sh-fixed-PATH-shortener.patch
|
||||
Patch25: 0025-dracut.modules.7.asc-removed-empty-section.patch
|
||||
Patch26: 0026-fips-also-install-etc-system-fips-in-the-initramfs.patch
|
||||
Patch27: 0027-dracut-functions.sh-Avoid-loading-unnecessary-32-bit.patch
|
||||
Patch28: 0028-iscsi-nbd-do-not-fail-in-hostonly-mode.patch
|
||||
Patch29: 0029-systemd-do-not-exit-the-initqueue-if-systemd-asks-a-.patch
|
||||
Patch30: 0030-Run-xz-and-lzma-with-multiple-threads.patch
|
||||
Patch31: 0031-kernel-modules-add-ohci-pci-to-the-list-of-forced-mo.patch
|
||||
Patch32: 0032-lvm-do-not-run-pvscan-for-lvmetad-update.patch
|
||||
Patch33: 0033-fips-fix-RHEV-vmlinuz-check.patch
|
||||
Patch34: 0034-dracut.cmdline.7.asc-document-server-ip-of-ip-parame.patch
|
||||
Patch35: 0035-dracut.sh-_get_fs_type-if-block-device-exists-return.patch
|
||||
Patch36: 0036-network-net-lib.sh-wait_for_if_up-wait-for-state-UP.patch
|
||||
Patch37: 0037-network-net-lib.sh-iface_has_link-fixup.patch
|
||||
Patch38: 0038-network-ifup.sh-before-doing-dhcp-check-if-the-link-.patch
|
||||
Patch39: 0039-base-dracut-lib.sh-wait_for_dev-relax-requirement.patch
|
||||
Patch40: 0040-resume-autoconf-resume.patch
|
||||
Patch41: 0041-resume-no-more-autoresume.patch
|
||||
Patch42: 0042-dracut.sh-skip-crypt-swaps-with-password-files.patch
|
||||
Patch43: 0043-dracut-functions.sh-do-not-force-require-modules.bui.patch
|
||||
Patch44: 0044-10i18n-parse-i18n.sh-fixed-vconsole.conf-locale.conf.patch
|
||||
Patch45: 0045-95dasd-Install-kernel-modules-only-once.patch
|
||||
Patch46: 0046-95dasd-Only-install-module-if-normalize_dasd_arg-is-.patch
|
||||
Patch47: 0047-95dasd_mod-make-dasd_cio_free-optional.patch
|
||||
Patch48: 0048-95zfcp-Make-installation-optional.patch
|
||||
Patch49: 0049-95znet-Make-installation-optional.patch
|
||||
Patch50: 0050-Add-DASD-configuration-for-SuSE.patch
|
||||
Patch51: 0051-Add-zfcp-scripts-for-SUSE.patch
|
||||
Patch52: 0052-Make-logfile-configurable.patch
|
||||
Patch53: 0053-mkinitrd-suse-Add-SUSE-compability-wrapper-for-dracu.patch
|
||||
Patch54: 0054-mkinitrd-suse.8.asc-Add-manpage-for-SUSE-compat-mkin.patch
|
||||
Patch55: 0055-Fixup-keymap-setting-for-openSUSE.patch
|
||||
Patch56: 0056-Fixup-script-permissions.patch
|
||||
Patch57: 0057-Remove-shebang-from-shell-completion-files.patch
|
||||
Patch58: 0058-lvm-install-thin-tools-only-when-needed-in-hostonly.patch
|
||||
Patch59: 0059-i18n-introduce-i18n_install_all-to-install-everythin.patch
|
||||
Patch60: 0060-dracut.spec-add-new-modules.patch
|
||||
Patch61: 0061-dracut.spec-remove-suse-man-pages.patch
|
||||
Patch62: 0062-TODO-update.patch
|
||||
Patch63: 0063-systemd-dracut-initqueue.sh-fixed-waiting-in-the-loo.patch
|
||||
Patch64: 0064-base-rdsosreport.sh-add-ip-a-output.patch
|
||||
Patch65: 0065-usrmount-always-install.patch
|
||||
Patch66: 0066-fcoe-move-uefi-parsing-to-fcoe-uefi-module.patch
|
||||
Patch67: 0067-move-uefi-lib-to-a-seperate-module.patch
|
||||
Patch68: 0068-lvm-fixed-lvm-thin-check.patch
|
||||
Patch69: 0069-dracut.spec-add-95fcoe-uefi-and-99uefi-lib.patch
|
||||
Patch70: 0070-test-TEST-17-LVM-THIN-add-test-case-for-lvm-thin-poo.patch
|
||||
Patch71: 0071-test-TEST-17-LVM-THIN-remove-.testdir.patch
|
||||
Patch72: 0072-iscsi-do-iscsi_firmware-regardless-of-network.patch
|
||||
Patch73: 0073-dracut-lib-wait_for_dev-prevent-systemd-daemon-reloa.patch
|
||||
Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.xz
|
||||
Patch1: 0001-NEWS-update-for-version-036.patch
|
||||
Patch2: 0002-network-understand-ip-.-dns1-dns2.patch
|
||||
Patch3: 0003-dracut.sh-only-set-the-owner-of-files-to-0-0-if-gene.patch
|
||||
Patch4: 0004-dracut-functions.sh-also-search-in-the-updates-direc.patch
|
||||
Patch5: 0005-network-net-lib.sh-parse-ibft-nameserver-settings.patch
|
||||
Patch6: 0006-network-ifup.sh-handle-dns1-and-dns2-from-ip-setting.patch
|
||||
Patch7: 0007-base-rdsosreport.sh-add-dracut-version-to-rdsosrepor.patch
|
||||
Patch8: 0008-test-include-the-same-Makefile.testdir.patch
|
||||
Patch9: 0009-network-ifup-do-not-ifup-an-already-setup-network-in.patch
|
||||
Patch10: 0010-network-ifup-do-not-run-dhclient-twice-on-the-same-i.patch
|
||||
Patch11: 0011-nfs-nfsroot-symlink-dev-null-to-dev-nfs-as-a-marker-.patch
|
||||
Patch12: 0012-systemd-dracut-pre-pivot-run-for-dev-nfs-root-and-cl.patch
|
||||
Patch13: 0013-Do-not-reload-systemd-with-wait_for_dev.patch
|
||||
Patch14: 0014-systemd-add-sys-kernel-config.mount.patch
|
||||
Patch15: 0015-Factor-out-all-the-type-V-commands.patch
|
||||
|
||||
|
||||
BuildRequires: bash git
|
||||
@ -119,6 +62,7 @@ BuildRequires: pkgconfig
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%endif
|
||||
|
||||
%if %{with doc}
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
BuildRequires: docbook-style-xsl docbook-dtds libxslt
|
||||
%endif
|
||||
@ -128,6 +72,8 @@ BuildRequires: docbook-style-xsl docbook-dtds libxslt
|
||||
%endif
|
||||
|
||||
BuildRequires: asciidoc
|
||||
%endif
|
||||
|
||||
|
||||
%if 0%{?fedora} > 12 || 0%{?rhel}
|
||||
# no "provides", because dracut does not offer
|
||||
@ -277,7 +223,10 @@ git am -p1 %{patches}
|
||||
%endif
|
||||
|
||||
%build
|
||||
%configure --systemdsystemunitdir=%{_unitdir} --bashcompletiondir=$(pkg-config --variable=completionsdir bash-completion) --libdir=%{_prefix}/lib
|
||||
%configure --systemdsystemunitdir=%{_unitdir} --bashcompletiondir=$(pkg-config --variable=completionsdir bash-completion) --libdir=%{_prefix}/lib \
|
||||
%if %{without doc}
|
||||
--disable-documentation
|
||||
%endif
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
@ -359,7 +308,9 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,0755)
|
||||
%if %{with doc}
|
||||
%doc README HACKING TODO COPYING AUTHORS NEWS dracut.html dracut.png dracut.svg
|
||||
%endif
|
||||
%{_bindir}/dracut
|
||||
# compat symlink
|
||||
%{_sbindir}/dracut
|
||||
@ -377,12 +328,15 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%{dracutlibdir}/dracut-logger.sh
|
||||
%{dracutlibdir}/dracut-initramfs-restore
|
||||
%{dracutlibdir}/dracut-install
|
||||
%{dracutlibdir}/skipcpio
|
||||
%config(noreplace) %{_sysconfdir}/dracut.conf
|
||||
%if 0%{?fedora} || 0%{?suse_version} || 0%{?rhel}
|
||||
%{dracutlibdir}/dracut.conf.d/01-dist.conf
|
||||
%endif
|
||||
%dir %{_sysconfdir}/dracut.conf.d
|
||||
%dir %{dracutlibdir}/dracut.conf.d
|
||||
|
||||
%if %{with doc}
|
||||
%{_mandir}/man8/dracut.8*
|
||||
%{_mandir}/man8/*service.8*
|
||||
%if 0%{?fedora} > 12 || 0%{?rhel} >= 6 || 0%{?suse_version} > 9999
|
||||
@ -394,6 +348,8 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%{_mandir}/man7/dracut.modules.7*
|
||||
%{_mandir}/man7/dracut.bootup.7*
|
||||
%{_mandir}/man5/dracut.conf.5*
|
||||
%endif
|
||||
|
||||
%if %{defined _unitdir}
|
||||
%{dracutlibdir}/modules.d/00systemd-bootchart
|
||||
%else
|
||||
@ -501,7 +457,11 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
|
||||
%files fips-aesni
|
||||
%defattr(-,root,root,0755)
|
||||
|
||||
%if %{with doc}
|
||||
%doc COPYING
|
||||
%endif
|
||||
|
||||
%{dracutlibdir}/modules.d/02fips-aesni
|
||||
|
||||
%files caps
|
||||
@ -510,7 +470,11 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
|
||||
%files tools
|
||||
%defattr(-,root,root,0755)
|
||||
%{_mandir}/man8/dracut-catimages.8*
|
||||
|
||||
%if %{with doc}
|
||||
%doc %{_mandir}/man8/dracut-catimages.8*
|
||||
%endif
|
||||
|
||||
%{_bindir}/dracut-catimages
|
||||
%dir /boot/dracut
|
||||
%dir /var/lib/dracut
|
||||
@ -529,6 +493,14 @@ rm -rf -- $RPM_BUILD_ROOT
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Feb 06 2014 Harald Hoyer <harald@redhat.com> 036-16.git20140206
|
||||
- version 036
|
||||
- parse dns information on "ip=" command line arg
|
||||
- preserve ownership of files, if root creates the initramfs
|
||||
- parse ibft nameserver settings
|
||||
- do not run dhcp twice on an interface
|
||||
- try to not reload systemd
|
||||
|
||||
* Wed Dec 18 2013 Harald Hoyer <harald@redhat.com> 034-74.git20131218
|
||||
- do not systemctl daemon-reload
|
||||
- do iscsistart for iscsi_firmware even without network
|
||||
|
Loading…
Reference in New Issue
Block a user