summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdebian/initramfs-tools.preinst7
-rw-r--r--docs/framebuffer6
-rw-r--r--hook-functions82
-rwxr-xr-xhooks/fsck14
-rwxr-xr-xhooks/keymap8
-rwxr-xr-xhooks/resume4
-rwxr-xr-xhooks/thermal2
-rwxr-xr-xinit2
-rwxr-xr-xlsinitramfs4
-rwxr-xr-xmkinitramfs49
-rw-r--r--scripts/functions70
-rwxr-xr-xscripts/init-top/all_generic_ide2
-rwxr-xr-xscripts/init-top/blacklist2
-rwxr-xr-xscripts/init-top/keymap2
-rw-r--r--scripts/local24
-rwxr-xr-xscripts/local-premount/resume10
-rw-r--r--scripts/nfs16
-rwxr-xr-xunmkinitramfs14
-rwxr-xr-xupdate-initramfs22
19 files changed, 168 insertions, 172 deletions
diff --git a/debian/initramfs-tools.preinst b/debian/initramfs-tools.preinst
index 99144bb..3084c4a 100755
--- a/debian/initramfs-tools.preinst
+++ b/debian/initramfs-tools.preinst
@@ -20,9 +20,10 @@ prepare_rm_conffile() {
[ -e "$CONFFILE" ] || return 0
ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0
- local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')"
- local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PACKAGE | \
- sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
+ local md5sum old_md5sum
+ md5sum="$(md5sum "$CONFFILE" | sed -e 's/ .*//')"
+ old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$PACKAGE" | \
+ sed -n -e "\\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
if [ "$md5sum" != "$old_md5sum" ]; then
mv $mvverbose -f "$CONFFILE" "$CONFFILE.dpkg-backup"
else
diff --git a/docs/framebuffer b/docs/framebuffer
index 47d8302..bc1f335 100644
--- a/docs/framebuffer
+++ b/docs/framebuffer
@@ -103,9 +103,9 @@ if [ -n "${FB}" ]; then
fi
if [ -e /proc/fb ]; then
- while read fbno desc; do
- if [ $(($fbno < 32)) ]; then
- mknod -m 0640 /dev/fb${fbno} c 29 ${fbno}
+ while read -r fbno desc; do
+ if [ $((fbno < 32)) ]; then
+ mknod -m 0640 "/dev/fb${fbno}" c 29 "${fbno}"
fi
done < /proc/fb
else
diff --git a/hook-functions b/hook-functions
index 58f9e63..941f6be 100644
--- a/hook-functions
+++ b/hook-functions
@@ -44,7 +44,7 @@ add_modules_from_file()
return
fi
- grep '^[^#]' ${1} | while read module args; do
+ grep '^[^#]' "${1}" | while read -r module args; do
[ -n "$module" ] || continue
force_load "${module}" "${args}"
done
@@ -64,9 +64,9 @@ manual_add_modules()
# module.ko' as we want. However it also means that 'softdep'
# configuration lines and embedded softdep information is not
# processed. So we run twice, with and without this option.
- { modprobe --all --set-version="${version}" --ignore-install --quiet --show-depends "$@";
+ { modprobe --all --set-version="${version?}" --ignore-install --quiet --show-depends "$@";
modprobe --all --set-version="${version}" --quiet --show-depends "$@"; } |
- while read prefix kmod options ; do
+ while read -r prefix kmod options ; do
if [ "${prefix}" != "insmod" ]; then
continue
fi
@@ -139,7 +139,7 @@ copy_file() {
link_target="$(readlink -f "${src}")" || return $(($? + 1))
if [ "${link_target}" != "${target}" ]; then
- [ "${verbose}" = "y" ] && echo "Adding ${type}-link ${src}"
+ [ "${verbose?}" = "y" ] && echo "Adding ${type}-link ${src}"
# Create a relative link so it always points
# to the right place
@@ -246,15 +246,15 @@ sys_walk_mod_add()
fi
# current driver module
- driver_path="$(readlink -f ${device_path}/driver/module)"
+ driver_path="$(readlink -f "${device_path}/driver/module")"
if [ -e "$driver_path" ]; then
- module="$(basename $(readlink -f $driver_path))"
+ module="$(basename "$(readlink -f "$driver_path")")"
if [ -n "${module}" ]; then
manual_add_modules "${module}"
fi
fi
- device_path="$(dirname ${device_path})"
+ device_path="$(dirname "${device_path}")"
done
}
@@ -273,11 +273,11 @@ block_dev_sys_walk_mod_add()
fi
# Iterate over component of a layered device
- ls -1 "$disk_sys_path/slaves" | while read component; do
- block_dev_sys_walk_mod_add "$disk_sys_path/slaves/$component"
+ find "$disk_sys_path/slaves" -mindepth 1 -maxdepth 1 | while read -r component; do
+ block_dev_sys_walk_mod_add "$component"
done
- sys_walk_mod_add ${dev_sys_path}
+ sys_walk_mod_add "${dev_sys_path}"
}
block_dev_mod_add()
@@ -308,22 +308,22 @@ block_dev_mod_add()
add_loaded_modules()
{
local pattern="$1"
- local module
- local builtin=/lib/modules/$(uname -r)/modules.builtin
+ local module builtin
+ builtin="/lib/modules/$(uname -r)/modules.builtin"
for module in /sys/module/$pattern; do
if [ -d "$module" ]; then
- manual_add_modules $(basename $module)
+ manual_add_modules "$(basename "$module")"
fi
done
- if [ -f $builtin ]; then
- while read module; do
+ if [ -f "$builtin" ]; then
+ while read -r module; do
case "$module" in
*/$pattern.ko)
- manual_add_modules $(basename $module .ko)
+ manual_add_modules "$(basename "$module" .ko)"
;;
esac
- done < $builtin
+ done < "$builtin"
fi
}
@@ -341,9 +341,9 @@ dep_add_modules_mount()
fi
# find out block device + fstype
- eval "$(while read dev mp fs opts rest ; do \
+ eval "$(while read -r dev mp fs opts rest ; do \
[ "$mp" = "$dir" ] && [ "$fs" != "rootfs" ] \
- && printf "dev_node=$dev\nFSTYPE=$fs"\
+ && printf "dev_node=%s\\nFSTYPE=%s" "$dev" "$fs"\
&& break; done < /proc/mounts)"
# Only the root mountpoint has to exist; do nothing if any other
@@ -362,7 +362,7 @@ dep_add_modules_mount()
if [ "$dir" = / ] && [ "${dev_node}" = "/dev/root" ] ; then
if [ -b "${dev_node}" ]; then
# Match it to the canonical device name by UUID
- dev_node="/dev/disk/by-uuid/"$(blkid -o value -s UUID ${dev_node}) 2>/dev/null
+ dev_node="/dev/disk/by-uuid/"$(blkid -o value -s UUID "${dev_node}") 2>/dev/null
else
# Does not exist in our namespace, so look at the
# kernel command line
@@ -386,7 +386,7 @@ dep_add_modules_mount()
fi
# recheck device
- if [ -z "$dev_node" ] || ! dev_node="$(readlink -f ${dev_node})" \
+ if [ -z "$dev_node" ] || ! dev_node="$(readlink -f "${dev_node}")" \
|| ! [ -b "$dev_node" ]; then
echo "mkinitramfs: failed to determine device for $dir" >&2
echo "mkinitramfs: workaround is MODULES=most, check:" >&2
@@ -398,7 +398,7 @@ dep_add_modules_mount()
fi
# do not trust mount, check superblock
- eval "$(/usr/lib/klibc/bin/fstype ${dev_node})"
+ eval "$(/usr/lib/klibc/bin/fstype "${dev_node}")"
# check that fstype fs recognition
if [ "${FSTYPE}" = "unknown" ]; then
@@ -412,7 +412,7 @@ dep_add_modules_mount()
fi
# Add filesystem
- manual_add_modules ${FSTYPE}
+ manual_add_modules "${FSTYPE}"
block_dev_mod_add "$dev_node"
}
@@ -434,7 +434,7 @@ dep_add_modules()
# sys walk some important device classes
for class in gpio phy regulator rtc; do
- for device in /sys/class/$class/*; do
+ for device in "/sys/class/$class"/*; do
device="$(readlink -f "$device")" \
&& sys_walk_mod_add "$device"
done
@@ -621,7 +621,7 @@ hidden_dep_add_modules()
cat "${DESTDIR}/lib/modules/${version}/modules.builtin"
find "${DESTDIR}/lib/modules/${version}/kernel" -name '*.ko*'
} |
- while read module; do
+ while read -r module; do
module="${module##*/}"
module="${module%%.*}"
case "$module" in
@@ -688,7 +688,7 @@ get_source()
set_initlist()
{
unset initlist
- for si_x in ${initdir}/*; do
+ for si_x in "${initdir}"/*; do
# skip empty dirs without warning
[ "${si_x}" = "${initdir}/*" ] && return
@@ -702,7 +702,7 @@ set_initlist()
esac
# skip directories
- if [ -d ${si_x} ]; then
+ if [ -d "${si_x}" ]; then
[ "${verbose}" = "y" ] \
&& echo "$si_x ignored: a directory" >&2
continue
@@ -711,14 +711,14 @@ set_initlist()
si_x="$(get_source "${si_x#${initdir}/}")"
# skip non executable scripts
- if [ ! -x ${si_x} ]; then
+ if [ ! -x "${si_x}" ]; then
[ "${verbose}" = "y" ] \
&& echo "$si_x ignored: not executable" >&2
continue
fi
# skip bad syntax
- if ! sh -n ${si_x} ; then
+ if ! sh -n "${si_x}" ; then
[ "${verbose}" = "y" ] \
&& echo "$si_x ignored: bad syntax" >&2
continue
@@ -732,11 +732,11 @@ get_prereq_pairs()
{
set_initlist
for gp_x in ${initlist:-}; do
- echo ${gp_x} ${gp_x}
- gp_src="$(get_source $gp_x)"
+ echo "${gp_x} ${gp_x}"
+ gp_src="$(get_source "$gp_x")"
prereqs=$("${gp_src}" prereqs)
for prereq in ${prereqs}; do
- echo ${prereq} ${gp_x}
+ echo "${prereq} ${gp_x}"
done
done
}
@@ -747,14 +747,14 @@ cache_run_scripts()
DESTDIR=${1}
scriptdir=${2}
initdir=${DESTDIR}${scriptdir}
- [ ! -d ${initdir} ] && return
+ [ ! -d "${initdir}" ] && return
- > ${initdir}/ORDER
+ true > "${initdir}/ORDER"
runlist=$(get_prereq_pairs | tsort)
for crs_x in ${runlist}; do
- [ -f ${initdir}/${crs_x} ] || continue
- echo "${scriptdir}/${crs_x} \"\$@\"" >> ${initdir}/ORDER
- echo "[ -e /conf/param.conf ] && . /conf/param.conf" >> ${initdir}/ORDER
+ [ -f "${initdir}/${crs_x}" ] || continue
+ echo "${scriptdir}/${crs_x} \"\$@\"" >> "${initdir}/ORDER"
+ echo "[ -e /conf/param.conf ] && . /conf/param.conf" >> "${initdir}/ORDER"
done
}
@@ -762,12 +762,12 @@ call_scripts()
{
set -e
for cs_x in ${runlist}; do
- [ -f ${initdir}/${cs_x} ] || continue
+ [ -f "${initdir}/${cs_x}" ] || continue
# mkinitramfs verbose output
if [ "${verbose}" = "y" ]; then
echo "Calling hook ${cs_x}"
fi
- ${initdir}/${cs_x} && ec=$? || ec=$?
+ "${initdir}/${cs_x}" && ec=$? || ec=$?
# allow hooks to abort build:
if [ "$ec" -ne 0 ]; then
echo "E: ${initdir}/${cs_x} failed with return $ec."
@@ -786,8 +786,8 @@ run_scripts()
{
scriptdir=${2:-}
initdir=${1}
- [ ! -d ${initdir} ] && return
+ [ ! -d "${initdir}" ] && return
runlist=$(get_prereq_pairs | tsort)
- call_scripts $scriptdir
+ call_scripts "$scriptdir"
}
diff --git a/hooks/fsck b/hooks/fsck
index e4779fc..58b4110 100755
--- a/hooks/fsck
+++ b/hooks/fsck
@@ -7,14 +7,6 @@ prereqs()
echo "$PREREQ"
}
-fstab_files()
-{
- echo /etc/fstab
- if [ -d /etc/fstab.d ]; then
- ls -1 /etc/fstab.d | grep '\.fstab$' | sed -e 's;^;/etc/fstab.d/;'
- fi
-}
-
# Find a specific fstab entry
# $1=mountpoint
# $2=fstype (optional)
@@ -24,9 +16,9 @@ _read_fstab_entry () {
echo "MNT_DIR="
echo "MNT_TYPE="
- fstab_files | while read file; do
+ for file in /etc/fstab /etc/fstab.d/*.fstab; do
if [ -f "$file" ]; then
- while read MNT_FSNAME MNT_DIR MNT_TYPE MNT_OPTS MNT_FREQ MNT_PASS MNT_JUNK; do
+ while read -r MNT_FSNAME MNT_DIR MNT_TYPE MNT_OPTS MNT_FREQ MNT_PASS MNT_JUNK; do
case "$MNT_FSNAME" in
""|\#*)
continue;
@@ -102,7 +94,7 @@ for type in $fsck_types; do
continue
fi
- if prog="$(command -v fsck.${type})"; then
+ if prog="$(command -v "fsck.${type}")"; then
copy_exec "$prog"
else
echo "Warning: /sbin/fsck.${type} doesn't exist, can't install to initramfs, ignoring."
diff --git a/hooks/keymap b/hooks/keymap
index b88d95c..75703ba 100755
--- a/hooks/keymap
+++ b/hooks/keymap
@@ -34,9 +34,9 @@ fi
. /usr/share/initramfs-tools/hook-functions
copy_exec /bin/loadkeys /bin
-if ! setupcon --save-keyboard ${DESTDIR}/etc/boottime.kmap.gz ; then
+if ! setupcon --save-keyboard "${DESTDIR}/etc/boottime.kmap.gz"; then
echo "Warning: error while trying to store keymap file - ignoring request to install /etc/boottime.kmap.gz"
- rm -f ${DESTDIR}/etc/boottime.kmap.gz
+ rm -f "${DESTDIR}/etc/boottime.kmap.gz"
exit 0
fi
@@ -54,8 +54,8 @@ else
fi
for var in LANG LC_ALL LC_CTYPE; do
- value=$(egrep "^[^#]*${var}=" $env | tail -n1 | cut -d= -f2)
- eval $var=$value
+ value=$(grep -E "^[^#]*${var}=" $env | tail -n1 | cut -d= -f2)
+ eval $var="$value"
done
charmap=$(LANG=$LANG LC_ALL=$LC_ALL LC_CTYPE=$LC_CTYPE locale charmap)
diff --git a/hooks/resume b/hooks/resume
index df6cde8..1ac24f9 100755
--- a/hooks/resume
+++ b/hooks/resume
@@ -49,7 +49,7 @@ if ! ischroot && [ -r /proc/swaps ]; then
# dm-crypt is ephemeral if the key file is /dev/urandom
if [ -n "$dm_name" ] && [ -e /etc/crypttab ]; then
- while read cryptdev srcdev keyfile junk; do
+ while read -r cryptdev srcdev keyfile junk; do
if [ "$cryptdev" = "$dm_name" ] && [ "$keyfile" = /dev/urandom ]; then
ephemeral=true
fi
@@ -90,5 +90,5 @@ if [ "$RESUME" = auto ] || [ -n "$resume_auto" ]; then
if [ -z "$resume_auto" ]; then
echo >&2 "W: initramfs-tools failed to select a resume device"
fi
- echo "RESUME=${resume_auto}" > ${DESTDIR}/conf/conf.d/zz-resume-auto
+ echo "RESUME=${resume_auto}" > "${DESTDIR}/conf/conf.d/zz-resume-auto"
fi
diff --git a/hooks/thermal b/hooks/thermal
index 93f5100..5807386 100755
--- a/hooks/thermal
+++ b/hooks/thermal
@@ -28,7 +28,7 @@ powerpc|ppc64)
[ -r /proc/cpuinfo ] || exit 0
- MODEL="`grep model /proc/cpuinfo`"
+ MODEL="$(grep model /proc/cpuinfo)"
MODEL="${MODEL##*: }"
case "$MODEL" in
diff --git a/init b/init
index 5d10622..e4174cd 100755
--- a/init
+++ b/init
@@ -320,6 +320,6 @@ mount -n -o move /sys ${rootmnt}/sys
mount -n -o move /proc ${rootmnt}/proc
# Chain to real filesystem
-exec run-init ${drop_caps} "${rootmnt}" "${init}" "$@" <${rootmnt}/dev/console >${rootmnt}/dev/console 2>&1
+exec run-init ${drop_caps} "${rootmnt}" "${init}" "$@" <"${rootmnt}/dev/console" >"${rootmnt}/dev/console" 2>&1
echo "Something went badly wrong in the initramfs."
panic "Please file a bug on initramfs-tools."
diff --git a/lsinitramfs b/lsinitramfs
index a96308d..4f91a6c 100755
--- a/lsinitramfs
+++ b/lsinitramfs
@@ -4,7 +4,7 @@ set -eu
usage()
{
- echo "Usage: $(basename $0) [-l] <initramfs file>"
+ echo "Usage: $(basename "$0") [-l] <initramfs file>"
}
if [ "$#" -eq 0 ] ; then
@@ -14,7 +14,7 @@ fi
umi_opts="--list"
-OPTIONS=`getopt -o hl --long help,long -n "$0" -- "$@"`
+OPTIONS=$(getopt -o hl --long help,long -n "$0" -- "$@")
# Check for non-GNU getopt
if [ $? != 0 ] ; then echo "W: non-GNU getopt" >&2 ; exit 1 ; fi
diff --git a/mkinitramfs b/mkinitramfs
index 2ce863d..1b15c36 100755
--- a/mkinitramfs
+++ b/mkinitramfs
@@ -11,7 +11,7 @@ verbose="n"
BUSYBOXDIR=
export BUSYBOXDIR
-OPTIONS=`getopt -o c:d:ko:r:v -n "$0" -- "$@"`
+OPTIONS=$(getopt -o c:d:ko:r:v -n "$0" -- "$@")
# Check for non-GNU getopt
if [ $? != 0 ] ; then echo "W: non-GNU getopt" >&2 ; exit 1 ; fi
@@ -65,19 +65,19 @@ done
. "${CONFDIR}/initramfs.conf"
EXTRA_CONF=''
-for i in /usr/share/initramfs-tools/conf.d/* ${CONFDIR}/conf.d/*; do
- [ -e $i ] && EXTRA_CONF="${EXTRA_CONF} $(basename $i \
+for i in /usr/share/initramfs-tools/conf.d/* "${CONFDIR}"/conf.d/*; do
+ [ -e "$i" ] && EXTRA_CONF="${EXTRA_CONF} $(basename "$i" \
| grep '^[[:alnum:]][[:alnum:]\._-]*$' | grep -v '\.dpkg-.*$')";
done
# FIXME: deprecated those settings on mkinitramfs run
# these conf dirs are for boot scripts and land on initramfs
for i in ${EXTRA_CONF}; do
- if [ -d ${CONFDIR}/conf.d/${i} ]; then
+ if [ -d "${CONFDIR}/conf.d/${i}" ]; then
echo "Warning: ${CONFDIR}/conf.d/${i} is a directory instead of file, ignoring."
- elif [ -e ${CONFDIR}/conf.d/${i} ]; then
- . ${CONFDIR}/conf.d/${i}
- elif [ -e /usr/share/initramfs-tools/conf.d/${i} ]; then
- . /usr/share/initramfs-tools/conf.d/${i}
+ elif [ -e "${CONFDIR}/conf.d/${i}" ]; then
+ . "${CONFDIR}/conf.d/${i}"
+ elif [ -e "/usr/share/initramfs-tools/conf.d/${i}" ]; then
+ . "/usr/share/initramfs-tools/conf.d/${i}"
fi
done
@@ -132,7 +132,7 @@ case "${version}" in
esac
if [ -z "${compress:-}" ]; then
- compress=${COMPRESS}
+ compress=${COMPRESS?}
fi
unset COMPRESS
@@ -162,7 +162,7 @@ if [ ! -e "${MODULESDIR}" ]; then
echo "Ensure all necessary drivers are built into the linux image!"
fi
if [ ! -e "${MODULESDIR}/modules.dep" ]; then
- depmod ${version}
+ depmod "${version}"
fi
# Prepare to clean up temporary files on exit
@@ -183,12 +183,12 @@ trap "exit 1" INT TERM # makes the EXIT trap effective even when killed
# Create temporary directory and files for initramfs contents
[ -n "${TMPDIR}" ] && [ ! -w "${TMPDIR}" ] && unset TMPDIR
-DESTDIR="$(mktemp -d ${TMPDIR:-/var/tmp}/mkinitramfs_XXXXXX)" || exit 1
+DESTDIR="$(mktemp -d "${TMPDIR:-/var/tmp}/mkinitramfs_XXXXXX")" || exit 1
chmod 755 "${DESTDIR}"
-__TMPCPIOGZ="$(mktemp ${TMPDIR:-/var/tmp}/mkinitramfs-OL_XXXXXX)" || exit 1
-__TMPEARLYCPIO="$(mktemp ${TMPDIR:-/var/tmp}/mkinitramfs-FW_XXXXXX)" || exit 1
+__TMPCPIOGZ="$(mktemp "${TMPDIR:-/var/tmp}/mkinitramfs-OL_XXXXXX")" || exit 1
+__TMPEARLYCPIO="$(mktemp "${TMPDIR:-/var/tmp}/mkinitramfs-FW_XXXXXX")" || exit 1
-DPKG_ARCH=`dpkg --print-architecture`
+DPKG_ARCH=$(dpkg --print-architecture)
# Export environment for hook scripts.
#
@@ -259,7 +259,7 @@ esac
hidden_dep_add_modules
# First file executed by linux
-cp -p /usr/share/initramfs-tools/init ${DESTDIR}/init
+cp -p /usr/share/initramfs-tools/init "${DESTDIR}/init"
# add existant boot scripts
for b in $(cd /usr/share/initramfs-tools/scripts/ && find . \
@@ -277,8 +277,8 @@ for b in $(cd "${CONFDIR}/scripts" && find . -maxdepth 2 -name '.?*' -prune -o \
cp -p "${CONFDIR}/scripts/${b}" "${DESTDIR}/scripts/$(dirname "${b}")/"
done
-echo "DPKG_ARCH=${DPKG_ARCH}" > ${DESTDIR}/conf/arch.conf
-cp -p "${CONFDIR}/initramfs.conf" ${DESTDIR}/conf
+echo "DPKG_ARCH=${DPKG_ARCH}" > "${DESTDIR}/conf/arch.conf"
+cp -p "${CONFDIR}/initramfs.conf" "${DESTDIR}/conf"
for i in ${EXTRA_CONF}; do
if [ -e "${CONFDIR}/conf.d/${i}" ]; then
copy_file config "${CONFDIR}/conf.d/${i}" /conf/conf.d
@@ -290,7 +290,7 @@ done
# ROOT hardcoding
if [ -n "${ROOT:-}" ]; then
- echo "ROOT=${ROOT}" > ${DESTDIR}/conf/conf.d/root
+ echo "ROOT=${ROOT}" > "${DESTDIR}/conf/conf.d/root"
fi
if ! command -v ldd >/dev/null 2>&1 ; then
@@ -329,13 +329,13 @@ for b in $(cd "${DESTDIR}/scripts" && find . -mindepth 1 -type d); do
done
# generate module deps
-depmod -a -b "${DESTDIR}" ${version}
+depmod -a -b "${DESTDIR}" "${version}"
rm -f "${DESTDIR}/lib/modules/${version}"/modules.*map
# make sure that library search path is up to date
cp -ar /etc/ld.so.conf* "$DESTDIR"/etc/
if ! ldconfig -r "$DESTDIR" ; then
- [ $(id -u) != "0" ] \
+ [ "$(id -u)" != "0" ] \
&& echo "ldconfig might need uid=0 (root) for chroot()" >&2
fi
# The auxiliary cache is not reproducible and is always invalid at boot
@@ -373,7 +373,7 @@ if [ -s "${__TMPEARLYCPIO}" ]; then
cat "${__TMPEARLYCPIO}" >"${outfile}" || exit 1
else
# truncate
- > "${outfile}"
+ true > "${outfile}"
fi
(
@@ -392,8 +392,11 @@ fi
# work around lack of "set -o pipefail" for the following pipe:
# cd "${DESTDIR}" && find . | LC_ALL=C sort | cpio --quiet $cpio_owner_root $cpio_reproducible -o -H newc | gzip >>"${outfile}" || exit 1
+ec1=1
+ec2=1
+ec3=1
exec 3>&1
-eval `
+eval "$(
# http://cfaj.freeshell.org/shell/cus-faq-2.html
exec 4>&1 >&3 3>&-
cd "${DESTDIR}"
@@ -405,7 +408,7 @@ eval `
cpio --quiet $cpio_owner_root $cpio_reproducible -o -H newc 4>&-; echo "ec2=$?;" >&4
} | ${compress} >>"${outfile}"
echo "ec3=$?;" >&4
-`
+)"
if [ "$ec1" -ne 0 ]; then
echo "E: mkinitramfs failure find $ec1 cpio $ec2 $compress $ec3"
exit "$ec1"
diff --git a/scripts/functions b/scripts/functions
index a954a93..ae14eba 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -2,33 +2,33 @@
_log_msg()
{
- if [ "$quiet" = "y" ]; then return; fi
- printf "$@"
+ if [ "${quiet?}" = "y" ]; then return; fi
+ echo -n "$*"
}
log_success_msg()
{
- _log_msg "Success: $@\n"
+ _log_msg "Success: $*\\n"
}
log_failure_msg()
{
- _log_msg "Failure: $@\n"
+ _log_msg "Failure: $*\\n"
}
log_warning_msg()
{
- _log_msg "Warning: $@\n"
+ _log_msg "Warning: $*\\n"
}
log_begin_msg()
{
- _log_msg "Begin: $@ ... "
+ _log_msg "Begin: $* ... "
}
log_end_msg()
{
- _log_msg "done.\n"
+ _log_msg "done.\\n"
}
panic()
@@ -41,9 +41,9 @@ panic()
echo "$@"
# Disallow console access
- if [ -n "${panic}" ]; then
+ if [ -n "${panic?}" ]; then
echo "Rebooting automatically due to panic= boot argument"
- sleep ${panic}
+ sleep "${panic}"
reboot
exit # in case reboot fails, force kernel panic
fi
@@ -54,22 +54,22 @@ panic()
# and paging in more
if command -v setsid >/dev/null 2>&1; then
unset IFS
- read console rest </proc/consoles
+ read -r console rest </proc/consoles
if [ "${console}" = "tty0" ]; then
# Need to choose a specific VT
console="tty1"
fi
# We don't have 'setsid -c' so we need to setsid, open
# the tty, and finally exec an interactive shell
- REASON="$@" PS1='(initramfs) ' setsid sh -c "exec sh -i <>/dev/${console} 1>&0 2>&1"
+ REASON="$*" PS1='(initramfs) ' setsid sh -c "exec sh -i <>/dev/${console} 1>&0 2>&1"
else
- REASON="$@" PS1='(initramfs) ' sh -i </dev/console >/dev/console 2>&1
+ REASON="$*" PS1='(initramfs) ' sh -i </dev/console >/dev/console 2>&1
fi
}
maybe_break()
{
- case ",$break," in
+ case ",${break?}," in
*,$1,*)
if [ "$1" = "top" ]; then
# udev is not yet running, so load keyboard drivers
@@ -84,7 +84,7 @@ maybe_break()
sleep 2
for modalias in /sys/bus/hid/devices/*/modalias; do
if [ -f "${modalias}" ]; then
- modprobe ${opts} -b "$(cat ${modalias})"
+ modprobe ${opts} -b "$(cat "${modalias}")"
fi
done
fi
@@ -97,17 +97,17 @@ maybe_break()
run_scripts()
{
initdir=${1}
- [ ! -d ${initdir} ] && return
+ [ ! -d "${initdir}" ] && return
shift
- . ${initdir}/ORDER
+ . "${initdir}/ORDER"
}
# Load custom modules first
load_modules()
{
if [ -e /conf/modules ]; then
- cat /conf/modules | while read m; do
+ while read -r m; do
# Skip empty lines
if [ -z "$m" ]; then
continue
@@ -118,7 +118,7 @@ load_modules()
continue
fi
modprobe $m
- done
+ done < /conf/modules
fi
}
@@ -143,8 +143,8 @@ parse_numeric() {
*)
# [A-Fa-f0-9]*
value=$(( 0x${1} ))
- minor=$(( (${value} & 0xff) | (${value} >> 12) & 0xfff00 ))
- major=$(( (${value} >> 8) & 0xfff ))
+ minor=$(( (value & 0xff) | (value >> 12) & 0xfff00 ))
+ major=$(( (value >> 8) & 0xfff ))
;;
esac
@@ -156,13 +156,13 @@ parse_numeric() {
# Return value: indicates if an fs could be recognized
get_fstype ()
{
- local FS FSTYPE FSSIZE RET
+ local FS FSTYPE RET
FS="${1}"
# blkid has a more complete list of file systems,
# but fstype is more robust
FSTYPE="unknown"
- eval $(fstype "${FS}" 2> /dev/null)
+ eval "$(fstype "${FS}" 2> /dev/null)"
if [ "$FSTYPE" = "unknown" ]; then
FSTYPE=$(blkid -o value -s TYPE "${FS}")
fi
@@ -263,10 +263,10 @@ configure_networking()
ipconfig -t ${ROUNDTTT} "${DEVICE}"
;;
dhcp|bootp|rarp|both)
- ipconfig -t ${ROUNDTTT} -c ${IP} -d "${DEVICE}"
+ ipconfig -t ${ROUNDTTT} -c "${IP}" -d "${DEVICE}"
;;
*)
- ipconfig -t ${ROUNDTTT} -d $IP
+ ipconfig -t ${ROUNDTTT} -d "$IP"
;;
esac
done
@@ -274,7 +274,7 @@ configure_networking()
# source ipconfig output
if [ -n "${DEVICE}" ]; then
# source specific bootdevice
- . /run/net-${DEVICE}.conf
+ . "/run/net-${DEVICE}.conf"
else
# source any interface...
# ipconfig should have quit after first response
@@ -297,9 +297,9 @@ read_fstab_entry() {
# Not found by default.
found=1
- for file in ${rootmnt}/etc/fstab; do
+ for file in ${rootmnt?}/etc/fstab; do
if [ -f "$file" ]; then
- while read MNT_FSNAME MNT_DIR MNT_TYPE MNT_OPTS MNT_FREQ MNT_PASS MNT_JUNK; do
+ while read -r MNT_FSNAME MNT_DIR MNT_TYPE MNT_OPTS MNT_FREQ MNT_PASS MNT_JUNK; do
case "$MNT_FSNAME" in
""|\#*)
continue;
@@ -357,22 +357,22 @@ _checkfs_once()
log_warning_msg "fsck not present, so skipping $NAME file system"
return
fi
- if [ "$fastboot" = "y" ] ; then
+ if [ "${fastboot?}" = "y" ] ; then
log_warning_msg "Fast boot enabled, so skipping $NAME file system check."
return
fi
- if [ "$forcefsck" = "y" ]
+ if [ "${forcefsck?}" = "y" ]
then
force="-f"
else
force=""
fi
- if [ "$fsckfix" = "y" ]
+ if [ "${fsckfix?}" = "y" ]
then
fix="-y"
- elif [ "$fsckfix" = "n" ]
+ elif [ "${fsckfix?}" = "n" ]
then
fix="-n"
else
@@ -380,19 +380,19 @@ _checkfs_once()
fi
spinner=""
- if [ -z "${debug}" ]; then
+ if [ -z "${debug?}" ]; then
spinner="-C"
fi
if [ "${quiet}" = n ]
then
log_begin_msg "Will now check $NAME file system"
- logsave -a -s $FSCK_LOGFILE fsck $spinner $force $fix -V -t $TYPE $DEV
+ logsave -a -s $FSCK_LOGFILE fsck $spinner $force $fix -V -t "$TYPE" "$DEV"
FSCKCODE=$?
log_end_msg
else
log_begin_msg "Checking $NAME file system"
- logsave -a -s $FSCK_LOGFILE fsck $spinner $force $fix -T -t $TYPE $DEV
+ logsave -a -s $FSCK_LOGFILE fsck $spinner $force $fix -T -t "$TYPE" "$DEV"
FSCKCODE=$?
log_end_msg
fi
@@ -414,7 +414,7 @@ _checkfs_once()
log_warning_msg "File system check failed but did not detect errors"
sleep 5
else
- > $FSCK_STAMPFILE
+ true > $FSCK_STAMPFILE
fi
return 0
}
diff --git a/scripts/init-top/all_generic_ide b/scripts/init-top/all_generic_ide
index e9539d8..120901a 100755
--- a/scripts/init-top/all_generic_ide
+++ b/scripts/init-top/all_generic_ide
@@ -19,7 +19,7 @@ for x in $(cat /proc/cmdline); do
modprobe ata_generic all_generic_ide=1
;;
all_generic_ide=*)
- if [ ${x#all_generic_ide=} ]; then
+ if [ -n "${x#all_generic_ide=}" ]; then
modprobe ata_generic all_generic_ide=1
fi
;;
diff --git a/scripts/init-top/blacklist b/scripts/init-top/blacklist
index 2164906..d860603 100755
--- a/scripts/init-top/blacklist
+++ b/scripts/init-top/blacklist
@@ -16,7 +16,7 @@ prereqs)
esac
# sanity check
-[ -z "${blacklist}" ] && exit 0
+[ -z "${blacklist?}" ] && exit 0
# write blacklist to modprobe.d
IFS=','
diff --git a/scripts/init-top/keymap b/scripts/init-top/keymap
index f011abf..00578ce 100755
--- a/scripts/init-top/keymap
+++ b/scripts/init-top/keymap
@@ -22,6 +22,6 @@ if [ -x /bin/kbd_mode ]; then
fi
# Load custom keymap
-if [ -x /bin/loadkeys -a -r /etc/boottime.kmap.gz ]; then
+if [ -x /bin/loadkeys ] && [ -r /etc/boottime.kmap.gz ]; then
loadkeys ${OPTS} /etc/boottime.kmap.gz
fi
diff --git a/scripts/local b/scripts/local
index 4ec926c..06d93de 100644
--- a/scripts/local
+++ b/scripts/local
@@ -3,7 +3,7 @@
local_top()
{
if [ "${local_top_used}" != "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-top"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/local-top"
run_scripts /scripts/local-top
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -20,7 +20,7 @@ local_top()
local_block()
{
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-block"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/local-block"
run_scripts /scripts/local-block "$@"
[ "$quiet" != "y" ] && log_end_msg
}
@@ -28,7 +28,7 @@ local_block()
local_premount()
{
if [ "${local_premount_used}" != "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-premount"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/local-premount"
run_scripts /scripts/local-premount
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -38,7 +38,7 @@ local_premount()
local_bottom()
{
if [ "${local_premount_used}" = "yes" ] || [ "${local_top_used}" = "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-bottom"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/local-bottom"
run_scripts /scripts/local-bottom
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -65,7 +65,7 @@ local_device_setup()
# Load ubi with the correct MTD partition and return since fstype
# doesn't work with a char device like ubi.
if [ -n "$UBIMTD" ]; then
- modprobe ubi mtd=$UBIMTD
+ modprobe ubi "mtd=$UBIMTD"
DEV="${dev_id}"
return
fi
@@ -88,7 +88,7 @@ local_device_setup()
# Timeout is max(30, rootdelay) seconds (approximately)
slumber=30
- if [ ${ROOTDELAY:-0} -gt $slumber ]; then
+ if [ "${ROOTDELAY:-0}" -gt $slumber ]; then
slumber=$ROOTDELAY
fi
@@ -125,7 +125,7 @@ local_device_setup()
log_end_msg 0
break
fi
- if [ ${time_elapsed} -ge ${slumber} ]; then
+ if [ ${time_elapsed} -ge "${slumber}" ]; then
log_end_msg 1 || true
break
fi
@@ -167,23 +167,23 @@ local_mount_root()
local_premount
- if [ "${readonly}" = "y" ]; then
+ if [ "${readonly?}" = "y" ]; then
roflag=-r
else
roflag=-w
fi
# FIXME This has no error checking
- modprobe ${FSTYPE}
+ modprobe "${FSTYPE}"
- checkfs ${ROOT} root "${FSTYPE}"
+ checkfs "${ROOT}" root "${FSTYPE}"
# FIXME This has no error checking
# Mount root
if [ "${FSTYPE}" != "unknown" ]; then
- mount ${roflag} -t ${FSTYPE} ${ROOTFLAGS} ${ROOT} ${rootmnt}
+ mount ${roflag} -t "${FSTYPE}" ${ROOTFLAGS} "${ROOT}" "${rootmnt?}"
else
- mount ${roflag} ${ROOTFLAGS} ${ROOT} ${rootmnt}
+ mount ${roflag} ${ROOTFLAGS} "${ROOT}" "${rootmnt}"
fi
}
diff --git a/scripts/local-premount/resume b/scripts/local-premount/resume
index 4cafcaa..88abd86 100755
--- a/scripts/local-premount/resume
+++ b/scripts/local-premount/resume
@@ -15,20 +15,20 @@ prereqs)
;;
esac
-if [ -z "${resume}" ] || [ ! -e /sys/power/resume ]; then
+if [ -z "${resume?}" ] || [ ! -e /sys/power/resume ]; then
exit 0
fi
. /scripts/functions
. /scripts/local
-if ! local_device_setup ${resume} "suspend/resume device" false; then
+if ! local_device_setup "${resume}" "suspend/resume device" false; then
exit 0
fi
# hardcode path, uswsusp ships an resume binary too
-if [ -n "${resume_offset}" ]; then
- /bin/resume ${DEV} ${resume_offset}
+if [ -n "${resume_offset?}" ]; then
+ /bin/resume "${DEV}" "${resume_offset}"
else
- /bin/resume ${DEV}
+ /bin/resume "${DEV}"
fi
diff --git a/scripts/nfs b/scripts/nfs
index 359bd46..275e2e4 100644
--- a/scripts/nfs
+++ b/scripts/nfs
@@ -5,7 +5,7 @@
nfs_top()
{
if [ "${nfs_top_used}" != "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-top"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/nfs-top"
run_scripts /scripts/nfs-top
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -15,7 +15,7 @@ nfs_top()
nfs_premount()
{
if [ "${nfs_premount_used}" != "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-premount"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/nfs-premount"
run_scripts /scripts/nfs-premount
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -25,7 +25,7 @@ nfs_premount()
nfs_bottom()
{
if [ "${nfs_premount_used}" = "yes" ] || [ "${nfs_top_used}" = "yes" ]; then
- [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-bottom"
+ [ "${quiet?}" != "y" ] && log_begin_msg "Running /scripts/nfs-bottom"
run_scripts /scripts/nfs-bottom
[ "$quiet" != "y" ] && log_end_msg
fi
@@ -65,13 +65,13 @@ nfs_mount_root_impl()
nfs_premount
- if [ ${readonly} = y ]; then
+ if [ "${readonly?}" = y ]; then
roflag="-o ro"
else
roflag="-o rw"
fi
- nfsmount -o nolock ${roflag} ${NFSOPTS} ${NFSROOT} ${rootmnt}
+ nfsmount -o nolock ${roflag} ${NFSOPTS} "${NFSROOT}" "${rootmnt?}"
}
# NFS root mounting
@@ -92,13 +92,13 @@ nfs_mount_root()
nfs_mount_root_impl
ret=$?
nfs_retry_count=0
- while [ ${nfs_retry_count} -lt ${delay} ] \
+ while [ ${nfs_retry_count} -lt "${delay}" ] \
&& [ $ret -ne 0 ] ; do
[ "$quiet" != "y" ] && log_begin_msg "Retrying nfs mount"
/bin/sleep 1
nfs_mount_root_impl
ret=$?
- nfs_retry_count=$(( ${nfs_retry_count} + 1 ))
+ nfs_retry_count=$(( nfs_retry_count + 1 ))
[ "$quiet" != "y" ] && log_end_msg
done
}
@@ -113,7 +113,7 @@ nfs_mount_fs_impl()
nfs_premount
- if [ ${readonly} = y ]; then
+ if [ "${readonly}" = y ]; then
roflag="-o ro"
else
roflag="-o rw"
diff --git a/unmkinitramfs b/unmkinitramfs
index 910558b..a49ab7f 100755
--- a/unmkinitramfs
+++ b/unmkinitramfs
@@ -75,12 +75,12 @@ splitinitramfs()
break
fi
magic="$(readhex "$initramfs" $end 6)" || break
- test $magic = 070701 || test $magic = 070702 || break
+ test "$magic" = 070701 || test "$magic" = 070702 || break
namesize=0x$(readhex "$initramfs" $((end + 94)) 8)
filesize=0x$(readhex "$initramfs" $((end + 54)) 8)
end=$(((end + 110)))
- end=$(((end + $namesize + 3) & ~3))
- end=$(((end + $filesize + 3) & ~3))
+ end=$(((end + namesize + 3) & ~3))
+ end=$(((end + filesize + 3) & ~3))
done
if [ $end -eq $start ]; then
break
@@ -106,10 +106,10 @@ splitinitramfs()
if [ $end -gt 0 ]; then
# Extract to main subdirectory
- subarchive=$(mktemp ${TMPDIR:-/var/tmp}/unmkinitramfs_XXXXXX)
- trap "rm -f '$subarchive'" EXIT
+ subarchive=$(mktemp "${TMPDIR:-/var/tmp}/unmkinitramfs_XXXXXX")
+ trap 'rm -f "$subarchive"' EXIT
dd < "$initramfs" skip=$end iflag=skip_bytes 2> /dev/null \
- > $subarchive
+ > "$subarchive"
xcpio "$subarchive" "${dir:+$dir/main}" -i "$@"
else
# Don't use subdirectories (for backward compatibility)
@@ -117,7 +117,7 @@ splitinitramfs()
fi
}
-OPTIONS=`getopt -o hv --long help,list,verbose -n "$0" -- "$@"`
+OPTIONS=$(getopt -o hv --long help,list,verbose -n "$0" -- "$@")
# Check for non-GNU getopt
if [ $? != 0 ] ; then echo "W: non-GNU getopt" >&2 ; exit 1 ; fi
diff --git a/update-initramfs b/update-initramfs
index 2ef3a45..632c9de 100755
--- a/update-initramfs
+++ b/update-initramfs
@@ -36,7 +36,7 @@ esac
usage()
{
if [ -n "${1:-}" ]; then
- printf "${*}\n\n" >&2
+ printf "%s\\n\\n" "${*}" >&2
fi
cat >&2 << EOF
Usage: ${0} [OPTION]...
@@ -57,7 +57,7 @@ EOF
mild_panic()
{
if [ -n "${1:-}" ]; then
- printf "${*}\n" >&2
+ printf "%s\\n" "${*}" >&2
fi
exit 0
}
@@ -65,7 +65,7 @@ mild_panic()
panic()
{
if [ -n "${1:-}" ]; then
- printf "${*}\n" >&2
+ printf "%s\\n" "${*}" >&2
fi
exit 1
}
@@ -73,7 +73,7 @@ panic()
verbose()
{
if [ "${verbose}" = 1 ]; then
- printf "${*}\n"
+ printf "%s\\n" "${*}"
fi
}
@@ -119,7 +119,7 @@ backup_booted_initramfs()
boot_initramfs=
uptime_days=$(awk '{printf "%d", $1 / 3600 / 24}' /proc/uptime)
if [ -n "$uptime_days" ]; then
- boot_initramfs=$(find "${initramfs}.bak" -mtime +${uptime_days})
+ boot_initramfs=$(find "${initramfs}.bak" -mtime "+${uptime_days}")
fi
if [ -n "${boot_initramfs}" ]; then
mv -f "${initramfs_bak}" "${initramfs}.bak"
@@ -203,7 +203,7 @@ get_sorted_versions()
{
version_list="$(
linux-version list |
- while read version; do
+ while read -r version; do
test -e "${BOOTDIR}/initrd.img-$version" && echo "$version"
done |
linux-version sort --reverse
@@ -213,8 +213,8 @@ get_sorted_versions()
set_current_version()
{
- if [ -f /boot/initrd.img-`uname -r` ]; then
- version=`uname -r`
+ if [ -f "/boot/initrd.img-$(uname -r)" ]; then
+ version=$(uname -r)
fi
}
@@ -350,10 +350,10 @@ while getopts "k:cudvtb:h?" flag; do
esac
done
-shift $((${OPTIND} - 1))
+shift $((OPTIND - 1))
if [ $# -ne 0 ]; then
- printf "Extra argument '%s'\n\n" "$1" >&2
+ printf "Extra argument '%s'\\n\\n" "$1" >&2
usage
fi
@@ -363,7 +363,7 @@ if [ -z "${mode}" ]; then
fi
if [ "${version}" = "all" ] \
- || ( [ "${update_initramfs}" = "all" ] && [ -z "${version}" ] ); then
+ || { [ "${update_initramfs}" = "all" ] && [ -z "${version}" ]; }; then
get_sorted_versions
if [ -z "${version_list}" ]; then
verbose "Nothing to do, exiting."