@echo wrote test-$(shell uname -r).img
AUTHORS:
- git shortlog --numbered --summary -e |while read a rest; do echo $$rest;done > AUTHORS
+ git shortlog --numbered --summary -e |while read a rest || [ -n "$$rest" ]; do echo $$rest;done > AUTHORS
dracut.html.sign: dracut-$(VERSION).tar.xz dracut.html
gpg-sign-all dracut-$(VERSION).tar.xz dracut.html
[[ $1 ]] || return
unset ID_FS_TYPE
ID_FS_TYPE=$(blkid -u filesystem -o export -- "$1" \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
if [[ "$line" == TYPE\=* ]]; then
printf "%s" "${line#TYPE=}";
exit 0;
if [[ $use_fstab != yes ]]; then
[[ -d $_find_mpt/. ]]
findmnt -e -v -n -o 'MAJ:MIN,SOURCE' --target "$_find_mpt" | { \
- while read _majmin _dev; do
+ while read _majmin _dev || [ -n "$_dev" ]; do
if [[ -b $_dev ]]; then
if ! [[ $_majmin ]] || [[ $_majmin == 0:* ]]; then
_majmin=$(get_maj_min $_dev)
# fall back to /etc/fstab
findmnt -e --fstab -v -n -o 'MAJ:MIN,SOURCE' --target "$_find_mpt" | { \
- while read _majmin _dev; do
+ while read _majmin _dev || [ -n "$_dev" ]; do
if ! [[ $_dev ]]; then
_dev="$_majmin"
unset _majmin
if [[ $use_fstab != yes ]]; then
findmnt -e -v -n -o 'FSTYPE' --target "$1" | { \
- while read _fs; do
+ while read _fs || [ -n "$_fs" ]; do
[[ $_fs ]] || continue
[[ $_fs = "autofs" ]] && continue
printf "%s" "$_fs"
fi
findmnt --fstab -e -v -n -o 'FSTYPE' --target "$1" | { \
- while read _fs; do
+ while read _fs || [ -n "$_fs" ]; do
[[ $_fs ]] || continue
[[ $_fs = "autofs" ]] && continue
printf "%s" "$_fs"
if [[ $use_fstab != yes ]]; then
findmnt -e -v -n -o 'FSTYPE' --source "$_find_dev" | { \
- while read _fs; do
+ while read _fs || [ -n "$_fs" ]; do
[[ $_fs ]] || continue
[[ $_fs = "autofs" ]] && continue
printf "%s" "$_fs"
fi
findmnt --fstab -e -v -n -o 'FSTYPE' --source "$_find_dev" | { \
- while read _fs; do
+ while read _fs || [ -n "$_fs" ]; do
[[ $_fs ]] || continue
[[ $_fs = "autofs" ]] && continue
printf "%s" "$_fs"
for f in "$@"; do
f="${initdir}/etc/udev/rules.d/$f"
[ -e "$f" ] || continue
- while read line; do
+ while read line || [ -n "$line" ]; do
if [ "${line%%IMPORT PATH_ID}" != "$line" ]; then
if [ $UDEVVERSION -ge 174 ]; then
printf '%sIMPORT{builtin}="path_id"\n' "${line%%IMPORT PATH_ID}"
local _func=$1 _kmod=$2 _cmd _modpath _options
shift 2
modprobe "$@" --ignore-install --show-depends $_kmod 2>&${_fderr} | (
- while read _cmd _modpath _options; do
+ while read _cmd _modpath _options || [ -n "$_cmd" ]; do
[[ $_cmd = insmod ]] || continue
$_func ${_modpath} || exit $?
done
--ignore-install --show-depends --set-version $kernel \
< "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist" 2>/dev/null \
| sort -u \
- | while read _cmd _modpath _options; do
+ | while read _cmd _modpath _options || [ -n "$_cmd" ]; do
[[ $_cmd = insmod ]] || continue
echo "$_modpath"
done > "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"
if [[ $DRACUT_INSTALL ]] && [[ -z $_moddirname ]]; then
xargs -r $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} -a < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"
else
- while read _modpath; do
+ while read _modpath || [ -n "$_modpath" ]; do
local _destpath=$_modpath
[[ $_moddirname ]] && _destpath=${_destpath##$_moddirname/}
_destpath=${_destpath##*/lib/modules/$kernel/}
done < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"
fi
) &
- _pid=$(jobs -p | while read a ; do printf ":$a";done)
+ _pid=$(jobs -p | while read a || [ -n "$a" ]; do printf ":$a";done)
_pid=${_pid##*:}
if [[ $DRACUT_INSTALL ]]; then
xargs -r modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
for _fwdir in $fw_dir; do
echo $_fwdir/$line;
done;
_OLDIFS=$IFS
IFS=:
- while read a rest; do
+ while read a rest || [ -n "$a" ]; do
[[ $a = */$1/* ]] || [[ $a = updates/* ]] || continue
printf "%s\n" "$srcmods/$a"
done < "$srcmods/modules.dep"
function instmods_1() {
local _mod _mpargs
if (($# == 0)); then # filenames from stdin
- while read _mod; do
+ while read _mod || [ -n "$_mod" ]; do
inst1mod "${_mod%.ko*}" || {
if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then
dfatal "Failed to install module $_mod"
# Capture all stderr from modprobe to _fderr. We could use {var}>...
# redirections, but that would make dracut require bash4 at least.
eval "( instmods_1 \"\$@\" ) ${_fderr}>&1" \
- | while read line; do [[ "$line" =~ $_filter_not_found ]] || echo $line;done | derror
+ | while read line || [ -n "$line" ]; do [[ "$line" =~ $_filter_not_found ]] || echo $line;done | derror
_ret=$?
return $_ret
}
if (( $# > 1 )); then
_do_dlog "$@"
else
- while read line; do
+ while read line || [ -n "$line" ]; do
_do_dlog "$1" "$line"
done
fi
for f in $add_fstab; do
[[ -e $f ]] || continue
- while read dev rest; do
+ while read dev rest || [ -n "$dev" ]; do
push_host_devs "$dev"
done < "$f"
done
done
if [[ -f /proc/swaps ]] && [[ -f /etc/fstab ]]; then
- while read dev type rest; do
+ while read dev type rest || [ -n "$dev" ]; do
[[ -b $dev ]] || continue
[[ "$type" == "partition" ]] || continue
- while read _d _m _t _o _r; do
+ while read _d _m _t _o _r || [ -n "$_d" ]; do
[[ "$_d" == \#* ]] && continue
[[ $_d ]] || continue
[[ $_t != "swap" ]] && continue
[[ "$_d" -ef "$dev" ]] || continue
if [[ -f /etc/crypttab ]]; then
- while read _mapper _a _p _o; do
+ while read _mapper _a _p _o || [ -n "$_mapper" ]; do
[[ $_mapper = \#* ]] && continue
[[ "$_d" -ef /dev/mapper/"$_mapper" ]] || continue
[[ "$_o" ]] || _o="$_p"
# record all host modaliases
declare -A host_modalias
find /sys/devices/ -name uevent -print > "$initdir/.modalias"
- while read m; do
- while read line; do
+ while read m || [ -n "$m" ]; do
+ while read line || [ -n "$line" ]; do
[[ "$line" != MODALIAS\=* ]] && continue
modalias="${line##MODALIAS=}" && [[ $modalias ]] && host_modalias["$modalias"]=1
break
rm -f -- "$initdir/.modalias"
- while read _k _s _v; do
+ while read _k _s _v || [ -n "$_k" ]; 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
+ while read m rest || [ -n "$m" ]; do
host_modules["$m"]=1
done </proc/modules
fi
# strip kernel modules, but do not touch signed modules
find "$initdir" -type f -path '*/lib/modules/*.ko' -print0 \
- | while read -r -d $'\0' f; do
+ | while read -r -d $'\0' f || [ -n "$f" ]; do
SIG=$(tail -c 28 "$f")
[[ $SIG == '~Module signature appended~' ]] || { printf "%s\000" "$f"; }
done | xargs -r -0 strip -g
if (( ${#filenames[@]} <= 0 )); then
- echo "Image: $image: $(du -h $image | while read a b; do echo $a;done)"
+ echo "Image: $image: $(du -h $image | while read a b || [ -n "$a" ]; do echo $a;done)"
echo "========================================================================"
fi
local _line i
for i in "$1"/*.conf; do
[[ -f $i ]] || continue
- while read _line; do
+ while read _line || [ -n "$_line" ]; do
case $_line in
\#*)
;;
kpath=${1}
# 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)
+ HMAC_SUM_ORIG=$(cat $NEWROOT/boot/.vmlinuz-${KERNEL}.hmac | while read a b || [ -n "$a" ]; do printf "%s\n" $a; done)
+ HMAC_SUM_CALC=$(sha512hmac $kpath | while read a b || [ -n "$a" ]; 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"
return 1
if ! modprobe "${_module}"; then
# check if kernel provides generic algo
_found=0
- while read _k _s _v; do
+ while read _k _s _v || [ -n "$_k" ]; do
[ "$_k" != "name" -a "$_k" != "driver" ] && continue
[ "$_v" != "$_module" ] && continue
_found=1
if [ "$capsmode" = "1" ]; then
CAPS_INIT_DROP=$(getarg rd.caps.initdrop=)
- CAPS_USERMODEHELPER_BSET=$(capsh --drop="$CAPS_INIT_DROP" -- -c 'while read a b ; do [ "$a" = "CapBnd:" ] && echo $((0x${b:$((${#b}-8)):8})) $((0x${b:$((${#b}-16)):8})) && break; done < /proc/self/status')
+ CAPS_USERMODEHELPER_BSET=$(capsh --drop="$CAPS_INIT_DROP" -- -c 'while read a b || [ -n "$a" ]; do [ "$a" = "CapBnd:" ] && echo $((0x${b:$((${#b}-8)):8})) $((0x${b:$((${#b}-16)):8})) && break; done < /proc/self/status')
CAPS_MODULES_DISABLED=$(getarg rd.caps.disablemodules=)
CAPS_KEXEC_DISABLED=$(getarg rd.caps.disablekexec=)
*) cmd=grep ;;
esac
- for INCL in $($cmd "^include " $MAP | while read a a b; do echo ${a//\"/}; done); do
+ for INCL in $($cmd "^include " $MAP | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do
for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do
findkeymap $FN
done
rm -f -- "${initdir}${kbddir}/consoletrans/utflist"
find "${initdir}${kbddir}/" -name README\* -delete
find "${initdir}${kbddir}/" -name '*.gz' -print -quit \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
inst_multiple gzip
done
find "${initdir}${kbddir}/" -name '*.bz2' -print -quit \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
inst_multiple bzip2
done
}
find_mount() {
local dev mnt etc wanted_dev
wanted_dev="$(readlink -e -q $1)"
- while read dev mnt etc; do
+ while read dev mnt etc || [ -n "$dev" ]; do
[ "$dev" = "$wanted_dev" ] && echo "$dev" && return 0
done < /proc/mounts
return 1
return 1
fi
- while read a m a; do
+ while read a m a || [ -n "$m" ]; do
[ "$m" = "$1" ] && return 0
done < /proc/mounts
return 1
fi
unset layer2
setup_interface
- set | while read line; do
+ set | while read line || [ -n "$line" ]; do
[ "${line#new_}" = "$line" ] && continue
echo "$line"
done >/tmp/dhclient.$netif.dhcpopts
echo "dhcp: BOND6 setting $netif"
setup_interface6
- set | while read line; do
+ set | while read line || [ -n "$line" ]; do
[ "${line#new_}" = "$line" ] && continue
echo "$line"
done >/tmp/dhclient.$netif.dhcpopts
local line
CHANNELS="$1"
- while read line; do
+ while read line || [ -n "$line" ]; do
if strstr "$line" "$CHANNELS"; then
echo $line
return 0
nfs_already_mounted() {
local server="$1" path="$2" localdir="" s="" p=""
- cat /proc/mounts | while read src mnt rest; do
+ cat /proc/mounts | while read src mnt rest || [ -n "$src" ]; do
splitsep ":" "$src" s p
if [ "$server" = "$s" ]; then
if [ "$path" = "$p" ]; then
local _merge=8 _side2=9
function nmf1() {
local _fname _fcont
- while read _fname; do
+ while read _fname || [ -n "$_fname" ]; do
case "$_fname" in
*.ko) _fcont="$(< $_fname)" ;;
*.ko.gz) _fcont="$(gzip -dc $_fname)" ;;
}
function rotor() {
local _f1 _f2
- while read _f1; do
+ while read _f1 || [ -n "$_f1" ]; do
echo "$_f1"
if read _f2; then
echo "$_f2" 1>&${_side2}
if [ -L /usr/share/plymouth/themes/default.plymouth ]; then
inst /usr/share/plymouth/themes/default.plymouth
# Install plugin for this theme
- PLYMOUTH_PLUGIN=$(grep "^ModuleName=" /usr/share/plymouth/themes/default.plymouth | while read a b c; do echo $b; done;)
+ PLYMOUTH_PLUGIN=$(grep "^ModuleName=" /usr/share/plymouth/themes/default.plymouth | while read a b c || [ -n "$b" ]; do echo $b; done;)
inst_libdir_file "plymouth/${PLYMOUTH_PLUGIN}.so"
fi
else
}
function dasd_settle_all() {
- for dasdccw in $(while read line; do echo "${line%%(*}"; done < /proc/dasd/devices) ; do
+ for dasdccw in $(while read line || [ -n "$line" ]; do echo "${line%%(*}"; done < /proc/dasd/devices) ; do
if ! dasd_settle $dasdccw ; then
echo $"Could not access DASD $dasdccw in time"
return 1
# dasd_mod must be loaded without setting any DASD online
dev=$(canonicalize_devno $1)
numcpus=$(
- while read line; do
+ while read line || [ -n "$line" ]; do
if strstr "$line" "# processors"; then
echo ${line##*:};
break;
unset _do_zfcp
for i in ${!FCP_*}; do
- echo "${!i}" | while read port rest; do
+ echo "${!i}" | while read port rest || [ -n "$port" ]; do
case $port in
*.*.*)
;;
local luks="$1"
local l d rest
if [ -f /etc/crypttab ]; then
- while read l d rest; do
+ while read l d rest || [ -n "$l" ]; do
strstr "${l##luks-}" "${luks##luks-}" && return 0
strstr "$d" "${luks##luks-}" && return 0
done < /etc/crypttab
[ -f "$keys_file" ] || return 1
local IFS=:
- while read luks_dev key_dev key_path; do
+ while read luks_dev key_dev key_path || [ -n "$luks_dev" ]; do
if match_dev "$luks_dev" "$for_dev"; then
echo "${key_dev}:${key_path}"
return 0
# TODO: improve to support what cmdline does
if [ -f /etc/crypttab ] && getargbool 1 rd.luks.crypttab -d -n rd_NO_CRYPTTAB; then
- while read name dev luksfile luksoptions; do
+ while read name dev luksfile luksoptions || [ -n "$name" ]; do
# ignore blank lines and comments
if [ -z "$name" -o "${name#\#}" != "$name" ]; then
continue
UUID=$(
blkid -u crypto -o export $dev \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
[[ ${line#UUID} = $line ]] && continue
printf "%s" "${line#UUID=}"
break
if [[ $hostonly ]] && [[ -f /etc/crypttab ]]; then
# filter /etc/crypttab for the devices we need
- while read _mapper _dev _rest; do
+ while read _mapper _dev _rest || [ -n "$_mapper" ]; do
[[ $_mapper = \#* ]] && continue
[[ $_dev ]] || continue
local _merge=8 _side2=9
function bmf1() {
local _f
- while read _f; do case "$_f" in
+ while read _f || [ -n "$_f" ]; do case "$_f" in
*.ko) [[ $(< $_f) =~ $_blockfuncs ]] && echo "$_f" ;;
*.ko.gz) [[ $(gzip -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;;
*.ko.xz) [[ $(xz -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;;
}
function rotor() {
local _f1 _f2
- while read _f1; do
+ while read _f1 || [ -n "$_f1" ]; do
echo "$_f1"
if read _f2; then
echo "$_f2" 1>&${_side2}
UUID=$(
/sbin/mdadm --examine --export $dev \
- | while read line; do
+ | while read line || [ -n "$line" ]; do
[[ ${line#MD_UUID=} = $line ]] && continue
printf "%s" "${line#MD_UUID=} "
done
if [ -n "$MD_UUID" ]; then
for f in /etc/udev/rules.d/65-md-incremental*.rules; do
[ -e "$f" ] || continue
- while read line; do
+ while read line || [ -n "$line" ]; do
if [ "${line%%UUID CHECK}" != "$line" ]; then
printf 'IMPORT{program}="/sbin/mdadm --examine --export $tempnode"\n'
for uuid in $MD_UUID; do
local _merge=8 _side2=9
function bmf1() {
local _f
- while read _f; do
+ while read _f || [ -n "$_f" ]; do
case "$_f" in
*.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;;
*.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
function rotor() {
local _f1 _f2
- while read _f1; do
+ while read _f1 || [ -n "$_f1" ]; do
echo "$_f1"
if read _f2; then
echo "$_f2" 1>&${_side2}
local _dev _mp _fs _opts _dump _pass _rest
test -e "$1" || return 1
info "Mounting from $1"
- while read _dev _mp _fs _opts _dump _pass _rest; do
+ while read _dev _mp _fs _opts _dump _pass _rest || [ -n "$_dev" ]; do
[ -z "${_dev%%#*}" ] && continue # Skip comment lines
ismounted $_mp && continue # Skip mounted filesystem
if [ "$_pass" -gt 0 ] && ! strstr "$_opts" _netdev; then
if [ -z $iscsi_initiator ]; then
if [ -f /sys/firmware/ibft/initiator/initiator-name ]; then
- iscsi_initiator=$(while read line; do echo $line;done < /sys/firmware/ibft/initiator/initiator-name)
+ iscsi_initiator=$(while read line || [ -n "$line" ]; do echo $line;done < /sys/firmware/ibft/initiator/initiator-name)
fi
fi
local _merge=8 _side2=9
function bmf1() {
local _f
- while read _f; do
+ while read _f || [ -n "$_f" ]; do
case "$_f" in
*.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;;
*.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
function rotor() {
local _f1 _f2
- while read _f1; do
+ while read _f1 || [ -n "$_f1" ]; do
echo "$_f1"
if read _f2; then
echo "$_f2" 1>&${_side2}
# the root filesystem,
# remount it with the proper options
rootopts="defaults"
- while read dev mp fs opts dump fsck; do
+ while read dev mp fs opts dump fsck || [ -n "$dev" ]; do
# skip comments
[ "${dev%%#*}" != "$dev" ] && continue
if [[ -f /etc/ssh/ssh_config ]]; then
inst_simple /etc/ssh/ssh_config
sed -i -e 's/\(^[[:space:]]*\)ProxyCommand/\1# ProxyCommand/' ${initdir}/etc/ssh/ssh_config
- while read key val; do
+ while read key val || [ -n "$key" ]; do
[[ $key != "GlobalKnownHostsFile" ]] && continue
inst_simple "$val"
break
# the root filesystem,
# remount it with the proper options
rootopts="defaults"
- while read dev mp fs opts rest; do
+ while read dev mp fs opts rest || [ -n "$dev" ]; do
# skip comments
[ "${dev%%#*}" != "$dev" ] && continue
echo
echo
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
-while read -e -p "> " line; do
+while read -e -p "> " line || [ -n "$line" ]; do
[[ "$line" == "." ]] && break
[[ "$line" ]] && printf -- "%s\n" "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
done
{
local _dev _mp _fs _opts _rest _usr_found _ret _freq _passno
# check, if we have to mount the /usr filesystem
- while read _dev _mp _fs _opts _freq _passno; do
+ while read _dev _mp _fs _opts _freq _passno || [ -n "$_dev" ]; do
[ "${_dev%%#*}" != "$_dev" ] && continue
if [ "$_mp" = "/usr" ]; then
case "$_dev" in
fi
vwarn() {
- while read line; do
+ while read line || [ -n "$line" ]; do
warn $line;
done
}
vinfo() {
- while read line; do
+ while read line || [ -n "$line" ]; do
info $line;
done
}
unset _line
if [ -e /etc/cmdline ]; then
- while read -r _line; do
+ while read -r _line || [ -n "$_line" ]; do
CMDLINE_ETC="$CMDLINE_ETC $_line";
done </etc/cmdline;
fi
[ -z "$file" ] && return 1;
[ -z "$str" ] && return 1;
- while read dummy check restofline; do
+ while read dummy check restofline || [ -n "$check" ]; do
if [ "$check" = "$str" ]; then
debug_on
return 0
find_mount() {
local dev mnt etc wanted_dev
wanted_dev="$(readlink -e -q $1)"
- while read dev mnt etc; do
+ while read dev mnt etc || [ -n "$dev" ]; do
[ "$dev" = "$wanted_dev" ] && echo "$dev" && return 0
done < /proc/mounts
return 1
return 1
fi
- while read a m a; do
+ while read a m a || [ -n "$m" ]; do
[ "$m" = "$1" ] && return 0
done < /proc/mounts
return 1
if [ $i -eq 10 ]; then
kill %1 >/dev/null 2>&1
- kill $(while read line;do echo $line;done</run/initramfs/loginit.pid)
+ kill $(while read line || [ -n "$line" ];do echo $line;done</run/initramfs/loginit.pid)
fi
setdebug
remove_hostonly_files() {
rm -fr /etc/cmdline /etc/cmdline.d/*.conf
if [ -f /lib/dracut/hostonly-files ]; then
- while read -r line; do
+ while read line || [ -n "$line" ]; do
[ -e "$line" ] || [ -h "$line" ] || continue
rm -f "$line"
done < /lib/dracut/hostonly-files
if command -v kmod >/dev/null 2>/dev/null; then
kmod static-nodes --format=tmpfiles 2>/dev/null | \
- while read type file mode a a a majmin; do
+ while read type file mode a a a majmin || [ -n "$type" ]; do
type=${type%\!}
case $type in
d)
if getarg "rd.cmdline=ask"; then
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
- while read -p "> " line; do
+ while read -p "> " line || [ -n "$line" ]; do
[ "$line" = "." ] && break
echo "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
done
{
echo -n "Mounted root filesystem "
- while read dev mp rest; do [ "$mp" = "$NEWROOT" ] && echo $dev; done < /proc/mounts
+ while read dev mp rest || [ -n "$dev" ]; do [ "$mp" = "$NEWROOT" ] && echo $dev; done < /proc/mounts
} | vinfo
# pre pivot scripts are sourced just before we doing cleanup and switch over
[ -e /dev/kmsg ] && exec 5>/dev/kmsg || exec 5>/dev/null
exec 6>/run/initramfs/init.log
-while read line; do
+while read line || [ -n "$line" ]; do
if [ "$line" = "DRACUT_LOG_END" ]; then
rm -f -- /run/initramfs/loginit.pipe
exit 0
[ $# -lt 2 ] && return 255
# if UUID= marks more than one device, take only the first one
- [ -e "$_dev" ] || _dev=$(devnames "$_dev"| while read line; do if [ -n "$line" ]; then echo $line; break;fi;done)
+ [ -e "$_dev" ] || _dev=$(devnames "$_dev"| while read line || [ -n "$line" ]; do if [ -n "$line" ]; then echo $line; break;fi;done)
[ -e "$_dev" ] || return 255
_fs=$(det_fs "$_dev" "$_fs")
fsck_able "$_fs" || return 255
local _fs
_fs=$(udevadm info --query=env --name="$_dev" | \
- while read line; do
+ while read line || [ -n "$line" ]; do
if str_starts $line "ID_FS_TYPE="; then
echo ${line#ID_FS_TYPE=}
break
umount_a() {
local _did_umount="n"
- while read a mp a; do
+ while read a mp a || [ -n "$mp" ]; do
if strstr "$mp" oldroot; then
if umount "$mp"; then
_did_umount="y"
>/dev/watchdog
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sdb
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec </dev/console >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda1
>/dev/watchdog
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec </dev/console >/dev/console 2>&1
ismounted() {
- while read a m a; do
+ while read a m a || [ -n "$m" ]; do
[ "$m" = "$1" ] && return 0
done < /proc/mounts
return 1
>/dev/watchdog
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec </dev/console >/dev/console 2>&1
ismounted() {
- while read a m a; do
+ while read a m a || [ -n "$a" ]; do
[ "$m" = "$1" ] && return 0
done < /proc/mounts
return 1
/etc/security \
/lib64/security \
/lib/security -xtype f \
- | while read file; do
+ | while read file || [ -n "$file" ]; do
inst_multiple -o $file
done
# install any Execs from the service files
egrep -ho '^Exec[^ ]*=[^ ]+' $initdir/lib/systemd/system/*.service \
- | while read i; do
+ | while read i || [ -n "$i" ]; do
i=${i##Exec*=}; i=${i##-}
inst_multiple -o $i
done
udevadm settle
cryptsetup luksClose /dev/mapper/dracut_crypt_test
udevadm settle
-eval $(udevadm info --query=env --name=/dev/md0|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
+eval $(udevadm info --query=env --name=/dev/md0|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
{ echo "dracut-root-block-created"; echo "ID_FS_UUID=$ID_FS_UUID"; } >/dev/sda1
poweroff -f
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
command -v plymouth >/dev/null && plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda1
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda1
mdadm -W /dev/md0 || :
mdadm --detail --export /dev/md0 |grep -F MD_UUID > /tmp/mduuid
. /tmp/mduuid
-eval $(udevadm info --query=env --name=/dev/md0|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
+eval $(udevadm info --query=env --name=/dev/md0|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
{ echo "dracut-root-block-created"; echo MD_UUID=$MD_UUID; echo "ID_FS_UUID=$ID_FS_UUID";} > /dev/sda1
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
command -v plymouth >/dev/null && plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda1
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
plymouth --quit
exec >/dev/console 2>&1
echo "dracut-root-block-success" >/dev/sda1
exec >/dev/console 2>&1
export TERM=linux
export PS1='initramfs-test:\w\$ '
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
stty sane
echo "made it to the rootfs! Powering down."
-while read dev fs fstype opts rest; do
+while read dev fs fstype opts rest || [ -n "$dev" ]; do
[ "$fstype" != "nfs" -a "$fstype" != "nfs4" ] && continue
echo "nfs-OK $dev $fstype $opts" > /dev/sda
break
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
exec >/dev/console 2>&1
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
export TERM=linux
export PS1='initramfs-test:\w\$ '
stty sane
echo "made it to the rootfs! Powering down."
-while read dev fs fstype opts rest; do
+while read dev fs fstype opts rest || [ -n "$dev" ]; do
[ "$fstype" != "ext3" ] && continue
echo "iscsi-OK $dev $fstype $opts" > /dev/sda
break
>/dev/watchdog
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
exec >/dev/console 2>&1
-while read dev fs fstype opts rest; do
+while read dev fs fstype opts rest || [ -n "$dev" ]; do
[ "$dev" = "rootfs" ] && continue
[ "$fs" != "/" ] && continue
echo "nbd-OK $fstype $opts" >/dev/sda
cryptsetup luksClose /dev/mapper/dracut_crypt_test
udevadm settle
sleep 1
-eval $(udevadm info --query=env --name=/dev/sdb|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
+eval $(udevadm info --query=env --name=/dev/sdb|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;)
{ echo "dracut-root-block-created"; echo "ID_FS_UUID=$ID_FS_UUID"; } >/dev/sda
poweroff -f
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
strstr() { [ "${1##*"$2"*}" != "$1" ]; }
strglobin() { [ -n "$1" -a -z "${1##*$2*}" ]; }
-CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
+CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline)
export TERM=linux
export PS1='initramfs-test:\w\$ '
stty sane