initramfs-tools-0.103ubuntu4/0000775000000000000000000000000012305034610013060 5ustar initramfs-tools-0.103ubuntu4/bash_completion.d/0000775000000000000000000000000012120217514016451 5ustar initramfs-tools-0.103ubuntu4/bash_completion.d/initramfs-tools0000664000000000000000000000131111762034302021525 0ustar # update-initramfs(8) completion _update_initramfs() { local cur prev valid_options # TODO: this can be "_get_comp_words_by_ref cur prev" once # bash-completion >= 1.2 is available, see #537139 cur=$(_get_cword) prev=${COMP_WORDS[COMP_CWORD-1]} # The only option that takes an argument is -k if [[ "$prev" == '-k' ]]; then # Complete with kernel versions _kernel_versions COMPREPLY=( $( compgen -W '${COMPREPLY[@]} all' -- "$cur" ) ) return; fi # Complete with available options (obtained from -h) valid_options=$( update-initramfs -h 2>&1 | \ sed -e '/^ -/!d;s/^ \(-\w\+\).*/\1/' ) COMPREPLY=( $( compgen -W "$valid_options" -- $cur ) ) } complete -F _update_initramfs update-initramfs initramfs-tools-0.103ubuntu4/HACKING0000664000000000000000000000306111762034302014053 0ustar > I am not sure how to modify mkinitramfs to do this automatically, maybe you know? I need to document this more clearly, but the initramfs-tools have a collection of hooks that will solve your problem. While there's no way that Breezy could do this in the install, we could certainly include the scripts in the package (Especially if you're willing to test them to make sure they work! *g*) There are two phases that need to be accounted for. The first is the install phase for generating the initramfs, the second is run-time phase for actually doing the needed magic. To install the components you need, look at the scripts in /usr/share/initramfs-tools/hooks. evms and acpid are good choices. You can see a bunch of header stuff at the top that basically guarantees that things are run in the right order if they need to be. Two functions that will interest you: copy_exec copies a binary and any libraries it depends on manual_add_modules takes bareword module names (like fan, thermal, etc) and installs those modules and any of their dependancies into the initramfs. The runtime phase is handled by scripts in /usr/share/initramfs-tools/scripts/ you probably want to start up at about the same point as lvm, md, and evms do, so local-top is a good directory to look in. You can see the same sort of magic at the top of the script, although lvm and evms each require that md run first. I hope this helps. I'll paste this text into a HACKING file on the hopes that someone will see fit to improve it. That person will probably be me, mind you... =) Tks, Jeff Bailey initramfs-tools-0.103ubuntu4/mkinitramfs0000775000000000000000000002350312305034255015342 0ustar #!/bin/sh umask 0022 export PATH='/usr/bin:/sbin:/bin' # Defaults keep="n" CONFDIR="/etc/initramfs-tools" verbose="n" test -e /bin/busybox && BUSYBOXDIR=/bin test -e /usr/lib/initramfs-tools/bin/busybox && BUSYBOXDIR=/usr/lib/initramfs-tools/bin export BUSYBOXDIR 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 eval set -- "$OPTIONS" while true; do case "$1" in -c) compress="$2" shift 2 ;; -d) CONFDIR="$2" shift 2 if [ ! -d "${CONFDIR}" ]; then echo "${0}: ${CONFDIR}: Not a directory" >&2 exit 1 fi ;; -o) outfile="$2" shift 2 ;; -k) keep="y" shift ;; -r) ROOT="$2" shift 2 ;; -v) verbose="y" shift ;; --) shift break ;; *) echo "Internal error!" >&2 exit 1 ;; esac done # For dependency ordered mkinitramfs hook scripts. . /usr/share/initramfs-tools/scripts/functions . /usr/share/initramfs-tools/hook-functions . "${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 \ | 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 [ -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 # source package confs for i in /usr/share/initramfs-tools/conf-hooks.d/*; do if [ -e "${i}" ]; then . "${i}" fi done if [ -n "${UMASK:-}" ]; then umask "${UMASK}" fi if [ -z "${outfile}" ]; then usage fi touch "$outfile" outfile="$(readlink -f "$outfile")" # And by "version" we really mean path to kernel modules # This is braindead, and exists to preserve the interface with mkinitrd if [ ${#} -ne 1 ]; then version="$(uname -r)" else version="${1}" fi # Check that we're using a new enough kernel version, first for ourselves, # then for each of the hooks, which can have a MINKVER variable defined check_minkver ${version} check_minkver ${version} /usr/share/initramfs-tools/hooks check_minkver ${version} ${CONFDIR}/hooks case "${version}" in /lib/modules/*/[!/]*) ;; /lib/modules/[!/]*) version="${version#/lib/modules/}" version="${version%%/*}" ;; esac case "${version}" in */*) echo "$PROG: ${version} is not a valid kernel version" >&2 exit 1 ;; esac # Check userspace and kernel support for compressed initramfs images if [ -z "${compress:-}" ]; then compress=${COMPRESS} else COMPRESS=${compress} fi if ! command -v "${compress}" >/dev/null 2>&1; then compress=gzip [ "${verbose}" = y ] && \ echo "No ${COMPRESS} in ${PATH}, using gzip" COMPRESS=gzip fi if ! `grep -q -i ^config_rd_${COMPRESS%p} /boot/config-${version}` ; then compress=gzip [ "${verbose}" = y ] && \ echo "linux-2.6 misses ${COMPRESS} support, using gzip" fi [ "${compress}" = lzop ] && compress="lzop -9" [ "${compress}" = xz ] && compress="xz -8 --check=crc32" if [ -d "${outfile}" ]; then echo "${outfile} is a directory" >&2 exit 1 fi MODULESDIR="/lib/modules/${version}" if [ ! -e "${MODULESDIR}" ]; then echo "WARNING: missing ${MODULESDIR}" echo "Device driver support needs thus be built-in linux image!" fi if [ ! -e "${MODULESDIR}/modules.dep" ]; then depmod ${version} fi DESTDIR="$(mktemp -d ${TMPDIR:-/tmp}/mkinitramfs_XXXXXX)" || exit 1 chmod 755 "${DESTDIR}" # do not execute cache_run_scripts() if mounted with noexec NOEXEC="" fs=$(df -P $DESTDIR | tail -1 | awk '{print $6}') if [ -n "$fs" ] && mount | grep -q "on $fs .*noexec" ; then NOEXEC=1 fi __TMPCPIOGZ="$(mktemp ${TMPDIR:-/tmp}/mkinitramfs-OL_XXXXXX)" || exit 1 __TMPEARLYCPIO="$(mktemp ${TMPDIR:-/var/tmp}/mkinitramfs-FW_XXXXXX)" || exit 1 DPKG_ARCH=`dpkg --print-architecture` # Export environment for hook scripts. # export MODULESDIR export version export CONFDIR export DESTDIR export DPKG_ARCH export verbose export MODULES export BUSYBOX export COMPCACHE_SIZE # Private, used by 'catenate_cpiogz'. export __TMPCPIOGZ # Private, used by 'prepend_earlyinitramfs'. export __TMPEARLYCPIO for d in bin conf/conf.d etc lib/modules run sbin scripts ${MODULESDIR}; do mkdir -p "${DESTDIR}/${d}" done # Copy in modules.builtin and modules.order (not generated by depmod) for x in modules.builtin modules.order; do if [ -f "${MODULESDIR}/${x}" ]; then cp -p "${MODULESDIR}/${x}" "${DESTDIR}${MODULESDIR}/${x}" fi done # MODULES=list case. Always honour. for x in "${CONFDIR}/modules" /usr/share/initramfs-tools/modules.d/*; do if [ -f "${x}" ]; then add_modules_from_file "${x}" fi done # MODULES=most is default case "${MODULES}" in dep) dep_add_modules ;; most) auto_add_modules ;; netboot) auto_add_modules base auto_add_modules net ;; list) # nothing to add ;; *) echo "W: mkinitramfs: unsupported MODULES setting: ${MODULES}." echo "W: mkinitramfs: Falling back to MODULES=most." auto_add_modules ;; esac # Resolve hidden dependencies hidden_dep_add_modules # First file executed by linux-2.6 cp -p /usr/share/initramfs-tools/init ${DESTDIR}/init # add existant boot scripts for b in $(cd /usr/share/initramfs-tools/scripts/ && find . \ -regextype posix-extended -regex '.*/[[:alnum:]\._-]+$' -type f); do option=$(sed '/^OPTION=/!d;$d;s/^OPTION=//;s/[[:space:]]*$//' "/usr/share/initramfs-tools/scripts/${b}") [ -z "${option}" ] || eval test -n \"\${$option}\" -a \"\${$option}\" != \"n\" || continue [ -d "${DESTDIR}/scripts/$(dirname "${b}")" ] \ || mkdir -p "${DESTDIR}/scripts/$(dirname "${b}")" cp -p "/usr/share/initramfs-tools/scripts/${b}" \ "${DESTDIR}/scripts/$(dirname "${b}")/" done for b in $(cd "${CONFDIR}/scripts" && find . \ -regextype posix-extended -regex '.*/[[:alnum:]\._-]+$' -type f); do option=$(sed '/^OPTION=/!d;$d;s/^OPTION=//;s/[[:space:]]*$//' "${CONFDIR}/scripts/${b}") [ -z "${option}" ] || eval test -n \"\${$option}\" -a \"\${$option}\" != \"n\" || continue [ -d "${DESTDIR}/scripts/$(dirname "${b}")" ] \ || mkdir -p "${DESTDIR}/scripts/$(dirname "${b}")" 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 for i in ${EXTRA_CONF}; do if [ -e "${CONFDIR}/conf.d/${i}" ]; then copy_exec "${CONFDIR}/conf.d/${i}" /conf/conf.d elif [ -e "/usr/share/initramfs-tools/conf.d/${i}" ]; then copy_exec "/usr/share/initramfs-tools/conf.d/${i}" /conf/conf.d fi done # ROOT hardcoding if [ -n "${ROOT:-}" ]; then echo "ROOT=${ROOT}" > ${DESTDIR}/conf/conf.d/root fi if ! command -v ldd >/dev/null 2>&1 ; then echo "WARNING: no ldd around - install libc-bin" >&2 exit 1 fi copy_exec /usr/lib/initramfs-tools/bin/wait-for-root /sbin # module-init-tools copy_exec /sbin/modprobe /sbin copy_exec /sbin/rmmod /sbin mkdir -p "${DESTDIR}/etc/modprobe.d" cp -a /etc/modprobe.d/* "${DESTDIR}/etc/modprobe.d/" # util-linux copy_exec /sbin/blkid /sbin # workaround: libgcc always needed on old-abi arm if [ "$DPKG_ARCH" = arm ] || [ "$DPKG_ARCH" = armeb ]; then cp -a /lib/libgcc_s.so.1 "${DESTDIR}/lib/" fi run_scripts /usr/share/initramfs-tools/hooks optional run_scripts "${CONFDIR}"/hooks optional # cache boot run order if [ -n "$NOEXEC" ]; then echo "W: TMPDIR is mounted noexec, will not cache run scripts." else for b in $(cd "${DESTDIR}/scripts" && find . -mindepth 1 -type d); do cache_run_scripts "${DESTDIR}" "/scripts/${b#./}" done fi # generate module deps 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" ] \ && echo "ldconfig might need uid=0 (root) for chroot()" >&2 fi # Apply DSDT to initramfs if [ -e "${CONFDIR}/DSDT.aml" ]; then copy_exec "${CONFDIR}/DSDT.aml" / fi # Remove any looping or broken symbolic links, since they break cpio. [ "${verbose}" = y ] && xargs_verbose="-t" (cd "${DESTDIR}" && find . -type l -printf '%p %Y\n' | sed -n 's/ [LN]$//p' \ | xargs ${xargs_verbose:-} -rL1 rm -f) # dirty hack for armhf's double-linker situation; if we have one of # the two known eglibc linkers, nuke both and re-create sanity if [ "$DPKG_ARCH" = armhf ]; then if [ -e "${DESTDIR}/lib/arm-linux-gnueabihf/ld-linux.so.3" ] || \ [ -e "${DESTDIR}/lib/ld-linux-armhf.so.3" ]; then rm -f "${DESTDIR}/lib/arm-linux-gnueabihf/ld-linux.so.3" rm -f "${DESTDIR}/lib/ld-linux-armhf.so.3" cp -aL /lib/ld-linux-armhf.so.3 "${DESTDIR}/lib/" ln -sf /lib/ld-linux-armhf.so.3 "${DESTDIR}/lib/arm-linux-gnueabihf/ld-linux.so.3" fi fi [ "${verbose}" = y ] && echo "Building cpio ${outfile} initramfs" if [ -s "${__TMPEARLYCPIO}" ]; then cat "${__TMPEARLYCPIO}" >"${outfile}" || exit 1 else # truncate > "${outfile}" fi ( # work around lack of "set -o pipefail" for the following pipe: # cd "${DESTDIR}" && find . | cpio --quiet -R 0:0 -o -H newc | gzip >>"${outfile}" || exit 1 exec 3>&1 eval ` # http://cfaj.freeshell.org/shell/cus-faq-2.html exec 4>&1 >&3 3>&- cd "${DESTDIR}" { find . 4>&-; echo "ec1=$?;" >&4 } | { cpio --quiet -R 0:0 -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" fi if [ "$ec2" -ne 0 ]; then echo "E: mkinitramfs failure cpio $ec2 $compress $ec3" exit "$ec2" fi if [ "$ec3" -ne 0 ]; then echo "E: mkinitramfs failure $compress $ec3" exit "$ec3" fi ) || exit 1 if [ -s "${__TMPCPIOGZ}" ]; then cat "${__TMPCPIOGZ}" >>"${outfile}" || exit 1 fi if [ "${keep}" = "y" ]; then echo "Working files in ${DESTDIR}, early initramfs in ${__TMPEARLYCPIO} and overlay in ${__TMPCPIOGZ}" else rm -rf "${DESTDIR}" rm -rf "${__TMPCPIOGZ}" rm -rf "${__TMPEARLYCPIO}" fi exit 0 initramfs-tools-0.103ubuntu4/hook-functions0000664000000000000000000003733412305034225015765 0ustar # -*- shell-script -*- catenate_cpiogz() { # Sanity check if [ ! -e "${1}" ]; then echo "W: catenate_cpiogz: arg1='${1}' does not exist." >&2 return fi cat "${1}" >>"${__TMPCPIOGZ}" } prepend_earlyinitramfs() { # Sanity check if [ ! -e "${1}" ]; then echo "W: prepend_earlyinitramfs: arg1='${1}' does not exist." >&2 return fi cat "${1}" >>"${__TMPEARLYCPIO}" } force_load() { manual_add_modules ${@} echo "${@}" >>"${DESTDIR}/conf/modules" } # Takes a file containing a list of modules to be added as an # argument, figures out dependancies, and adds them. # # Input file syntax: # # # comment # modprobe_module_name [args ...] # [...] # add_modules_from_file() { # Sanity check if [ ! -e "${1}" ]; then echo "W: add_modules_from_file: arg1='${1}' does not exist." >&2 return fi grep '^[^#]' ${1} | while read module args; do [ -n "$module" ] || continue force_load "${module}" "${args}" done } # Is this module available? have_module() { modprobe --set-version="${version}" --ignore-install \ --show-depends "${1}" >/dev/null 2>&1 } # Add dependent modules + eventual firmware manual_add_modules() { local kmod firmware for kmod in $(modprobe --set-version="${version}" --ignore-install \ --quiet --show-depends "${1}" | awk '/^insmod/ { print $2 }'); do # Prune duplicates if [ -e "${DESTDIR}/${kmod}" ]; then continue fi mkdir -p "${DESTDIR}/$(dirname "${kmod}")" cp -pL "${kmod}" "${DESTDIR}/$(dirname "${kmod}")" if [ "${verbose}" = "y" ]; then echo "Adding module ${kmod}" fi # Add required firmware for firmware in $(modinfo -F firmware "${kmod}"); do if [ -e "${DESTDIR}/lib/firmware/${firmware}" ] \ || [ -e "${DESTDIR}/lib/firmware/${version}/${firmware}" ]; then continue fi # Only print warning for missing fw of loaded module # or forced loaded module if [ ! -e "/lib/firmware/${firmware}" ] \ && [ ! -e "/lib/firmware/${version}/${firmware}" ] ; then # Only warn about missing firmware if # /proc/modules exists if [ ! -e /proc/modules ] ; then continue fi if grep -q "^$(basename "${kmod}" .ko)[[:space:]]" \ /proc/modules \ || grep -q "^$(basename "${kmod}" .ko)" \ "${CONFDIR}/modules"; then echo "W: Possible missing firmware /lib/firmware/${firmware} for module $(basename ${kmod} .ko)" >&2 fi continue fi if [ ! -e "${DESTDIR}/lib/udev/firmware.agent" ] \ && [ -e "/lib/udev/firmware.agent" ]; then copy_exec /lib/udev/firmware.agent fi if [ -e "/lib/firmware/${version}/${firmware}" ]; then firmware="/lib/firmware/$version/$firmware" else firmware="/lib/firmware/$firmware" fi target_dir="$DESTDIR/$(dirname "$firmware")" if ! [ -d "$target_dir" ]; then mkdir -p "$target_dir" fi cp -a "$firmware" "$target_dir" if [ "${verbose}" = "y" ]; then echo "Adding firmware ${firmware}" fi done done } # $1 = file to copy to ramdisk # $2 (optional) Name for the file on the ramdisk # Location of the image dir is assumed to be $DESTDIR # We never overwrite the target if it exists. copy_exec() { local src target x nonoptlib local libname dirname src="${1}" target="${2:-$1}" [ -f "${src}" ] || return 1 if [ -d "${DESTDIR}/${target}" ]; then # check if already copied [ -e "${DESTDIR}/$target/${src##*/}" ] && return 0 else [ -e "${DESTDIR}/$target" ] && return 0 #FIXME: inst_dir mkdir -p "${DESTDIR}/${target%/*}" fi [ "${verbose}" = "y" ] && echo "Adding binary ${src}" cp -pL "${src}" "${DESTDIR}/${target}" # Copy the dependant libraries for x in $(ldd ${src} 2>/dev/null | sed -e ' /\//!d; /linux-gate/d; /=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/}; s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/' 2>/dev/null); do # Try to use non-optimised libraries where possible. # We assume that all HWCAP libraries will be in tls, # sse2, vfp or neon. nonoptlib=$(echo "${x}" | sed -e 's#/lib/\(tls\|i686\|sse2\|neon\|vfp\).*/\(lib.*\)#/lib/\2#') if [ -e "${nonoptlib}" ]; then x="${nonoptlib}" fi libname=$(basename "${x}") dirname=$(dirname "${x}") # FIXME inst_lib mkdir -p "${DESTDIR}/${dirname}" if [ ! -e "${DESTDIR}/${dirname}/${libname}" ]; then cp -pL "${x}" "${DESTDIR}/${dirname}" [ "${verbose}" = "y" ] && echo "Adding library ${x}" || true fi done } # Copy entire subtrees to the initramfs copy_modules_dir() { local kmod exclude local dir="$1" shift if ! [ -d "${MODULESDIR}/${dir}" ]; then return; fi if [ "${verbose}" = "y" ]; then echo "Copying module directory ${dir}" if [ $# -ge 1 ]; then echo "(excluding $*)" fi fi while [ $# -ge 1 ]; do exclude="${exclude:-} -name $1 -prune -o " shift done for kmod in $(find "${MODULESDIR}/${dir}" ${exclude:-} -name '*.ko' -print); do manual_add_modules $(basename ${kmod} .ko) done } # walk /sys for relevant modules sys_walk_mod_add() { local driver_path module device_path="$1" while [ "${device_path}" != "/sys" ]; do sys_walk_modalias ${device_path} driver_path="$(readlink -f ${device_path}/driver/module)" if [ -e "$driver_path" ]; then module="$(basename $(readlink -f $driver_path))" if [ -n "${module}" ]; then force_load "${module}" fi fi device_path="$(dirname ${device_path})" done } # walk /sys for relevant modalias sys_walk_modalias() { local device_path modalias device_path="$(dirname "${1}")" device_path="$(dirname "${device_path}")" if [ -e "${device_path}/modalias" ]; then modalias=$(cat "${device_path}/modalias") fi if [ -n "${modalias}" ]; then force_load "${modalias}" fi } # find and only copy root relevant modules dep_add_modules() { local block minor root FSTYPE root_dev_path x # require mounted sysfs if [ ! -d /sys/devices/ ]; then echo "mkinitramfs: MODULES dep requires mounted sysfs on /sys" >&2 exit 1 fi # findout root block device + fstype eval "$(mount | awk '/\/dev\// {if ($3 == "/") {print "root=" $1 "\nFSTYPE=" $5; exit}}')" # On failure fallback to /proc/mounts if readable if [ -z "$root" ] && [ -r /proc/mounts ]; then eval "$(awk '!/^rootfs / {if ($2 == "/") {print "root=" $1 "\nFSTYPE=" $3; exit}}' /proc/mounts)" fi # recheck root device if [ -z "$root" ]; then echo "mkinitramfs: failed to determine root device" >&2 echo "mkinitramfs: workaround is MODULES=most, check:" >&2 echo "grep -r MODULES /etc/initramfs-tools/" >&2 echo "" >&2 echo "Error please report bug on initramfs-tools" >&2 echo "Include the output of 'mount' and 'cat /proc/mounts'" >&2 exit 1 fi # handle ubifs and return since ubifs root is a char device but # most of the commands below only work with block devices. if [ "${FSTYPE}" = "ubifs" ]; then manual_add_modules "${FSTYPE}" return fi if [ "${root}" = "/dev/root" ] ; then root="/dev/disk/by-uuid/"$(blkid -o value -s UUID ${root}) 2>/dev/null fi root="$(readlink -f ${root})" # do not trust mount, check superblock eval "$(/usr/lib/klibc/bin/fstype ${root})" # check that fstype rootfs recognition if [ "${FSTYPE}" = "unknown" ]; then FSTYPE=$(blkid -o value -s TYPE "${root}") if [ -z "${FSTYPE}" ]; then echo "mkinitramfs: unknown fstype on root ${root}" >&2 echo "mkinitramfs: workaround is MODULES=most" >&2 echo "Error please report bug on initramfs-tools" >&2 exit 1 fi fi # Add rootfs manual_add_modules "${FSTYPE}" # lvm or luks root if [ "${root#/dev/mapper/}" != "${root}" ] \ || [ "${root#/dev/dm-}" != "${root}" ]; then minor=$((0x$(stat --format "%T" ${root}) % 256)) block=$(ls -1 /sys/block/dm-${minor}/slaves | head -n 1) # lvm on luks or luks on lvm, possibly lvm snapshots while [ "${block#dm-}" != "${block}" ]; do block=$(ls -1 /sys/block/${block}/slaves | head -n 1) done # lvm on md or luks on md if [ "${block#md}" != "${block}" ]; then block=$(sed -ne 's/multipath/[/' -e 's/linear/[/' -e 's/raid[0-9][0-9]*/[/' -e 's/\([hs]d[a-z][a-z]*\)[0-9][0-9]*/\1/g' -e '/^'${block}' :/s/^[^[]*\[ \([^\[]*\)\[.*$/\1/p' &2 echo "mkinitramfs: workaround is MODULES=most" >&2 echo "mkinitramfs: Error please report the bug" >&2 exit 1 fi # sys walk ATA root_dev_path=$(readlink -f /sys/block/${block}/device) sys_walk_mod_add ${root_dev_path} # catch old-style IDE if [ -d "${DESTDIR}/lib/modules/${version}/kernel/drivers/ide" ]; then sys_walk_modalias ${root_dev_path} manual_add_modules ide-gd_mod manual_add_modules ide-cd fi if [ -d "${DESTDIR}/lib/modules/${version}/kernel/drivers/scsi" ]; then manual_add_modules sd_mod fi if [ -e /sys/bus/mmc/devices/ ]; then manual_add_modules mmc_block fi if [ -e /sys/bus/virtio ] ; then manual_add_modules virtio_pci fi if [ -e /sys/bus/i2o/devices/ ]; then force_load i2o_block force_load i2o_config fi if [ -e /sys/bus/ps3_system_bus/ ]; then for x in ps3disk ps3rom ps3-gelic ps3_sys_manager; do manual_add_modules "${x}" done fi if [ -e /sys/bus/vio/ ]; then for x in sunvnet sunvdc; do manual_add_modules "${x}" done fi } # The modules "most" classes added per default to the initramfs auto_add_modules() { case "${1:-}" in base) for x in ehci-hcd ohci-hcd ohci-pci uhci-hcd usbhid xhci xhci-hcd hid-apple \ hid-cherry hid-logitech hid-logitech-dj hid-microsoft \ hid-a4tech hid-belkin hid-bright hid-chicony \ hid-cypress hid-dell hid-ezkey hid-gyration \ hid-monterey hid-petalynx hid-pl hid-samsung hid-sony \ hid-sunplus hid-tmff hid-zpff hid-generic \ btrfs ext2 ext3 ext4 ext4dev isofs jfs nfs nfsv3 nfsv4 nfs_acl \ reiserfs udf xfs vfat nls_cp437 nls_iso8859-1 \ af_packet atkbd i8042 virtio_pci; do manual_add_modules "${x}" done ;; net) copy_modules_dir kernel/drivers/net \ appletalk arcnet bonding can hamradio irda pcmcia \ tokenring usb wan wimax wireless ;; ide) copy_modules_dir kernel/drivers/ide ;; mmc) copy_modules_dir kernel/drivers/mmc ;; scsi) copy_modules_dir kernel/drivers/scsi for x in mptfc mptsas mptscsih mptspi zfcp; do manual_add_modules "${x}" done ;; ata) copy_modules_dir kernel/drivers/ata ;; block) copy_modules_dir kernel/drivers/block ;; ubi) for x in deflate zlib lzo ubi ubifs; do manual_add_modules "${x}" done ;; ieee1394) for x in ohci1394 sbp2; do manual_add_modules "${x}" done ;; firewire) for x in firewire-ohci firewire-sbp2; do manual_add_modules "${x}" done ;; i2o) for x in i2o_block; do manual_add_modules "${x}" done ;; dasd) for x in dasd_diag_mod dasd_eckd_mod dasd_fba_mod; do manual_add_modules "${x}" done ;; usb_storage) copy_modules_dir kernel/drivers/usb/storage ;; virtual) # Hyper-V for x in hv_vmbus hv_utils hv_netvsc hv_mouse hv_storvsc; do manual_add_modules "${x}" done ;; *) auto_add_modules base auto_add_modules net auto_add_modules ide auto_add_modules scsi auto_add_modules block auto_add_modules ata auto_add_modules i2o auto_add_modules dasd auto_add_modules ieee1394 auto_add_modules firewire auto_add_modules mmc auto_add_modules usb_storage auto_add_modules virtual ;; esac } # 'depmod' only looks at symbol dependencies; there is no way for # modules to declare explicit dependencies through module information, # so dependencies on e.g. crypto providers are hidden. Until this is # fixed, we need to handle those hidden dependencies. hidden_dep_add_modules() { for dep in "lib/libcrc32c crc32c" "fs/ubifs/ubifs deflate zlib lzo"; do set -- $dep if [ -f "${DESTDIR}/lib/modules/${version}/kernel/$1.ko" ]; then shift for i in "$@" ; do manual_add_modules "$i" shift done fi done } # mkinitramfs help message usage() { cat >&2 << EOF Usage: ${0} [OPTION]... -o outfile [version] Options: -c compress Override COMPRESS setting in initramfs.conf. -d confdir Specify an alternative configuration directory. -k Keep temporary directory used to make the image. -o outfile Write to outfile. -r root Override ROOT setting in initramfs.conf. See mkinitramfs(8) for further details. EOF exit 1 } # cache boot scripts order cache_run_scripts() { DESTDIR=${1} scriptdir=${2} initdir=${DESTDIR}${scriptdir} [ ! -d ${initdir} ] && return 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 done } # minimal supported kernel version check_minkver() { local curversion initdir DPKG_ARCH minversion cm_x tmp curversion="${1:-}" initdir="${2:-}" if [ -z "${initdir}" ]; then case ${DPKG_ARCH:-} in ia64|hppa) minversion="2.6.15" ;; *) minversion="2.6.12" ;; esac if dpkg --compare-versions "${curversion}" lt "${minversion}"; then echo "W: kernel ${curversion} too old for initramfs on ${DPKG_ARCH}" >&2 echo "W: not generating requested initramfs for kernel ${curversion}" >&2 exit 2 fi return 0 fi set_initlist for cm_x in ${initlist:-}; do # sed: keep last line starting with MINKVER=, # remove MINKVER= and trailing space minver=$(sed '/^MINKVER=/!d;$!d;s/^MINKVER=//;s/[[:space:]]*$//' "${initdir}/${cm_x}") if [ -z "${tmp:-}" ]; then continue elif dpkg --compare-versions "${curversion}" lt "${minver}"; then echo "W: ${cm_x} hook script requires at least kernel version ${minver}" >&2 echo "W: not generating requested initramfs for kernel ${curversion}" >&2 exit 2 fi done } initramfs-tools-0.103ubuntu4/lsinitramfs.80000664000000000000000000000231612305034610015506 0ustar .TH LSINITRAMFS 8 "2010/06/16" "Linux" "lsinitramfs manual" .SH NAME lsinitramfs \- list content of an initramfs image .SH SYNOPSIS .B lsinitramfs .RI [ options ] " " [ ] .br .SH DESCRIPTION The .B lsinitramfs command lists the content of given initramfs images. It allows one to quickly check the content of one (or multiple) specified initramfs files. .SH OPTIONS .TP .B -h Display usage information and exit. .TP .B -l Display long and more verbose listing of initramfs content. .SH USAGE EXAMPLES List initramfs content of current running kernel: .PP .B lsinitramfs /boot/initrd.img-$(uname -r) List content of two initramfs files in verbose mode: .PP .B lsinitramfs -l /boot/vmlinuz-2.6.31-grml64 /boot/vmlinuz-2.6.33-grml64 .SH BUGS .BR lsinitramfs cannot deal with multiple-segmented initramfs images, such as those created when an early (uncompressed) initramfs with system firmware is prepended to the regular compressed initrams, or when overlay data is appended to the initramfs. .SH AUTHOR The initramfs-tools are written by Maximilian Attems and numerous others. .SH SEE ALSO .BR .IR initramfs-tools (8), .IR mkinitramfs (8), .IR update-initramfs (8). initramfs-tools-0.103ubuntu4/hooks/0000775000000000000000000000000012120217514014204 5ustar initramfs-tools-0.103ubuntu4/hooks/compcache0000775000000000000000000000703111762034302016060 0ustar #!/bin/sh set -e if [ "$1" = prereqs ]; then exit 0 fi . /usr/share/initramfs-tools/hook-functions number= suffix= eval $(printf "%s" "$COMPCACHE_SIZE" | \ sed -nre 's/^ *([1-9][0-9]*) *([%KMGT]) *$/number="\1"; suffix="\2";/p') if [ -z "$number" ] || [ -z "$suffix" ]; then exit 0 fi if have_module zram; then name=zram manual_add_modules zram elif have_module ramzswap; then name=ramzswap manual_add_modules ramzswap elif have_module compcache; then name=compcache manual_add_modules compcache else exit 0 fi copy_exec /sbin/swapon copy_exec /sbin/mkswap copy_exec /usr/lib/initramfs-tools/bin/rzscontrol /sbin mem_total="\$(sed -nre 's/^MemTotal:\\s*([0-9]+) kB\$/\\1/p' /proc/meminfo)" case "$suffix" in %) kbytes="\$(($mem_total * $number / 100))" ;; K) kbytes=$(($number)) ;; M) kbytes=$(($number * 1024)) ;; G) kbytes=$(($number * 1024 * 1024)) ;; T) kbytes=$(($number * 1024 * 1024 * 1024)) ;; esac cat >"$DESTDIR"/sbin/compcache-enable <<'EOF' #!/bin/sh if [ "$#" != 3 ]; then echo "Usage: $0 " 1>&2 exit 1 fi type="$1" size="$2" device="$3" number= suffix= eval $(printf "%s" "$size" | \ sed -nre 's/^ *([1-9][0-9]*) *([%KMGT]) *$/number="\1"; suffix="\2";/p') mem_total="$(sed -nre 's/^MemTotal:\s*([0-9]+) kB$/\1/p' /proc/meminfo)" case "$suffix" in %) kbytes="$(($mem_total * $number / 100))" ;; K) kbytes=$(($number)) ;; M) kbytes=$(($number * 1024)) ;; G) kbytes=$(($number * 1024 * 1024)) ;; T) kbytes=$(($number * 1024 * 1024 * 1024)) ;; esac bytes="$(($kbytes * 1024))" if [ "$type" = zram ]; then echo "$bytes" >/sys/block/$device/disksize && \ /sbin/mkswap "/dev/$device" >/dev/null elif [ "$type" = ramzswap ]; then /sbin/rzscontrol "/dev/$device" --disksize_kb="$kbytes" --init fi /sbin/swapon -p 100 "/dev/$device" 2>/dev/null exit 0 EOF chmod 0755 "$DESTDIR"/sbin/compcache-enable mkdir -p "$DESTDIR"/etc/udev/rules.d if [ "$name" = zram ]; then cat >"$DESTDIR"/etc/udev/rules.d/80-compcache.rules <"$DESTDIR"/etc/udev/rules.d/80-compcache.rules <"$DESTDIR"/etc/udev/rules.d/80-compcache.rules <"$DESTDIR"/scripts/init-top/compcache <>"$DESTDIR"/scripts/init-top/compcache <>"$DESTDIR"/scripts/init-top/compcache <>"$DESTDIR"/scripts/init-top/compcache <, Jeff Bailey and numerous others. .PP This manual was written by David H\[:a]rdeman , updated by Maximilian Attems . .SH SEE ALSO .BR .IR initramfs.conf (5), .IR mkinitramfs (8), .IR update-initramfs(8). initramfs-tools-0.103ubuntu4/docs/0000775000000000000000000000000012120217514014011 5ustar initramfs-tools-0.103ubuntu4/docs/maintainer-notes.html0000664000000000000000000002333711762034302020167 0ustar Maintainer documentation for initramfs-tools

Maintainer documentation for initramfs-tools


Table of Contents


NOTE: The most recent version of this document is available at docs/maintainer-notes.html in the the git repository or online at git.debian.org.


1. Definitions

$mailaddress:mailaddress of the user
$username:name of the alioth account
$version:version string
$yourname:your fullname

2. Preparations

  1. Install required software (notice: git is named git-core on Debian/oldstable):
    # apt-get install git git-buildpackage dpkg-dev
    
  2. Set environment variables (e.g. through your ~/.bashrc or ~/.zshrc) for devscripts (git dch):
    export DEBEMAIL=$mailaddress
    export DEBFULLNAME=$yourname
    
  3. Set user name and email address for git (drop the --global option to use configuration per-repo basis):
    % git config --global user.name  "$yourname"
    % git config --global user.email "$mailaddress"
    
  4. Checkout repository (anonymous):
    % git clone git://git.debian.org/git/kernel/initramfs-tools.git
    % cd initramfs-tools
    
  5. Checkout repository (with developer access):
    % git clone ssh://$username@git.debian.org/git/kernel/initramfs-tools.git
    % cd initramfs-tools
    

3. Workflow for daily work

3.1 Implement new features

  1. Checkout new branch and switch to it:
    % git checkout -b $username/short-descr-of-new-feature
    
  2. Hack and commit work:
    % $EDITOR $somefile
    % git add $somefile
    % git commit -s
    
    NOTE: Use 'Closes: #BUGID' for closing a bugreport and 'Thanks: Fullname <mailaddress>' for giving credits in your commit message. git dch will use this information for generating the changelog using the --meta option later on.
  3. Finally push your branch to alioth:
    % git push origin $username/short-descr-of-new-feature
    

3.2 Merge branches

  1. Switch to the branch you want to merge:
    % git checkout $username/new-feature
    
  2. Rebase to master:
    % git rebase master
    
  3. Switch to master branch and merge:
    % git checkout master
    % git merge $username/new-feature
    
  4. Push:
    % git push
    
  5. After branch is merged delete branch on server and locally:
    % git push origin :$username/short-descr-of-new-feature
    % git branch -d $username/short-descr-of-new-feature
    
  6. If a branch is removed from the server it will stay locally. You can get of any stale remote branches locally by executing:
    % git remote prune origin
    

3.3 Test specific branch

  1. Checkout a specific branch iff branch is not already present locally:
    % git checkout -b somename/short-descr-of-new-feature origin/somename/short-descr-of-new-feature
    
  2. Checkout a specific branch iff branch is already present locally:
    % git checkout -b somename/short-descr-of-new-feature
    
  3. Adjust debian/changelog accordingly:
    % git dch --debian-branch="$(git branch | awk -F\*\   '/^* / { print $2}' )" \
      --since="v$(dpkg-parsechangelog | awk '/^Version:/ {print $2}')" -S --id-length=7 --meta --multimaint-merge
    
  4. Build package:
    % git buildpackage --git-ignore-new --git-debian-branch="$(git branch | awk -F\*\  '/^* / { print $2}' )" -tc
    

3.4 Build snapshot version

  1. Adjust debian/changelog accordingly:
    % git dch --debian-branch="$(git branch | awk -F\*\   '/^* / { print $2}' )" \
      --since="v$(dpkg-parsechangelog | awk '/^Version:/ {print $2}')" -S --id-length=7 --meta --multimaint-merge
    
  2. Build package:
    % git buildpackage --git-debian-branch="$(git branch | awk -F\*\  '/^* / { print $2}' )" -tc [-us -uc]
    

4. Contribute

  1. Create patch:
    % git format-patch -s -p origin/master
    
  2. Send patch file(s) to maintainers via mail (requires Debian package git-email):
    % git send-email --to=initramfs-tools@packages.debian.org $PATCHFILE[S]
    
  3. The development mailinglists are debian-kernel@lists.debian.org and initramfs@vger.kernel.org. Discussion of features, bugs and patches are more than welcome on one of these lists.

5. Release new version

  1. Creating changelog:
    % git dch --debian-branch master --release --since HASH
    
    or more dynamically:
    % git dch --meta --release --since v$(dpkg-parsechangelog | awk '/^Version:/ {print $2}') --debian-branch="$(git branch | awk -F\*\  '/^* / { print $2}' )" --id-length=7 --meta --multimaint-merge
    
    NOTE: we do not use history based sorting for the changelog entries but sort them by author.
  2. Releasing:
    % git commit -a -s -m "Releasing version $version."
    
  3. Tagging:
    % git tag -s v"$version" -m "release $version"
    
  4. Pushing:
    % git push
    % git push --tags
    
  5. Build in chroot and upload to ftp-master.
  6. Send mail announcing the new initramfs-tools version with subject "initramfs-tools $VERSION release" to initramfs@vger.kernel.org, debian-kernel@lists.debian.org + kernel-team@lists.ubuntu.com - including a shortlog (generated through "git shortlog $TAG..").

6. Resources


7. Credits


8. License

  • This document is licensed under GPL v2 or any later version.

-- Michael Prokop <mika@debian.org>


initramfs-tools-0.103ubuntu4/docs/example_hook0000664000000000000000000000354111762034302016415 0ustar #!/bin/sh # # # This is an example hook script. It will be run by 'mkinitramfs' # when it creates the image. It's job is to decide which files to # install, then install them into the staging area, where the # initramfs is being created. This happens when a new 'linux-image' # package is installed, or when the administrator runs 'mkinitramfs' # by hand to update an initramfs image. # # CONFDIR -- usually /etc/initramfs-tools, can be set on mkinitramfs # command line. # # DESTDIR -- The staging directory where we are building the image. # # see initramfs-tools(8) # # List the soft prerequisites here. This is a space separated list of # names, of scripts that are in the same directory as this one, that # must be run before this one can be. # PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac # You can do anything you need to from here on. # # Source the optional 'hook-functions' scriptlet, if you need the # functions defined within it. Read it to see what is available to # you. It contains functions for copying dynamically linked program # binaries, and kernel modules into the DESTDIR. # . /usr/share/initramfs-tools/hook-functions # If this hook script is a conffile (and thus stored in # /etc/mkinitramfs/hooks), it must take care to do the right thing # when the package containing it is removed but not purged. There of # course may be other reasons to have custom logic deciding what to # install. The version variable may be useful for this. # if command -v myprog >/dev/null 2>&1; then copy_exec /usr/bin/myprog usr/bin fi # To accompany this, there should usually be a script for inside the # initramfs named something like: # # "/etc/mkinitramfs/local-premount/myprog" # # ... and it should do what is necessary to have 'myprog' get run # inside the early runtime environment. exit 0 initramfs-tools-0.103ubuntu4/docs/example_script0000664000000000000000000000217511762034302016763 0ustar #!/bin/sh # # This script is run inside of the initramfs environment during the # system boot process. It is installed there by 'update-initramfs'. # The # package that owns it may opt to install it in an appropriate # location under "/usr/share/initramfs-tools/scripts/". # # see initramfs-tools(8) for more details. # # List the soft prerequisites here. This is a space separated list of # names, of scripts that are in the same directory as this one, that # must be run before this one can be. # PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; mountfail) # Called if the script has previously registered a mountroot # failure. # Check status, and display any relevant information about the # failure if there is a problem, then exit with a status of 1. ;; esac # Do the work here. # If this script is to be placed in either init-premount, or local-top, # register a mountroot failure hook, so that further information can be given # to the user, in the event that the root device cannot be found. . /scripts/functions add_mountroot_fail_hook echo "Got here!" exit 0 initramfs-tools-0.103ubuntu4/docs/framebuffer0000664000000000000000000000472111762034302016227 0ustar #!/bin/sh PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac # The options part of the kernel "video=" argument (i.e. everyting # after "video=:") has very inconsistent rules. # # Generally the following applies: # 1) options are comma-separated # 2) options can be in either of these three forms: # =, :, . # 3) the "mode" or "mode_option" option (name depends on the framebuffer driver) # has the form x[M][R][-][@][i][m] # and may or may not start with "mode=" or "mode_option=" # -> please adjust as necessary in the parse_video_opts() function # # When the options are used with modules, they need to be space-separated # and the following conversions are needed: # : -> = # -> =1 # -> mode= or mode_option= parse_video_opts() { local OPTS="$1" local IFS="," # Must be a line like video=:,[opt2]... if [ "${OPTS}" = "${OPTS%%:*}" ]; then return fi OPTS="${OPTS#*:}" for opt in ${OPTS}; do # Already in the "=" form if [ "${opt}" != "${opt#*=}" ]; then echo -n "$opt " # In the ":" form elif [ "${opt}" != "${opt#*:}" ]; then echo -n "${opt%:*}=${opt#*:} " # Presumably a modevalue without the "mode=" prefix elif [ "${opt}" != "${opt#[0-9]*x[0-9]}" ]; then # Adjust: mode= option? echo -n "mode=$opt " # ... or mode_option= option? # echo -n "mode_option=$opt " # Presumably a boolean else echo -n "${opt}=1 " fi done } FB="" OPTS="" for x in $(cat /proc/cmdline); do case ${x} in vga=*) FB="vesafb"; OPTS=""; ;; video=*) FB=${x#*=} FB="${FB%%:*}" OPTS="$(parse_video_opts "${x}")" esac done # Module-specific workarounds case ${FB} in matroxfb) # Map command line name to module name FB=matroxfb_base ;; intelfb|i810fb|i915) # Needs AGP driver loaded modprobe intel-agp ;; uvesafb) # v86d requires /dev/zero and dev/mem, but udev haven't been started yet [ -e /dev/zero ] || mknod -m 0666 /dev/zero c 1 5 [ -e /dev/mem ] || mknod -m 0640 /dev/mem c 1 1 ;; *) ;; esac if [ -n "${FB}" ]; then unset MODPROBE_OPTIONS modprobe -q fbcon modprobe -q ${FB} ${OPTS} fi if [ -e /proc/fb ]; then while read fbno desc; do if [ $(($fbno < 32)) ]; then mknod -m 0640 /dev/fb${fbno} c 29 ${fbno} fi done < /proc/fb else mknod -m 0640 /dev/fb0 c 29 0 fi initramfs-tools-0.103ubuntu4/initramfs.conf.50000664000000000000000000000645011762034302016077 0ustar .TH INITRAMFS.CONF 5 "2010/11/22" "Linux" "initramfs.conf manual" .SH NAME initramfs.conf \- configuration file for mkinitramfs .SH DESCRIPTION The behaviour of .B mkinitramfs can be modified by its configuration file. Each line in the file can be a configuration variable, a blank line, or a comment. The value of an variable is assigned by an statement of the form: \fIname\fP=[\fIvalue\fP] Configuration options can be broken out into configuration snippets and placed in individual files in the /etc/mkinitramfs/conf.d directory. Files in this directory are always read \fBafter\fP the main configuration file, so you can override the settings in the main config file without editing it directly. .SH GENERAL VARIABLES .TP \fB MODULES Specifies the modules for the initramfs image. Modules listed in \fI/etc/initramfs-tools/modules\fP and \fI/usr/share/initramfs-tools/modules.d/*\fP are always included in the initramfs, and are loaded early in the boot process. \fIlist\fP doesn't load any additional modules at boot time, other than those listed in the above files. \fImost\fP adds most file system, all ata, sata, scsi and usb drivers. \fIdep\fP tries to guess which modules are necessary for the running box and only adds those modules. \fInetboot\fP adds the base and network modules, but skips block devices. The default setting is \fImost\fP. .TP \fB BUSYBOX Include busybox utilities for the boot scripts. If set to 'n' .B mkinitramfs will build an initramfs without busybox. Beware that many boot scripts need busybox utilities. .TP \fB COMPRESS Specifies the compression method used for the initramfs image. .B mkinitramfs will default to gzip if the kernel lacks support (CONFIG_RD) or the corresponding userspace utility is not present. .TP \fB UMASK Set the umask value of the generated initramfs file. Useful to not disclose eventual keys. .TP \fB COMPCACHE_SIZE Amount of RAM to use for RAM-based compressed swap space. The default is not to use compcache. An empty value \- compcache isn't used, or added to the initramfs at all. An integer and K (e.g. \fI65536 K\fP) \- use a number of kilobytes. An integer and M (e.g. \fI256 M\fP) \- use a number of megabytes. An integer and G (e.g. \fI1 G\fP) \- use a number of gigabytes. An integer and % (e.g. \fI50 %\fP) \- use a percentage of the amount of RAM. You can optionally install the \fIcompcache\fP package to configure this setting via debconf and have userspace scripts to load and unload compcache. .SH NFS VARIABLES .TP \fB BOOT Allows one to use an nfs drive as the root of the drive. The default is to boot from \fIlocal\fP media (hard drive, USB stick). Set to \fInfs\fP for an NFS root share. .TP \fB DEVICE Specifies the network interface, like eth0. .TP \fB ROOT Allows optional root bootarg hardcoding, when no root bootarg can be passed. A root bootarg overrides that special setting. .TP \fB NFSROOT Defaults to \fIauto\fP in order to pick up value from DHCP server. Otherwise you need to specify \fIHOST:MOUNT\fP. .SH FILES .TP .I /etc/initramfs-tools/initramfs.conf .SH AUTHOR The initramfs-tools are written by Maximilian Attems , Jeff Bailey and numerous others. Loosely based on mkinitrd.conf by Herbert Xu. .SH SEE ALSO .BR .IR initramfs-tools (8), .IR mkinitramfs (8), .IR update-initramfs (8). initramfs-tools-0.103ubuntu4/update-initramfs.80000664000000000000000000000412511762034302016433 0ustar .TH UPDATE-INITRAMFS 8 "2008/12/19" "Linux" "update\-initramfs manual" .SH NAME update\-initramfs \- generate an initramfs image .SH SYNOPSIS .B update\-initramfs .RB \-c | \-d | \-u .RB [ \-k .IR version ] .RB [ \-t ] .RB [ \-v ] .RB [ \-b ] .RB [ \-h ] .SH DESCRIPTION The .B update\-initramfs script manages your initramfs images on your local box. It keeps track of the existing initramfs archives in /boot. There are three modes of operation create, update or delete. You must at least specify one of those modes. The initramfs is a gzipped cpio archive. At boot time, the kernel unpacks that archive into RAM disk, mounts and uses it as initial root file system. All finding of the root device happens in this early userspace. .SH OPTIONS .TP \fB \-k \fI version Set the specific kernel version for whom the initramfs will be generated. For example the output of uname \-r for your currently running kernel. This argument is optional for update. The default is the latest kernel version. The use of "all" for the .I version string specifies .B update\-initramfs to execute the chosen action for all kernel versions, that are already known to .B update\-initramfs. .TP \fB \-c This mode creates a new initramfs. .TP \fB \-u This mode updates an existing initramfs. .TP \fB \-d This mode removes an existing initramfs. .TP \fB \-t Allows one to take over an custom initramfs with a newer one. .TP \fB \-v This option increases the amount of information you are given during the chosen action. .TP \fB \-b Set an different bootdir for the image creation. .TP \fB \-h Print a short help page describing the available options in .B update\-initramfs. .SH EXAMPLES Update the initramfs of the newest kernel: .PP .B update\-initramfs -u Create the initramfs for a specific kernel: .PP .B update\-initramfs -c -k 2.6.18-1-686 .SH FILES /etc/initramfs-tools/update-initramfs.conf .SH AUTHOR The initramfs-tools are written by Maximilian Attems , Jeff Bailey and numerous others. .SH SEE ALSO .BR .IR initramfs.conf (5), .IR initramfs-tools (8), .IR mkinitramfs (8). initramfs-tools-0.103ubuntu4/debian/0000775000000000000000000000000012305034655014313 5ustar initramfs-tools-0.103ubuntu4/debian/rules0000775000000000000000000000131311762034302015364 0ustar #!/usr/bin/make -f %: dh $@ DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) CROSS := else CROSS := CC=$(DEB_HOST_GNU_TYPE)-gcc PKG_CONFIG=$(DEB_HOST_GNU_TYPE)-pkg-config endif override_dh_auto_build: make -C src $(CROSS) override_dh_auto_clean: make -C src clean override_dh_install: dh_install ifneq (,$(filter initramfs-tools,$(shell dh_listpackages))) cp -a scripts/init-top/keymap \ debian/initramfs-tools/usr/share/initramfs-tools/scripts/panic/keymap sed -i -e "/^OPTION=/d" \ debian/initramfs-tools/usr/share/initramfs-tools/scripts/panic/keymap endif initramfs-tools-0.103ubuntu4/debian/compat0000664000000000000000000000000211762034302015504 0ustar 7 initramfs-tools-0.103ubuntu4/debian/initramfs-tools.postinst0000664000000000000000000000062511762034302021250 0ustar #!/bin/sh set -e if [ ! -e /etc/initramfs-tools/modules ]; then cp /usr/share/initramfs-tools/modules /etc/initramfs-tools/ fi # Regenerate initramfs whenever we go to dpkg state `installed' if [ "x$1" != xtriggered ]; then # this activates the trigger, if triggers are working update-initramfs -u else # force it to actually happen DPKG_MAINTSCRIPT_PACKAGE='' update-initramfs -u fi #DEBHELPER# initramfs-tools-0.103ubuntu4/debian/initramfs-tools.postrm0000664000000000000000000000022211762034302020702 0ustar #!/bin/sh set -e if [ "x${1}" = "xpurge" ]; then rm -f /etc/initramfs-tools/conf.d/resume rm -f /etc/initramfs-tools/modules fi #DEBHELPER# initramfs-tools-0.103ubuntu4/debian/lintian/0000775000000000000000000000000012120217514015741 5ustar initramfs-tools-0.103ubuntu4/debian/lintian/initramfs-tools0000664000000000000000000000040511762034302021020 0ustar initramfs-tools: package-contains-empty-directory usr/share/initramfs-tools/conf.d/ initramfs-tools: package-contains-empty-directory usr/share/initramfs-tools/conf-hooks.d/ initramfs-tools: package-contains-empty-directory usr/share/initramfs-tools/modules.d/ initramfs-tools-0.103ubuntu4/debian/initramfs-tools.triggers0000664000000000000000000000003211762034302021203 0ustar interest update-initramfs initramfs-tools-0.103ubuntu4/debian/initramfs-tools.preinst0000664000000000000000000000223011762034302021043 0ustar #!/bin/sh set -e chrooted() { # borrowed from udev's postinst if [ "$(stat -c %d/%i /)" = "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then # the devicenumber/inode pair of / is the same as that of # /sbin/init's root, so we're *not* in a chroot and hence # return false. return 1 fi return 0 } case "$1" in install) mkdir -p /etc/initramfs-tools/conf.d # First time install. Can we autodetect the RESUME partition? if [ -r /proc/swaps ]; then RESUME=$(tail -n $(($(wc -l /proc/swaps | awk ' { print $1 } ') - 1)) /proc/swaps | sort -rk3 | head -n 1 | awk ' { print $1 } ') if command -v blkid >/dev/null 2>&1; then UUID=$(blkid -s UUID -o value "$RESUME" || true) # FIXME: post-Wheezy remove vol_id invocations elif command -v vol_id >/dev/null 2>&1; then UUID=$(vol_id -u "$RESUME" || true) elif [ -x /lib/udev/vol_id ]; then UUID=$(/lib/udev/vol_id -u "$RESUME" || true) fi if [ -n "$UUID" ]; then RESUME="UUID=$UUID" fi fi # write conf.d/resume if not in a chroot if [ -n "${RESUME}" ] && ! chrooted; then echo "RESUME=${RESUME}" > /etc/initramfs-tools/conf.d/resume fi ;; esac #DEBHELPER# initramfs-tools-0.103ubuntu4/debian/changelog0000664000000000000000000066043412305034610016171 0ustar initramfs-tools (0.103ubuntu4) trusty; urgency=medium * Cherrypick v0.113 changes (LP: #1194370): [ Henrique de Moraes Holschuh ] * [f59e716] implement early initramfs support (Closes: #712521) * [b8295f0] lsinitramfs(8): document failure to deal with early initramfs -- Dimitri John Ledkov Mon, 03 Mar 2014 08:11:20 +0000 initramfs-tools (0.103ubuntu3) trusty; urgency=low * wait-for-root.c: Set udev monitor buffer size like udev does, to avoid losing events due to ENOBUFS errors. Side issue in LP #1215911, thanks to Kay Sievers for pointing out! -- Martin Pitt Tue, 03 Dec 2013 16:29:24 +0100 initramfs-tools (0.103ubuntu2) trusty; urgency=low * Include usbhid in the list of modules we probe in the panic function, since we may panic before udev runs and most keyboards are USB these days. Closes: #229732. * Add ohci_pci to the list of USB host modules included in the initramfs, needed on some systems and not a built-in driver in Ubuntu. LP: #1238194. -- Steve Langasek Thu, 24 Oct 2013 13:40:43 -0700 initramfs-tools (0.103ubuntu1) saucy; urgency=low * src/wait-for-root.c: udev_monitor_receive_device() might still return NULL even with a blocking socket if recvmsg() fails with ENOBUFS. Retry every second in that case. Thanks to Tetsuo Handa for debugging this and the patch! (LP: #1215911) -- Martin Pitt Mon, 26 Aug 2013 14:23:10 +0200 initramfs-tools (0.103ubuntu0.7) raring; urgency=low * src/wait-for-root.c: Set udev monitor socket to blocking, as we want to wait for events. (LP: #1154813) -- Martin Pitt Thu, 14 Mar 2013 07:08:06 +0100 initramfs-tools (0.103ubuntu0.6) raring; urgency=low * Sync the mount options for /run from /lib/init/fstab. LP: #1152744. -- Steve Langasek Wed, 13 Mar 2013 17:52:02 -0700 initramfs-tools (0.103ubuntu0.5) raring; urgency=low * When copying firmware, don't use copy_exec; running ldd on random firmware files is annoying and, if libc-x32 is installed, may cause crashes due to lack of kernel support. LP: #1115875. -- Steve Langasek Tue, 12 Feb 2013 07:22:19 +0000 initramfs-tools (0.103ubuntu0.4) raring; urgency=low * [71ece149] Cherry pick mkinitramfs: Copy modules.builtin into initramfs (Closes: #659866) (LP: #1075422). -- Dmitrijs Ledkovs Tue, 04 Dec 2012 11:51:05 +0000 initramfs-tools (0.103ubuntu0.3) raring; urgency=low * Add nfsv3, nfsv4 and nfs_acl to the base modules. This should fix nfs from initramfs. -- Stéphane Graber Thu, 22 Nov 2012 09:43:09 -0500 initramfs-tools (0.103ubuntu0.2) quantal; urgency=low * Add hid-logitech-dj to the static module list to re-enable some keyboards that stopped working with recent kernels (LP: #1066376) -- Adam Conrad Tue, 16 Oct 2012 03:39:23 +0100 initramfs-tools (0.103ubuntu0.1) quantal; urgency=low * hook-functions: Add hid-generic (LP: #1017991). -- Colin Watson Tue, 26 Jun 2012 16:50:54 +0100 initramfs-tools (0.103ubuntu0) quantal; urgency=low * NOTE: Not an actual merge, just a cherry-pick and reving the version number to avoid having to touch the Breaks in klibc-utils * Cherry-pick the changes from 0.102 to 0.103 to move ipconfig bits from /tmp to /run to match the new behaviour of klibc-utils -- Adam Conrad Fri, 01 Jun 2012 10:00:59 +0800 initramfs-tools (0.99ubuntu13) precise; urgency=low * Deal with the uniquely broken situation of armhf having two linkers by creating both if we find either one in the target (LP: #984007) -- Adam Conrad Tue, 17 Apr 2012 11:44:12 -0600 initramfs-tools (0.99ubuntu12) precise; urgency=low * Fix cross-building. -- Colin Watson Sat, 31 Mar 2012 01:35:00 +0100 initramfs-tools (0.99ubuntu11) precise; urgency=low * make sure fixrtc only updates the RTC setting if last mount time is actually in the future (LP: #947988) -- Oliver Grawert Wed, 07 Mar 2012 12:33:58 +0100 initramfs-tools (0.99ubuntu10) precise; urgency=low * Add Hyper-V paravirtualised device drivers to the initramfs to allow booting of stock images in a Hyper-V guest. (LP: #917135) -- Andy Whitcroft Fri, 10 Feb 2012 14:44:46 +0000 initramfs-tools (0.99ubuntu9) precise; urgency=low * Mark initramfs-tools Multi-Arch: foreign. -- Colin Watson Sun, 20 Nov 2011 17:41:31 +0000 initramfs-tools (0.99ubuntu8) oneiric-proposed; urgency=low * Too optimistic in thinking that the DRM driver will always be loaded in time for scripts/init-top/framebuffer to load; some users find that vesafb gets loaded first anyway, scrambling their console state in the initramfs. Add a one-second sleep before checking if we should fall back to vesafb, which seems to be long enough to work around this. LP: #869119. -- Steve Langasek Mon, 10 Oct 2011 19:28:38 -0700 initramfs-tools (0.99ubuntu7) oneiric; urgency=low * When falling back to vesafb, suppress stderr output from modprobe; otherwise in some cases we'll get error output on a console that was nicely blank up to a week ago. Failing to load vesafb is usually not an error in any case. -- Steve Langasek Thu, 06 Oct 2011 13:21:02 -0700 initramfs-tools (0.99ubuntu6) oneiric; urgency=low * scripts/init-top/framebuffer: fall back to vesafb if no other framebuffer is found/configured, so we can take full advantage of the grub gfxpayload handoff support. This ensures we get a clean framebuffer-based plymouth screen even when using binary video drivers. LP: #864149, LP: #563878, LP: #771905. -- Steve Langasek Sat, 01 Oct 2011 20:53:15 -0700 initramfs-tools (0.99ubuntu5) oneiric; urgency=low * hooks/compcache: udev RUN commands cannot include double quotes (") nor do they support shell syntax. Move to an external helper script to provision and add the memory swap partitions. * hooks/compcache: add support for the updated zram staging driver which requires the size to be pushed into sysfs and the partition be initialised before adding. (LP: #832694) -- Andy Whitcroft Mon, 19 Sep 2011 15:40:32 +0100 initramfs-tools (0.99ubuntu4) oneiric; urgency=low * init: When receiving "recovery" on cmdline, start upstart with --startup-event=recovery (LP: #575469) -- Stéphane Graber Thu, 15 Sep 2011 16:07:54 -0400 initramfs-tools (0.99ubuntu3) oneiric; urgency=low * remove hardcoded flash-kernel call from update-initramfs, flash-kernel ships the same as /etc/initramfs/post-update.d/ script now -- Oliver Grawert Fri, 09 Sep 2011 12:14:01 +0200 initramfs-tools (0.99ubuntu2) oneiric; urgency=low * hook-functions: Revert changes from 0.98.8ubuntu3. With the current implementation of copying, and /etc/ld.so.conf now existing in initramfs, we can leave libraries at their original location. Thanks to maks for pointing out! * init: Add back compatibility symlink for /dev/.initramfs, until all packages using /dev/.initramfs have been moved to /run/initramfs. (LP: #810221) -- Martin Pitt Fri, 15 Jul 2011 11:20:32 +0200 initramfs-tools (0.99ubuntu1) oneiric; urgency=low * Merge with Debian unstable. See 0.98.8ubuntu1 for remaining Ubuntu changes. This version creates /run in the initramfs, and moves it over to the running system. (LP: #807306) * hooks/busybox: Fix symlinking of /bin/sh to busybox, to work with current copy_exec() function. -- Martin Pitt Tue, 12 Jul 2011 10:37:34 +0200 initramfs-tools (0.99) unstable; urgency=low Release "scarpe rotte e pur bisogna andar" [ maximilian attems ] * [ce45cd0] update-initramfs: Show the mkinitramfs on error message. * [5b84e5b] maintainer-notes.html: Fix email to send patches to. * [ec6a77f] doc: s/ressources/resources/ * [3c717fa] initramfs-tools: preinst use blkid for uuid generation if around. (Closes: #609964) * [8e2ffcd] postinst cleanup very old dpkg trigger comparison. * [78cdb26] mkinitramfs: Add support for xz compression. (closes: #626446) * [f5b8347] hook-functions: Cleanup ref to ide-disk. * [6cab0ec] initramfs-tools: cleanup any usplash traces. (closes: #620924) * [08d4895] initramfs-tools: Remove mkinitramfs-kpkg. (Closes: #454934, #502792) * [0ed6376] initramfs-tools: add hid_sunplus to listed keyboard drivers. * [5f53d3b] init: load netconsole after loading network drivers. Thanks Ferenc Wagner (Closes: #596742) * [7ff2998] debian/copyright: Update authorlist and year attribution. * [e789cdd] maintainer-notes: Use git dch --multimaint-merge on examples. * [17296ff] dep_add_modules: Use hidden_dep_add_modules for ubifs. * [3d44bfb] hidden_dep_add: Use mika's variadic function from $2 on. * [8f8299d] mkinitramfs: copy over on build instead of using symlink tree. (Closes: #338405, #506540) * [f5afa6a] mkinitramfs: Add lib search path + run full ldconfig in initramfs. (Closes: #612633, #619670) * [259ad09] mkinitramfs: creat /run initramfs directory. * [5add333] initramfs-tools: init mount /run tmpfs. * [74109b9] init: No need to touch /dev/.initramfs. * [8e7620a] hook-functions: xhci-hcd got renamed. (Closes: #625224) Thanks to Matthew Wilcox [ Tim Small ] * [1fe9f78] Add Documentation for modules=list in initramfs.conf(5). (Closes: #603903) [ Ben Hutchings ] * [c018886] kernel hooks: Treat missing version argument as an error. * [58ee42c] kernel hooks: Enable error-exit (sh -e). * [7866542] update-initramfs: Depend on kernel hook scripts rather than $ramdisk invocation. * [43fe8e6] update-initramfs: Remove support for 'do_bootloader' and specific boot loaders. (closes: #594189) [ Gianluigi Tiesi ] * [9c25269] mkinitramfs: misleading message in verbose mode. (Closes: #611046) [ Timo Juhani Lindfors ] * [871ffe7] initramfs-tools: Make panic message visible even if panic= is used. * [2525b00] initramfs-tools: Inform the user about reboot on panic=. [ Michael Prokop ] * [465a5f1] hidden_dep_add_modules(): make it dynamically to support more than 3 arguments as well. * [3323930] Use --check=crc32 option for xz compression. Thanks to Ulrich Dangel * [bedf1e3] Use -8 for compression with xz. * [adce374] docs: fix wording ("allows *one* to") to make lintian happy. * [ecbc54a] Bump Standards-Version to 3.9.2. [ Evan Broder ] * [ad1a594] initramfs-tools: Fix handling of numeric root= arguments to be udev-friendly. (Closes: #501969, #606806) [ Christian Hofstaedtler ] * [e34eca4] init: move /proc after moving other filesystems. [ Roger Leigh ] * [10990ab] init: Preserve state on old boxes without /run on rootfs. * [4d08c2e] init: sync mount options with the defaults in initscripts. (Closes: #621803) * [20c43ce] init: Don't use "none" as a mount fsname (Closes: #603858) [ Michael Tokarev ] * [ec83abd] mkinitramfs: No need to warn about md-root busybox dep. -- maximilian attems Wed, 11 May 2011 23:38:18 +0200 initramfs-tools (0.98.8ubuntu4) oneiric; urgency=low * Rename xhci to xhci-hcd to fix booting from USB 3.0 devices (cherry-picked fix from Debian bug #625224). (LP: #565047) -- Evan Broder Wed, 22 Jun 2011 10:57:43 -0700 initramfs-tools (0.98.8ubuntu3) natty; urgency=low * If copy_exec finds libraries to copy which are only accessible to the runtime linker by virtue of being listed in /etc/ld.so.conf*, then install those libraries to /lib or /usr/lib as appropriate instead (LP: #728611). -- Colin Watson Sat, 26 Mar 2011 01:12:48 +0000 initramfs-tools (0.98.8ubuntu2) natty; urgency=low * Restore bnx2 to the initramfs; firmware loading should work these days, and lots of other modules need firmware. Suggested by maximilian attems. -- Colin Watson Wed, 09 Feb 2011 18:13:23 +0000 initramfs-tools (0.98.8ubuntu1) natty; urgency=low * Resynchronise with Debian. Remaining changes: - Use busybox-initramfs for Depends. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Depend on a sufficient version of udev to load fbcon. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. - Drop hooks/keymap and associated code; console-setup takes care of this in Ubuntu. - Incorporate rzscontrol from compcache so that we can control current ramzswap devices. - Call 'plymouth hide-splash' before running failure hooks. - Make /etc/mtab a symlink to /proc/mounts on startup, since e.g. current ntfs-3g doesn't work otherwise. - Ignore errors from iscan and iscan-data hooks. - Set hostname at boot, for the benefit of mdadm autoassembly. - If root= is numeric, set ROOT to /dev/block/N:N rather than /dev/root. - Consolidate framebuffer calls to 'udevadm settle'. -- Colin Watson Wed, 09 Feb 2011 17:27:55 +0000 initramfs-tools (0.98.8) unstable; urgency=high [ maximilian attems ] * [67c1d32] initramfs-tools: MODULES=dep fix for ubifs / (Closes: #608339) * [ca4d08a] mkinitramfs: Fix noexec /tmp detection for long device names. (Closes: #608865) Thanks to Ian Campbell [ Ben Hutchings ] * [78d9e04] initramfs-tools: Handle hidden dependency of libcrc32c on crc32c. (Closes: #608538) -- maximilian attems Fri, 28 Jan 2011 15:11:10 +0100 initramfs-tools (0.98.7) unstable; urgency=high [ Aad dame ] * [1caecd2] initramfs-tools: Fix MODULES=dep on an AOE device. (Closes: #607509) [ maximilian attems ] * [78337a4] MODULES=dep Fix partitioned raid setup (Closes: #605824) -- maximilian attems Mon, 20 Dec 2010 12:56:01 +0100 initramfs-tools (0.98.6) unstable; urgency=high [ Milan Kupcevic ] * [dd40f3a] initramfs-tools: Load PowerMac G5 thermal modules. (Closes: #603981) [ maximilian attems ] * [c103d08] initramfs-tools: cryptsetup Lenny dist upgrade fix. (Closes: #607090) [ Ben Hutchings ] * [1e46a47] Fix condition for adding IDE or SCSI disk driver when MODULES=dep -- maximilian attems Thu, 16 Dec 2010 14:45:29 +0100 initramfs-tools (0.98.5) unstable; urgency=high [ maximilian attems ] * [6b6cbe0] mkininitramfs: MODULES=dep fallback to /proc/mounts for rootdev (Closes: #600453) * [f3b696b] Small enhancements to Maintainer docs. [ Marc Herbert ] * [478ba89] Minor documentation fix in /etc/initramfs-tools/modules. (LP: #177263) -- maximilian attems Thu, 21 Oct 2010 13:53:17 +0200 initramfs-tools (0.98.4) unstable; urgency=high * [bfb0742] reportbug: list force loaded modules. * [a103aea] hooks/thermal: Add windfarm_pm121 for powerpc on initramfs. * [1c64a45] initramfs-tools.8: udev gets loaded earlier. (Closes: #596984) -- maximilian attems Sat, 25 Sep 2010 20:25:30 +0200 initramfs-tools (0.98.3) unstable; urgency=high * [365e06b] Ubuntu merge: Conflict with older versions of usplash. -- maximilian attems Fri, 10 Sep 2010 09:40:10 +0200 initramfs-tools (0.98.2) unstable; urgency=high [ Eckhart Wörner ] * [97f20c5] initramfs-tools: Add hid-cherry and hid-logitech to initramfs (Closes: #595827) -- maximilian attems Tue, 07 Sep 2010 12:54:01 +0200 initramfs-tools (0.98.1ubuntu9) natty; urgency=low [ dann frazier ] * framebuffer: consolidate calls to 'udevadm settle' (LP: #687588). -- Colin Watson Thu, 09 Dec 2010 12:28:27 +0000 initramfs-tools (0.98.1ubuntu8) natty; urgency=low * If the root= argument is numeric, set ROOT to the appropriate /dev/block/N:N symlink instead of mknod'ing a /dev/root device. This makes wait-for-root able to detect those devices. (LP: #576429) -- Evan Broder Fri, 26 Nov 2010 19:01:30 -0800 initramfs-tools (0.98.1ubuntu7) natty; urgency=low * mdadm autoassembly works by matching hostname with what is stored in the uuid bits of the array. So hostname needs to be set at boot time for the rootfs to be mounted, when the rootfs is on an array which has to be auto-assembled. Added support for setting the hostname. (LP: #330399) -- Surbhi Palande Wed, 06 Oct 2010 17:53:20 +0300 initramfs-tools (0.98.1ubuntu6) maverick; urgency=low * Apparently the iscan hook is sometimes called iscan-data, so ignore errors from that too (LP: #654856). -- Colin Watson Mon, 04 Oct 2010 23:34:53 +0100 initramfs-tools (0.98.1ubuntu5) maverick; urgency=low * Ignore errors from iscan hook, due to a widely-deployed third-party package causing upgrade problems (LP: #603053). -- Colin Watson Mon, 04 Oct 2010 10:42:30 +0100 initramfs-tools (0.98.1ubuntu4) maverick; urgency=low * Make /etc/mtab a symlink to /proc/mounts on startup, since e.g. current ntfs-3g doesn't work otherwise (LP: #641306). (We can't make it a symlink directly in the initramfs, since mkinitramfs uses 'cpio --dereference'.) -- Colin Watson Fri, 17 Sep 2010 18:14:31 +0100 initramfs-tools (0.98.1ubuntu3) maverick; urgency=low * hooks/thermal: Force load thermal modules on powerpc for now, as there are no modaliases for these modules, so udev won't touch them. Longer term, scripts will need to be written to better identify which thermal module needs to be loaded. (LP: #631358) -- Luke Yelavich Wed, 15 Sep 2010 18:08:15 +1000 initramfs-tools (0.98.1ubuntu2) maverick; urgency=low * scripts/functions: Adding plymouth hide-splash to see the initramfs prompt messages on VT. (LP: #628400) -- Surbhi Palande Mon, 13 Sep 2010 10:24:22 +0100 initramfs-tools (0.98.1ubuntu1) maverick; urgency=low * Resynchronise with Debian. Remaining changes: - Use busybox-initramfs for Depends. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Depend on a sufficient version of udev to load fbcon. - Conflict with older versions of usplash. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. - Drop hooks/keymap and associated code; console-setup takes care of this in Ubuntu. - Incorporate rzscontrol from compcache so that we can control current ramzswap devices. * Stop silencing /bin/resume output when trying to resume; the offending message in klibc is now debug-only. -- Colin Watson Tue, 07 Sep 2010 12:45:05 +0100 initramfs-tools (0.98.1) unstable; urgency=high [ Vagrant Cascadian ] * [85fbb23] configure_networking(): Look for presence of /tmp/net-*.conf files to not recall ipconfig. (Closes: #584583) -- maximilian attems Wed, 25 Aug 2010 22:13:18 +0200 initramfs-tools (0.98ubuntu2) maverick; urgency=low * The ramzswap device changed its interface so that the disk size needs to be given using an ioctl rather than as a module parameter. Incorporate the rzscontrol tool from the compcache project (http://code.google.com/p/compcache/) so that we can control current ramzswap devices (LP: #600782). This is a strictly temporary measure, as recent versions of compcache change the interface (and module name) again to involve writing to sysfs files, which won't require any special tools. -- Colin Watson Fri, 20 Aug 2010 09:46:26 +0100 initramfs-tools (0.98ubuntu1) maverick; urgency=low * Resynchronise with Debian. Remaining changes: - Use busybox-initramfs for Depends. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Silence /bin/resume output when trying to resume. - Depend on a sufficient version of udev to load fbcon. - Conflict with older versions of usplash. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. - Drop hooks/keymap and associated code; console-setup takes care of this in Ubuntu. -- Colin Watson Wed, 18 Aug 2010 13:05:53 +0100 initramfs-tools (0.98) unstable; urgency=low [ Michael Prokop ] * [7faeb32] fix typos in manpage, scripts/functions and conf/initramfs.conf - thanks lintian * [f1360c9] debian/NEWS: drop asterisk chars to make lintian happy * [c4a1981] install doc-base file for doc-base-registration * [f813bd9] add debian/source/format with "3.0 (native)" to make lintian happy * [38ee1a0] maintainer-notes: document "git remote prune origin" - thanks to maximilian attems * [2390db8] maintainer-notes: use git config instead of environment variables - thanks to Gerfried Fuchs * [c85bb1f] some minor rewording of sentences about development mailinglists * [7af6ef4] mkinitramfs: do not execute compress command under quotes (Closes: #588517) * [b65a486] update-initramfs: stop buildprocess if any script is failing * [e7daaf7] init: provide validate_init() wrapper to support absolute symlinks. (Closes: #590744) * [a0c3140] init: provide fastforward path for the common case when validating init binary. * [b343994] Bump Standards-Version to 3.9.1. [ maximilian attems ] * [837f261] mkinitramfs: set nounset and errexit * [be71015] reportbug: list the mkinitramfs hook scripts of reporting box * [295bca7] initramfs-tools.8: Enhance documentation of boot option * [c327689] update-initramfs: run_bootloader() return after zipl and flash-kernel * [089a903] mkinitramfs: set COMPRESS=gzip to be more consistent. - thanks to Colin Watson * [210c83c] control: conform to latest policy without changes * [9613412] mkinitramfs: Provide error code of failed mkinitramfs creation * [51a8d5f] revert mkinitramfs errexit and nounset * [6bcb867] Maintainer notes document dev mailinglists * [7c6221d] maintainer notes: underline that mail to one of the 2 lists is good * [762ae2a] update-initramfs: revert nounset (Closes: #588915) * [a4e1a9e] initramfs-tools: only allow hook scripts to errexit on mkinitramfs * [6f0b646] update-initramfs: run_bootloader() invoke Initramfs hooks [ Stephen Powell ] * [09d251a] postinst hook: respect INITRD variable * [ff6116f] Redirect STDOUT to STDERR for post{inst,rm} hooks -- Michael Prokop Sat, 07 Aug 2010 09:41:39 -0400 initramfs-tools (0.97.2ubuntu2) maverick; urgency=low * drop check for flash-kernel entry in kernel-img.conf, debian dropped kernel-img.conf usage for flash-kernel and this code snippet prevents flash-kernel from being run. -- Oliver Grawert Tue, 09 Aug 2010 17:48:01 +0200 initramfs-tools (0.97.2ubuntu1) maverick; urgency=low * Resynchronise with Debian: - Fix initramfs generation without COMPRESS set (LP: #602523, #602621). Remaining changes: - Use busybox-initramfs for Depends. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - update-initramfs: check whether kernel-img.conf exists and postinst_hook is set before calling flash-kernel. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Silence /bin/resume output when trying to resume. - Depend on a sufficient version of udev to load fbcon. - Conflict with older versions of usplash. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. - Drop hooks/keymap and associated code; console-setup takes care of this in Ubuntu. -- Colin Watson Wed, 07 Jul 2010 13:35:54 +0100 initramfs-tools (0.97.2) unstable; urgency=high * [ce732c3] initramfs-tools: output name of script that errexits. (Closes: 586554) -- maximilian attems Tue, 06 Jul 2010 12:58:37 +0200 initramfs-tools (0.97.1) unstable; urgency=high * [90d99e4] mkinitramfs: Fix initramfs generation without COMPRESS set. (Closes: 587608) - thanks Valentin QUEQUET -- maximilian attems Mon, 05 Jul 2010 21:50:47 +0200 initramfs-tools (0.97ubuntu1) maverick; urgency=low * Resynchronise with Debian. Remaining changes: - Use busybox-initramfs for Depends. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - update-initramfs: check whether kernel-img.conf exists and postinst_hook is set before calling flash-kernel. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Silence /bin/resume output when trying to resume. - Depend on a sufficient version of udev to load fbcon. - Conflict with older versions of usplash. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. - Drop hooks/keymap and associated code; console-setup takes care of this in Ubuntu. * Add .conf extension to modprobe blacklist configuration file in the vga=*|video=* case (it had already been added in other cases, thanks to an upstream merge). -- Colin Watson Tue, 06 Jul 2010 14:04:26 +0100 initramfs-tools (0.97) unstable; urgency=low [ Martin Michlmayr ] * [e65ee48] Produce an error when root cannot be determined with MODULES=dep * [bb66fc2] hook-functions/init/scripts/local: add support for ubifs. (Closes: #582858) - thanks to Martin Michlmayr [ Ferenc Wagner ] * [1d66ae1] scripts/nfs: cleanup retry logic [ Colin Watson ] * [3054e3e] initramfs-tools: work around 'find -printf %Y' bug [ maximilian attems ] * [a8a5ce4] script: Add update-initramfs.conf to bug report * [cc6077a] update-initramfs: Fix another unbound variable (Closes: #583695) * [b1f74e6] get_fstype: reference blkid in comment - thanks to Christoph Anton Mitterer * [eb93a7e] pre_mountroot(): reduce timeout to 30 seconds * [38563fe] scripts/functions: On panic change to tty1 if chvt around - thanks to Colin Watson * [2031379] mkinitramfs: No point in hardcoding busybox path * [68c87cd] mkinitramfs: check syntax of boot and hook scripts * [ae02e4b] scripts/functions: beautify a bit reduce_satisfied() * [22d996c] maintainer doc: use git commands without the dash * [6147641] nfsmount: more small cleanups * [e967b03] mkinitramfs, lsinitramfs: Better error message for non-GNU getopt * Add lsinitramfs (to list content of an initramfs image) ([a39db63] [969f8fd] [fafede5] [2f3eb88]) [ Michael Prokop ] * [2a8c990] hook-functions/mkinitramfs/update-initramfs: consequently output error messages to stderr * [04b8619] init: display warning message if devtmpfs could not be mounted. - thanks to Ferenc Wagner * [60afd2a] code cleanup: drop trailing whitespaces. * [ab28c77] code cleanup: consequently replace spaces in indentions with tabs to unify coding stile * [3a02c6f] code cleanup: consequently use "W:" for warnings. * [b1fff5e] add bash-completion for update-initramfs (Closes: #537139) - thanks to Stéphane Jourdois * [5697c3b] hook-functions: replace awk calls with sed in dep_add_modules() (Closes: #585991) - thanks to Thorsten Glaser * [7afab22] debian/script: append /proc/mdstat (iff present) to bugreports * [5b565be] scripts/functions: allow hooks to abort build (Closes: #396388) * [528ba78] hook-functions: do not install ubi module by default via auto_add_modules() * [ecb8416] lsinitramfs: be more defensive against cmdline options * [2ff4ba2] scripts/functions: fix usage of test for script execution * [74f71c9] scripts/functions: fix another sh -n usage and fix typo * [91f5947] hook-functions: install virtio_pci module if /sys/bus/virtio is present and using modules=dep (Closes: #585992) - thanks to Vincent Danjean * [d25f610] slightly improve manpage lsinitramfs.8 * Provide maintainer-notes.html, being "Maintainer documentation for initramfs-tools" ([7fc1ee5] [afafea4] [e506ee7] [d53a839] [6af23c2]) -- Michael Prokop Fri, 18 Jun 2010 12:28:04 +0200 initramfs-tools (0.96.1ubuntu4) maverick; urgency=low * Only make the extra commands conditional on dh_listpackages, not the override_dh_install target as a whole, as dh gets confused and avoids calling dh_install at all when we're only building binary-arch. -- Steve Langasek Wed, 16 Jun 2010 20:35:31 +0000 initramfs-tools (0.96.1ubuntu3) maverick; urgency=low * Revert change from 0.96.1ubuntu2; instead, only override dh_install if we're building the architecture-independent package. -- Colin Watson Wed, 16 Jun 2010 16:13:07 +0100 initramfs-tools (0.96.1ubuntu2) maverick; urgency=low * Make sure /usr/share/initramfs-tools/scripts/panic/ exists before trying to copy into it. -- Colin Watson Wed, 16 Jun 2010 15:15:17 +0100 initramfs-tools (0.96.1ubuntu1) maverick; urgency=low * Resynchronise with Debian: - Fixes redboot partition handling (LP: #319730). - Don't hardcode incorrect elilo path (LP: #396000). Remaining changes: - Use busybox-initramfs for Depends, and set BUSYBOXDIR to match. - Mount /dev with the default tmpfs size rather than sourcing udev.conf. - Set takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for Wubi installs. - Add vfat support to the initramfs. - Reduce timeout to 30 seconds; corner cases (giant disk arrays, clusters) will need to provide their own rootdelay= boot arg. - Add 2>&1 to the run-init line. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or blkid cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Allow for alternative PREREQS to be specified using | as the separator. - Support loading compcache from the initramfs. - Remove klibc utilities if busybox is in use. - Change to tty1 on failure. - Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. - Create /dev/mem and /dev/zero if video=uvesafb. - Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. - Replace all instances of vol_id with blkid, and depend on util-linux. - Use gzip from busybox instead of klibc. Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have it. - Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading. - update-initramfs: check whether kernel-img.conf exists and postinst_hook is set before calling flash-kernel. - Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. - Restore the framebuffer hook and script, copying KMS and other framebuffer drivers into the initramfs, but make them optional; you need to set FRAMEBUFFER=y for these to be included. - Silence /bin/resume output when trying to resume. - Depend on a sufficient version of udev to load fbcon. - Conflict with older versions of usplash. - Don't load keymaps unless we're loading a framebuffer; but set the keymap before giving a root shell. - Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. Use it while mounting local root filesystems and while resuming. - Add hwaddr= alias for BOOTIF= for compatibility. - Allow specifying multiple break points using a comma delimiter. - Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. - Call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. - Change to ${DESTDIR} before running find to filter out looping or broken symlinks, to avoid tickling a find bug. - Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. * Drop artificial dependency on libc 2.11, which worked around a libapt bug on upgrade to lucid. * Drop lpia support. * Drop hooks/keymap and associated code again; console-setup takes care of this in Ubuntu. * Make /usr/share/initramfs-tools/scripts/panic/keymap executable. * Make hooks/busybox declare hooks/klibc as a prerequisite, so that the former can remove symlinks installed by the latter. * Make the dependency on initramfs-tools-bin binNMU-safe. -- Colin Watson Wed, 16 Jun 2010 14:44:15 +0100 initramfs-tools (0.96.1) unstable; urgency=low * hook-functions: Make sure copy_exec hook function does not exit with a non-zero return value in non-verbose mode. [Closes: #584520] * docs/framebuffer: Document mode vs. mode_option option in framebuffer example script. [Closes: #439846] * hook-functions: make device name handling for /proc/mdstat more flexible for MODULES=dep. [Closes: #549680, #514756] * mkinitramfs / scripts/functions + initramfs-tools.8: Support dashes inside scripts names. [Closes: #566056] * hook-functions: handle ubifs in dep_add_modules() and return since ubifs root is a char device, (see issue #582858). * mkinitramfs: warn if TMPDIR is mounted noexec + fall back to not cache run scripts then. [Closes: #576678] * Add myself to uploaders. -- Michael Prokop Tue, 08 Jun 2010 15:59:08 +0200 initramfs-tools (0.95.1) unstable; urgency=low [ Michael Prokop ] * NMU as requested by maintainer. * update-initramfs: fix unbound variables. [Closes: #583695] Based on patch by Jonathan Nieder. [ Jonathan Nieder ] * update-initramfs: use $* instead of $@. -- Michael Prokop Sun, 30 May 2010 22:09:15 +0200 initramfs-tools (0.95) unstable; urgency=low [ maximilian attems ] * update TODO list. * hook-functions: refactor copy_exec. * mkinitramfs: check only once for existing ldd. * mkinitramfs: Use eventual TMPDIR definition. * mkinitramfs: guard against empty EXTRA_CONF. * update-initramfs: Use nounset. * mkinitramfs: Fix several unbound variables. * mkinitramfs: On verbose indicate what we rm. * bug script: include sizes of generated initramfs. * debian/script: add generated resume param to bug. * hook-functions: manual_add_modules simplify. * hook-functions: copy_modules_dir() small simplifications. * mkinitramfs.8: Fix wrong sourcing in boot script. (Closes: #545728) * initramfs-tools.8: Mention /scritps/functions. * initramfs-tools.8: cryptopts param gone. * initramfs-tools.8: document BOOTIF variable. * configure_networking(): work with empty DEVICE string. (Closes: #566295, #575766) * hook-functions: add hid-apple. (Closes: #577253) * Revert "mkinitramfs: only copy modprobe conf files". (Closes: #577981) * initramfs-tools: change license to GPL. * hook-functions: re-add hid-microsoft. (Closes: #577253) * initramfs-tools: drop outdated breaks. * debian/copyright: add boilerplate to keep lintian happy. * hook-functions: Fix copy_modules_dir(). [ Axel Beckert ] * mkinitramfs.8: Add information about $TMPDIR environment variable. [ bert schulze ] * mkinitramfs: add LZO support. * mkinitramfs: use -9 for lzop. [ Vagrant Cascadian ] * configure_networking: pxelinux BOOTIF fixes. * init: add BOOTIF bootarg. [ Michael Prokop ] * Support booting from USB 3 xHCI-based controllers. [ Claus Herwig ] * mkinitramfs: fix MODULES=dep on mylex raid devices (DAC960). (Closes: #579702) -- maximilian attems Fri, 28 May 2010 17:22:56 -0700 initramfs-tools (0.94.4) unstable; urgency=low * init: fix hardcoded resume handling. (Closes: #576700) -- maximilian attems Thu, 08 Apr 2010 06:02:28 +0200 initramfs-tools (0.94.3) unstable; urgency=low * debian/control: Add Breaks against experimental findutils. (closes: #576677) -- maximilian attems Thu, 08 Apr 2010 03:50:28 +0200 initramfs-tools (0.94.2) unstable; urgency=low * debian/control: amend Breaks for exp mdadm. -- maximilian attems Tue, 06 Apr 2010 23:50:06 +0200 initramfs-tools (0.94.1) unstable; urgency=low * debian/control: Add a breaks mdadm. * debian/control: Fix Breaks version comparison. -- maximilian attems Tue, 06 Apr 2010 16:18:25 +0200 initramfs-tools (0.94) unstable; urgency=low * The "Litte Bang" release [ maximilian attems ] * Nuke kernelextras hooks. * Create a klibc hook script. * Redefinde MODULES=most to not carry any fb driver per default. * Nuke framebuffer boot script. * Revert "hook-functions: Add hid_* modules." * Move busybox addition to a hook script. * mkinitramfs fix comment. * hook-functions: Fix mounted /sys check for openvz container. * initramfs-tools.8: fix boot example script to execute. scripts/functions. (closes: #545728) * Fix out-of-date-standards-version. * /etc/kernel hook script support for make deb-pkg generated linux-images and kernel-package. (closes: #523735, #561289) * update-initramfs: allow -t takeover on delete. * /etc/kernel/postrm.d/i-t: use now takeover on delete. (closes: #524534, #547365, #559619) * Nuke useless unused dir. * kernel hook scripts: Fix typo, add comments. * hook-funcitions: Only warn about missing firmware if /proc/modules exists. (closes: #560266, #575154) * mkinitramfs: Be opportunistic when calling modprobe thus showing errors. (closes: #554873) * copy_exec: Check if ldd is around. * scripts/local: Use blkid as backup fstype detection. (closes: #568527) * mkinitramfs: only copy modprobe conf files. (closes: #506533) * blacklist earlier at init-top stage. * scripts/local: fix blkid invocation. * init: export and unset BOOTIF. * init: rexport resume to reallow it's hardcoded usage. (closes: #572858) * update-initramfs: -d delete .bak file. (closes: #559535) * control: bump standards version without changes. * control: Clean up Uploaders field. * switch from cdbs to debhelper 7. * update-initramfs: Stop second guessing lilo usage. (closes: #574553) * mkinitramfs: allow to build initramfs for unmodular linux images. (closes: #415474, #433708) * initramfs.conf.5: document UMASK variable for sensitive initramfs. (closes: #536195) * update-initramfs: only run elilo if configured. (closes: #534201) * update-initramfs: fix previous elilo commit. * MODULES=DEP Use driver/module syfs attribute. (closes: #567189) * panic: quote variable. * MODULES=DEP: Check rootfs on mkinitramfs. (closes: #519800) * Use ata_generic driver on all_generic_ide bootarg * scripts/functions: add get_fstype() from scripts/local. (closes: #487409) * mkinitramfs.8: update date. * Keep acpi modules in initramfs so that udev can load them early. * mkinitramfs: no longer copy depmod. * init: Silence "Loading essential drivers..." on quiet boot. * hook-functions: Add btrfs to base modules. * init: export BOOT for casper and friends. * hooks/klibc: Keep gzip in initramfs. * modernize docs to todays standards. * examples: shipp old framebuffer boot script. * initramfs.conf.5, update-initramfs.conf.5: Add FILES section. (closes: #565386) * mkinitramfs: be silent if no modules.map was generated in first place. * debian/control: Add a breaks cryptsetup. [ Tormod Volden ] * blacklist boot hook write to /etc/modprobe.d/initramfs.conf. (closes: #541864) [ Michael Prokop ] * Fix path to nfsroot.txt in documentation. * hook-functions: Avoid firmware copy error. (closes: #570678) [ Joey Hess ] * scripts/local: avoid mount -t unknown. (closes: #567065) [ Avi Rozen ] * mkinitramfs: add all usb storage devices. (closes: #543568) [ Ferenc Wagner ] * initramfs-tools: make the panic argument available in the rescue shell. (closes: #569033) [ Maximilian Gass ] * mkinitramfs: KEYMAP option fails to work due to missing keymap. (closes: #565416) [ Vagrant Cascadian ] * configure_networking: support BOOTIF variable set by pxelinux. (closes: #535008) [ Ben Hutchings ] * copy_modules_dir: Take a list of exclusions after the base directory. * auto_add_modules: Copy all modules from net, excluding some subdirectories. [ Scott James Remnant ] * init: Mount devtmpfs on /dev. * mkinitramfs: Call depmod before packing the initramfs. (closes: #465760, #562561) * init: load the netconsole module with netconsole bootarg * init: mount /dev/pts as well as /dev. [ Ben Collins ] * update-initramfs: Default to not keep .bak backups. [ Piotr Lewandowski ] * update-initramfs breaks if /etc/mtab is a symlink to /proc/mounts. (closes: #525606) [ Martin Michlmayr ] * MODULES=dep fix boot with MMC. (closes: #548711) [ Nikolaus Schulz ] * hook-functions: let dep_add_modules() recurse into lvm slave devices. (closes: 573761) [ Anna Jonna Armannsdottir ] * configure_networking: Try repeatedly ipconfig with increasing timeout. [ Colin Watson ] * mkinitramfs: Filter out looping or broken symlinks from the initramfs. (closes: #575157) * mkinitramfs: set initramfs root to 755. [ Bert Schulze ] * initramfs-tools: support different compression tools in mkinitramfs. (closes: #533903) * mkinitramfs: -c compression support / commandline override. (closes: #576429) -- maximilian attems Mon, 05 Apr 2010 05:25:48 +0200 initramfs-tools (0.93.4) unstable; urgency=medium [ Aaron M. Ucko ] * scripts/init-top/framebuffer: i915 needs intel-agp too. (closes: #533258) [ maximilian attems ] * preinst: Don't hardcode vol_id cmd. * initramfs-tools.8: Convert hyphen to minus sign. * control: bump versioned dep on debhelper. * control: bump standards version without changes. * hook-functions: Fix loading of entries without newline in /etc/initramfs-tools/modules. (closes: #532745) * MODULES=most: Add virtio_net to initramfs. (closes: #533894) -- maximilian attems Wed, 29 Jul 2009 14:55:04 +0200 initramfs-tools (0.93.3) unstable; urgency=low [ maximilian attems ] * cleanup LABEL handling code. * update-initramfs: Use exit code of command -v too. * hook-functions: Add i915 module for kms. * update-initramfs: Pass version to flash-kernel. (closes: #523711) * update-initramfs: Don't hardcode path for lilo or elilo. (closes: #524928) * hook-functions: MODULES=dep error out if sysfs not mounted on /sys. (closes: #524179) * debian/control: No longer mention EVMS in long description. * hook-functions: MODULES=most fix old typo s/smc911x/smc91x/. (closes: #528094) * mkinitramfs: Invoke dpkg --print-architecture. (closes: #529222) [ Loic Minier ] * copy_exec: also avoid picking sse2, neon, and vfp hwcaps libs. -- maximilian attems Tue, 21 Apr 2009 15:05:40 +0200 initramfs-tools (0.93.2) unstable; urgency=low [ François Delawarde ] * hook-functions: MODULES=dep fix for luks over cciss devices. (closes: #517072, #522030) [ maximilian attems ] * hook-functions: stricter match on loaded module for firmware warning. * hook-functions: Add first firmware from $(uname -r) versioned directories. (closes: #521370) * hook-functions: MODULES=most add all fb modules per default. * update-initramfs: Cleanup run_bootloader() * update-initramfs: mbr_check() use /boot/grub/grub.cfg for grub2 search. (closes: #427509) * update-initramfs: Run update on highest version instead of /initrd.img link. (closes: #493863) * hook-functions: MODULES=most fb add all available agp modules. * update-initramfs: Fix error message on wrong -k version argument. * hooks/thermal: Prevent inclusion of windfarm modules on PS3. * mkinitramfs: Allow dots in boot and script filenames. [ Maik Zumstrull ] * init-top/framebuffer: Load intel-agp for intelfb. (closes: #416063, #455876) -- maximilian attems Thu, 02 Apr 2009 12:44:33 +0200 initramfs-tools (0.93.1) unstable; urgency=low [ maximilian attems ] * init: export ip root param for configure_networking(). (closes: #516746) * initramfs-tools.8: Document exported IP kernel parameter. * initramfs-tools.preinst: Nuke initrd-tools related migration path. * MODULES=dep: ide-disk got renamed to ide-gd_mod since 2.6.28. * mkinitramfs: usage() fix conffile name. * update copyright year of my contributions. * control: conform to latest policy without changes. * hook-functions: reword MODULES=dep error message. * hook-functions: MODULES=dep fix for mmc root. (closes: #520198) * debian/compat: Set debhelper compatibility version 5. [ Matt Kraai ] * mkinitramfs-kpkg misspells "deprecation" as "depreciation". (closes: #517344) [ Michael Vogt ] * update-initramfs: set_linked_version() check if the links point to an existing initrd.img. [ Scott James Remnant ] * mkinitramfs: include the modules.order file. [ Ben Collins ] * init-top/framebuffer: ignore blacklist for forced vga= usage. -- maximilian attems Mon, 23 Mar 2009 07:55:16 +0100 initramfs-tools (0.93) unstable; urgency=low Release "Fischia il vento e infuria la bufera" [ maximilian attems ] * manpages: Set Linux as necessary OS. * initramfs-tools.8: Fix path of debug log - now kept after boot. (closes: #488804) * mkinitramfs: Use cp with correct DESTDIR instead of copy_exec for configs. Fixes relative pathes for -d option. (closes: #472409) * initramfs-tools.8: Document default 180s rootdelay. * update-initramfs: Fix run_bootloader() to check for grub2. (closes: #511514) * control: Add ${misc:Depends} depends. * nuke old lvm hook scripts. * mkinitramfs-kpkg: deprecate it's usage. * hook-functions: just ship old iee1394 if around. * mkinitramfs: Post-Lenny cleanup. * udevhelper: nuke as need for partial upgrades between etch/lenny. * mkinitramfs: Fix new pipe construct to really work inside "${DESTDIR}". * thermal boot script: Don't load thermal+fan on acpi=off. (closes: #514997) * MODULES=dep fix for minor partitions > 9. (closes: #513958) * initramfs-tools.8: Document mkinitramfs and init env variables. (closes: #512453) * init: Fix boot with LABEL containting one or several '/'. Thanks to Andres Salomon for testing. (closes: #489008) * scripts/local-premount/resume: Fix resume with LABEL containing '/'. [ e2xbegqsdyt21hfc ] * update-initramfs.8: mentions the specific conf file. [ Kel Modderman ] * init: variable `break' unset before `maybe_break init' is evaluated. (closes: #509637) [ Kees Cook ] * minitramfs: find/cpio exit codes ignored while building initramfs. (closes: #514938) * mkinitramfs: Do not pass exit code through on pipe failure. [ Luke Yelavich ] * hook-functions: Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. (closes: #515866) [ Andres Salomon ] * allow root=mtd0 to be used; skip root checks if ROOT doesn't start with /dev. (closes: #497133) * initramfs-tools: Readd support for linux-2.6 make deb-pkg target. (closes: #504551) [ Ian Campbell ] * MODULES=dep fix for Xen virtual block devices. -- maximilian attems Wed, 18 Feb 2009 19:10:23 +0100 initramfs-tools (0.92o) unstable; urgency=high * configure_networking: Raise ipconfig timeout to 180 seconds. Thanks Norbert Tretkowski for report. (closes: #511085) -- maximilian attems Wed, 07 Jan 2009 15:16:14 +0100 initramfs-tools (0.92n) unstable; urgency=high [ Eugene Paskevich ] * hook-functions: Fix MODULES=dep for lvm LABEL fstab notation. (closes: #508906) [ maximilian attems ] * all_generic_ide: Also parse boolean bootoption. (closes: #507805) * initramfs-tools.8: Document where to look up NFSOPTS. (closes: #502927) * update-initramfs.8: List -d and mark the non-optional as such. [ S. Sakar ] * hook-functions: MODULES=dep fix encrypted loop device. (closes: #499666) -- maximilian attems Fri, 19 Dec 2008 14:03:13 +0100 initramfs-tools (0.92m) unstable; urgency=medium [ Colin Watson ] * scripts/functions: Call ipconfig with a one-minute timeout. * Make debug option write to /dev/.initramfs/initramfs.debug, so that it can be retrieved after boot. [ Julien Danjou ] * scripts/functions: Wrong check for udevadm in functions. (closes: #507059) [ maximilian attems ] * scripts/functions: fix not set break variable. (closes: #502058) * MODULES=dep fix for ida devices. * hook-functions: alphebetize net drivers, fix typhoon typo. * Add atl1e, cxgb, ixgb, ixgbe, mlx4_core, netxen_nic, sfc, tehuti to net module list. (closes: #503216) * nuke 0.92k goof clean up. * postrm: set -e flag. * Revert "framebuffer: Let udev create fb devices." * scripts/functions: comment fix path to moved linux-2.6 Documentation. * init: Don't leak initramfs-tools exported variables. (closes: #426465, #505440) [ dann frazier ] * Fix MODULES=dep for cciss devices. (closes: #507619) [ Michal Pokrywka ] * framebuffer: Add support for uvesafb. (closes: #502056) [ Andres Salomon ] * fix redboot partition support. (closes: #504555) -- maximilian attems Tue, 16 Dec 2008 16:01:44 +0100 initramfs-tools (0.92l) unstable; urgency=high * Revert "initramfs-tools: Add support for linux-2.6 make deb-pkg target" (closes: #499270) thanks Vincent Danjean . -- maximilian attems Wed, 17 Sep 2008 15:38:05 +0200 initramfs-tools (0.92k) unstable; urgency=high [ Martin Michlmayr ] * update initramfs.conf according to latest Debian Installer. * update-initramfs: don't run glantank-update-kernel. [ maximilian attems ] * auto_add_modules: add dasd_diag_mod to dasd section. * initramfs-tools: Add support for linux-2.6 make deb-pkg target. -- maximilian attems Tue, 16 Sep 2008 14:55:04 +0200 initramfs-tools (0.92j) unstable; urgency=high [ Gerfried Fuchs ] * initramfs-tools.8: Nuke useless bold spaces. * initramfs-tools.8: Fix manpage-has-errors-from-man. [ maximilian attems ] * Readd zfcp to auto_add_modules. (closes: #498698) * Add dasd_diag_mod to auto_add_modules block section Thanks Bastian Blank . [ Martin Michlmayr ] * initramfs.conf: Mention possible value overriding by d-i for example. (closes: #498712) -- maximilian attems Sat, 13 Sep 2008 12:12:02 +0200 initramfs-tools (0.92i) unstable; urgency=high * MODULES=dep fix for root lvm on md. (closes: #498237) Thanks Rod Whitby for report and test. -- maximilian attems Mon, 08 Sep 2008 16:13:24 +0200 initramfs-tools (0.92g) unstable; urgency=high [ maximilian attems ] * wait_for_udev: s/udevsettle/udevadm/ for upgrades after Lenny. * auto_add_modules: Add ext4 and ext4dev. (closes: #494922) [ Andres Salomon ] * Fix parse_numeric() to ignore non hex root string prefixes aka root=mtd0 on OLPC. see #497133 -- maximilian attems Tue, 02 Sep 2008 17:50:32 +0200 initramfs-tools (0.92f) unstable; urgency=medium [ maximilian attems ] * mkinitramfs: only lvm2 initramfs has busybox dep. (closes: #490875) * mkinitramfs: Fix usage and man outfile arg is not optional. (closes: #493238) * preinst fix vol_id path. (closes: #494433) * update-initramfs: run_bootloader() invoke flash-kernel and glantank- update-kernel in order to have latest initramfs flashed on triggered update. Thanks to Joey Hess . * debian/control: Newer standards version without changes. [ Chris Lamb ] * make log_begin_msg not emit trailing newline (closes: #494257) [ Martin Michlmayr ] * MODULES=dep boot fix for Orion. (closes: #494027) -- maximilian attems Tue, 12 Aug 2008 11:09:11 +0200 initramfs-tools (0.92e) unstable; urgency=medium * udevhelper hook: drop ide.agent. -- maximilian attems Mon, 07 Jul 2008 13:52:54 +0200 initramfs-tools (0.92d) unstable; urgency=low * Ubuntu merge - More meaningful text for no root device panic from Ubuntu. - Add virtio_pci, udf for MODULES=most root device support. - usplash pulsates: drop code to increment a progress bar after each message. - initramfs-tools.preinst: Try to use UUID for resume device. - add boot script loading ide-generic on all_generic_ide cmdline. Thanks Frans Pop for report. (closes: #485786) * init: add possible mountroot break (closes: #488963) * initramfs-tools.8: document UUID usage for root and all_generic_ide. (closes: #489186) * debian/initramfs-tools.preinst: try with different vol_id pathes. -- maximilian attems Sat, 05 Jul 2008 02:36:10 +0200 initramfs-tools (0.92c) unstable; urgency=low [ maximilian attems ] * doc: fix date string of manual pages. * MODULES=most add mmc host and card drivers for OLPC. (closes: #483431) * update-initramfs.conf.5: document backup_initramfs variable. (closes: #475430) * initramfs-tools.8: Document "break" and "panic" behaviour. (closes: #481196) * wait_for_udev(): simplify, no need for logging. [ martin f. krafft ] * Wait for udevsettle after -top scripts ran * init: Remove extra ellipses -- maximilian attems Sat, 05 Jul 2008 00:31:06 +0200 initramfs-tools (0.92bubuntu78) lucid; urgency=low * hooks/compcache: Escape $-expansions inside < Mon, 26 Apr 2010 16:15:57 +0100 initramfs-tools (0.92bubuntu77) lucid; urgency=low * Add a new 'fixrtc' script that tries to set the system clock forward based on the last mount time of the root disk; without this kludge, systems without a working RTC will end up in a perpetual reboot loop. Thanks to Dave Martin for the patch. LP: #563618. -- Steve Langasek Fri, 23 Apr 2010 14:55:24 -0700 initramfs-tools (0.92bubuntu76) lucid; urgency=low * hooks/compcache: add option to disable usage of compcache completely on the kernel cmdline using the nocompcache option -- Oliver Grawert Thu, 22 Apr 2010 14:53:05 +0200 initramfs-tools (0.92bubuntu75) lucid; urgency=low * When specifying a network interface by MAC address, set DEVICE to (e.g.) eth0 rather than /sys/class/net/eth0 (LP: #546964). -- Colin Watson Wed, 21 Apr 2010 12:40:42 +0100 initramfs-tools (0.92bubuntu74) lucid; urgency=low * debian/control, debian/rules: - force libc6 dependency to >= 2.11 (and libc6.1 on ia64, the libc6 has a different packages name on this architecture) to workaround a bug in libapt when it orders the install for essential packages (LP: #559582) This can be removed after lucid -- Michael Vogt Fri, 16 Apr 2010 13:13:50 +0200 initramfs-tools (0.92bubuntu73) lucid; urgency=low * Change to ${DESTDIR} before running find to filter out looping or broken symlinks, to avoid tickling a find bug. -- Colin Watson Wed, 14 Apr 2010 23:33:22 +0100 initramfs-tools (0.92bubuntu72) lucid; urgency=low * make sure we can use mmc cards for / and add a proper sysfs handler, (mmc always uses numbering in the device name like mmcblk[0-9]p[0-n], make sure hook-functions only cuts off the partition but not the device number) -- Oliver Grawert Wed, 14 Apr 2010 11:40:30 +0200 initramfs-tools (0.92bubuntu71) lucid; urgency=low * init: - mount /dev/pts as well as /dev so we can redirect the console early. - load the netconsole module when netconsole=* placed on the kernel command-line. -- Scott James Remnant Fri, 26 Mar 2010 14:45:26 +0000 initramfs-tools (0.92bubuntu70) lucid; urgency=low * Filter out looping or broken symlinks from the initramfs, since they cause cpio to explode (LP: #540686). -- Colin Watson Fri, 26 Mar 2010 13:08:05 +0000 initramfs-tools (0.92bubuntu69) lucid; urgency=low * scripts/init-top/blacklist: move vga16fb blacklisting before the bail-out logic. * scripts/init-top/framebuffer: create "fbmode" argument to force allow foring a mode via fb /sys interfaces, for framebuffers that do not correctly handle setting mode via module options. -- Kees Cook Sat, 20 Mar 2010 13:12:25 -0700 initramfs-tools (0.92bubuntu68) lucid; urgency=low * Backport from Debian: - hook-functions: Cope with partitions over 9 (LP: #539577). -- Colin Watson Fri, 19 Mar 2010 18:57:43 +0000 initramfs-tools (0.92bubuntu67) lucid; urgency=low * debian/control: - make the Breaks: upslash (<< 0.5.50) a Conflicts to help the apt resolver on hardy to lucid upgrades -- Michael Vogt Fri, 05 Mar 2010 13:25:29 +0100 initramfs-tools (0.92bubuntu66) lucid; urgency=low * scripts/local-premount/resume: wait-for-root will handle both UUID= and /dev/disk/by-uuid, but /bin/resume from klibc will only handle the latter, so revert the changes from 0.92bubuntu59 that dropped our fix-up of device name. LP: #499940. * scripts/local-premount/resume: also recognize 'swsuspend' as a valid fs type for a hibernation partition, since this is what udev returns for the in-kernel hibernate/resume handling. Thanks to Peter Clifton for noticing this! * scripts/local-premount/resume: call 'plymouth message' before resuming, to notify the user of the reason for the delay if the plymouth theme supports it. -- Steve Langasek Mon, 22 Feb 2010 00:20:22 -0800 initramfs-tools (0.92bubuntu65) lucid; urgency=low * scripts/init-premount/blacklist: Move to init-top so it has a chance of running before udev. * scripts/init-top/blacklist: Automatically blacklist vga16fb when vga= or video= specified on kernel command-line. -- Scott James Remnant Wed, 17 Feb 2010 12:35:22 +0000 initramfs-tools (0.92bubuntu64) lucid; urgency=low * Allow specifying multiple break points using a comma delimiter. -- Evan Dandrea Wed, 10 Feb 2010 11:18:26 +0000 initramfs-tools (0.92bubuntu63) lucid; urgency=low * init, scripts/functions: Add support for specifying a network interface by MAC address, using hwaddr= on the command line or HWADDR in an initramfs configuration file (LP: #473036). -- Colin Watson Fri, 05 Feb 2010 11:49:34 -0800 initramfs-tools (0.92bubuntu62) lucid; urgency=low * src/wait-for-root.c: - device records we obtain from udev may not have a device node name yet, check to avoid strcmp between NULL and our path. LP: #499422. - device records from the queue may not exist at all, check to avoid calling udev_device_unref on NULL (which should be safe anyway). - eliminate a race condition; by checking the filesystem before the queue, there was a small chance that udev could finish processing between our calls -- Scott James Remnant Tue, 22 Dec 2009 19:30:01 +0000 initramfs-tools (0.92bubuntu61) lucid; urgency=low * init: Mount devtmpfs on /dev, falling back to a tmpfs if not supported by the kernel. * src/wait-for-root.c: accept the timeout on the command-line too rather than using an environment variable. * scripts/local: Pass $ROOTDELAY or 30 * scripts/local-premount/resume: pass $RESUMEDELAY or 5 -- Scott James Remnant Mon, 21 Dec 2009 23:06:53 +0000 initramfs-tools (0.92bubuntu60) lucid; urgency=low * src/wait-for-root.c: - Fix a bug where we checked queue entries for ID_FS_TYPE too; would mean we thought a device directly named (e.g. /dev/md0) wasn't in the queue when it was, and wouldn't wait for it. - Fix another bug where we didn't clear udev_device after iterating the queue. - Rather than mucking around with sequence numbers in the queue, just wait using the monitor if we identify the device as being in the queue. -- Scott James Remnant Fri, 18 Dec 2009 14:47:30 +0000 initramfs-tools (0.92bubuntu59) lucid; urgency=low * src/wait-for-root.c: handle the case where we're given UUID= or LABEL= and the device already exists (we need to stat the /dev/disk path). * scripts/local-premount/resume: this means we can use wait-for-root for resume handling too. * mkinitramfs: drop the PAGE_SIZE conf, it's no longer needed since we rely on udev finding out it's a hibernated image through blkid. -- Scott James Remnant Fri, 18 Dec 2009 04:34:04 +0000 initramfs-tools (0.92bubuntu58) lucid; urgency=low * Add new initramfs-tools-bin package containing a binary that uses libudev to wait for udev to create the udev device, or wait for udev to finish processing if we catch it in the act, and returns the filesystem type as already probed by udev. - This avoids calls to udevadm settle, which make us wait for irrelevant modules that we don't need. - This avoids duplicate calls to blkid, which since they probe the block device directly, are expensive - This does not use fstype; which avoids issues with that and blkid returning different answers (since everything else throughout the entire system now uses blkid) * scripts/local: Rewrite to use wait-for-root rather than looping over our own shell attempts to do the same. * mkinitramfs: - include wait-for-root - mkinitramfs: Don't quote modules.*map, so we actually expand it. * hooks/thermal: - don't force load fan or thermal, they're generally built-in and if not will be loaded by udev anyway * scripts/panic/keymap: - auto-generated from the init-top keymap file, with the OPTION= removed, so keymap will always be set on panic * Remove accidentally included test initramfs. :-) -- Scott James Remnant Fri, 18 Dec 2009 03:18:28 +0000 initramfs-tools (0.92bubuntu57) lucid; urgency=low * debian/initramfs-tools.dirs: - add scripts/panic directory * scripts/functions: - if tsort is available, use it instead of custom sorting code - if a pre-cached order file is available, use that instead - run panic scripts before giving a root shell * mkinitramfs: - generate a pre-cached order file for each scripts directory in the output initramfs - call depmod before packing the initramfs, so it contains the output already * init: - drop depmod call -- Scott James Remnant Wed, 16 Dec 2009 17:47:49 +0000 initramfs-tools (0.92bubuntu56) lucid; urgency=low * scripts/init-top/keymap: We don't need to load keymaps unless we're loading the framebuffer module (and thus have a splash screen). -- Scott James Remnant Tue, 15 Dec 2009 14:57:29 +0000 initramfs-tools (0.92bubuntu55) lucid; urgency=low * hooks/framebuffer: Change the inclusion option from USPLASH to FRAMEBUFFER, in hindsight that option name wasn't very forward-thinking of me. * scripts/init-top/framebuffer: - Make conditional on new option name. - As well as waiting for fb0 to show up, we also should wait for fbcon and dri/card0 to show up as well, since we'll almost certainly want a console and direct rendering. -- Scott James Remnant Mon, 30 Nov 2009 23:45:44 +0000 initramfs-tools (0.92bubuntu54) lucid; urgency=low * hook-functions: check both /lib/firmware/$(uname -r) and /lib/firmware for the firmware that we wish to copy; in any cases where we want to suppress a firmware-using module from the initramfs, we should do that explicitly and not by accidentally failing to include the firmware. LP: #328550. * hook-functions: cherry pick fix from Debian upstream version to not warn about missing firmware for modules whose names are merely /like/ those of modules listed in /proc/modules. -- Steve Langasek Thu, 19 Nov 2009 00:47:55 -0600 initramfs-tools (0.92bubuntu53) karmic; urgency=low * Explicitly check for fb0 so we don't false-positive on the graphics subsystem having been initialised (should cure some issues with usplash using svgalib instead of KMS, and vanishing part way through). * Don't force load the vesafb driver, we never did this before, so it seems silly to do it now. -- Scott James Remnant Wed, 14 Oct 2009 04:41:37 +0100 initramfs-tools (0.92bubuntu52) karmic; urgency=low * Include all usb/storage drivers, not just usb-storage.ko LP: #419231 -- Scott James Remnant Fri, 09 Oct 2009 15:34:43 +0100 initramfs-tools (0.92bubuntu51) karmic; urgency=low * scripts/init-top/framebuffer: wait for udev to settle before loading command-line specified framebuffer driver to ensure that any needed device nodes are available. LP: #437871. -- Scott James Remnant Sat, 03 Oct 2009 07:55:35 +0100 initramfs-tools (0.92bubuntu50) karmic; urgency=low LP: #392039, #431812. * hooks/framebuffer: - rename from hooks/kernelextras, this is much more descriptive and actually matches the associated script - copy kernel-mode-setting drivers (drivers/gpu) into the initramfs - include the vesafb driver, which we previously relied on being in the special initrd directory - don't force load fbcon - don't force load things from the initrd directory * scripts/init-top/framebuffer: - add udev as a pre-requisite - remove mknods since udev will make those now - remove intel_agp and i915 code - don't unset MODPROBE_OPTIONS, just override for the modprobe call (since we want video= to override the blacklist) - if we didn't pick up a framebuffer from vga= or video=, and don't have one from udev, wait for udev to finish then if we still don't have one, load vesafb - settle after loading drivers to ensure the device is ready * debian/control: - increase dependency on udev to that which loads fbcon - add breaks on older usplash to force upgrade -- Scott James Remnant Wed, 23 Sep 2009 14:25:00 -0700 initramfs-tools (0.92bubuntu49) karmic; urgency=low * Re-add the OPTION=VAR checking to scripts/functions, since we actually do need this when calling the hooks at initramfs generation; but add a second argument to call_scripts, "optional", that we check for before doing these checks since we definitely don't want this to be conditional in the initramfs at runtime. -- Steve Langasek Tue, 22 Sep 2009 09:44:00 -0700 initramfs-tools (0.92bubuntu48) karmic; urgency=low * Don't do OPTION=VAR checking at runtime, only do it when assembling the initramfs; this spares us having to add extra config files to the initramfs to enable functionality that's already been selected. LP: #433773. -- Steve Langasek Tue, 22 Sep 2009 00:17:13 -0700 initramfs-tools (0.92bubuntu47) karmic; urgency=low * Silence output when trying to resume, since the only output is bitching that we can't resume because we didn't hibernate in the first place. LP: #432585. -- Scott James Remnant Mon, 21 Sep 2009 16:07:10 -0700 initramfs-tools (0.92bubuntu46) karmic; urgency=low FFE LP: #427356. * mkinitramfs: Allow scripts to specify OPTION=VAR, and unless VAR is set to something other than "n", the script will not be included. * scripts/functions: Likewise when running scripts (for hooks) * Make usplash-related components optional, you need to set USPLASH=y for these to be included: - hooks/kernelextras: which includes the KMS driver - scripts/init-top/framebuffer: which loads it -- Scott James Remnant Tue, 15 Sep 2009 03:30:12 +0100 initramfs-tools (0.92bubuntu45) karmic; urgency=low * Depend on busybox-initramfs (>= 1:1.13.3-1ubuntu5) to ensure that we have gzip (LP: #428282). -- Colin Watson Mon, 14 Sep 2009 10:23:40 +0100 initramfs-tools (0.92bubuntu44) karmic; urgency=low * Revert mxcfb changes of 0.92bubuntu40 and 0.92bubuntu41 as a more complete workaround was put in usplash. -- Loïc Minier Fri, 11 Sep 2009 21:46:45 +0200 initramfs-tools (0.92bubuntu43) karmic; urgency=low * Move "Loading, please wait..." message to after /proc is mounted, so that we can inspect /proc/cmdline. -- Colin Watson Fri, 04 Sep 2009 14:23:05 +0100 initramfs-tools (0.92bubuntu42) karmic; urgency=low * Don't display "Loading, please wait..." message when 'quiet' is in /proc/cmdline. -- Colin Watson Thu, 03 Sep 2009 23:31:28 +0100 initramfs-tools (0.92bubuntu41) karmic; urgency=low * fix quoting for mxcfb in scripts/init-top/framebuffer -- Oliver Grawert Sun, 30 Aug 2009 10:28:06 +0200 initramfs-tools (0.92bubuntu40) karmic; urgency=low * add a hack to scripts/init-top/framebuffer for handling the yet broken mxcfb as described in LP bug #420555, so usplash can be used on the imx51 architecture based devices -- Oliver Grawert Sat, 29 Aug 2009 11:37:27 +0200 initramfs-tools (0.92bubuntu39) karmic; urgency=low * auto_add_modules net: Load virtio_net, to make testing in kvm easier. * init: Export IPOPTS (LP: #364626). -- Colin Watson Tue, 11 Aug 2009 12:37:56 +0100 initramfs-tools (0.92bubuntu38) karmic; urgency=low * change --print-installation-architecture to --print-architecture in mkinitramfs and hook-functions to quieten down dpkg warning during update-initramfs -- Oliver Grawert Tue, 07 Jul 2009 21:33:50 +0200 initramfs-tools (0.92bubuntu37) karmic; urgency=low * update-initramfs: Fix run_bootloader() to check for grub2 patch from debian bug #511514 -- Oliver Grawert Tue, 07 Jul 2009 19:56:58 +0200 initramfs-tools (0.92bubuntu36) karmic; urgency=low * add missing colon in the regex and a filename for the grep from the next upload ... d'oh -- Oliver Grawert Tue, 07 Jul 2009 19:28:16 +0200 initramfs-tools (0.92bubuntu35) karmic; urgency=low * update-initramfs: check whether kernel-img.conf exists and postinst_hook is set before calling flash-kernel. (patch from Loic Minier to work around shortcomings described in launchpad bug 365053 (not the desired solution yet which needs to happen in debian but we need it for livecd-rootfs to work on armel)) -- Oliver Grawert Tue, 07 Jul 2009 16:49:10 +0200 initramfs-tools (0.92bubuntu34) karmic; urgency=low * Remove bnx2 from the initramfs; it needs firmware, and at this stage we only support network modules that don't need firmware loading (LP: #394783). -- Colin Watson Tue, 07 Jul 2009 11:45:58 +0100 initramfs-tools (0.92bubuntu33) karmic; urgency=low * Cope with new compcache module naming. -- Colin Watson Mon, 06 Jul 2009 14:12:07 +0100 initramfs-tools (0.92bubuntu32) karmic; urgency=low * Copy in KMS drivers (currently just i915 and the AGP drivers) if we can, so that we can load them before starting usplash. NOTE that this whole edifice is not intended to be used by default on most systems for Karmic, and that the general intent is to make the initramfs smaller rather than larger; however, we're still going to need usplash in the initramfs for some use cases (e.g. dm-crypt), so we might as well get this working now. * Fix formatting error in initramfs-tools(8). * 'set -e' in initramfs-tools.postrm. * Fix handling of resume_offset: if it's set then we need to check in a different location for the swap signature. * Remove kinit and gzip from the initramfs. The first record I can find of this Ubuntu change is in a merge from Debian, and I can't see any justification for it since neither binary is actually used by any initramfs scripts. * Remove klibc utilities if busybox is in use (patch based on Debian #338405; LP: #327106). Leave a symlink for /bin/sleep since some scripts expect that to exist. -- Colin Watson Tue, 23 Jun 2009 14:19:02 +0100 initramfs-tools (0.92bubuntu31) karmic; urgency=low * Set the permissions on the initramfs root to 755, as otherwise unionfs-fuse (which may be used via casper) can't service requests made by non-root users. -- Colin Watson Thu, 04 Jun 2009 02:58:57 +0100 initramfs-tools (0.92bubuntu30) karmic; urgency=low * Replace all instances of vol_id with blkid, and depend on util-linux -- Scott James Remnant Thu, 07 May 2009 12:52:20 +0100 initramfs-tools (0.92bubuntu29) jaunty; urgency=low * copy_exec: also avoid picking sse2, neon, and vfp hwcaps versions of libs. * Move debhelper and cdbs from -Indep to Build-Depends for clean:. -- Loic Minier Tue, 14 Apr 2009 11:11:52 +0200 initramfs-tools (0.92bubuntu28) jaunty; urgency=low * update-initramfs: copy the logic added in Debian to run flash-kernel after the initrd has been generated (if the system is supported by flash-kernel); flash-kernel is run twice, but at least the system really runs the latest initrd; LP: #358762. -- Loic Minier Sat, 11 Apr 2009 00:07:04 +0200 initramfs-tools (0.92bubuntu27) jaunty; urgency=low * Backport from Debian (LP: #347685): - init: Fix boot with LABEL containing one or several '/'. Thanks to Andres Salomon for testing. (closes: #489008) - scripts/local-premount/resume: Fix resume with LABEL containing '/'. -- Colin Watson Fri, 03 Apr 2009 02:04:34 +0100 initramfs-tools (0.92bubuntu26) jaunty; urgency=low * hooks/thermal: Do not load thermal control for macintosh if the device is a PS3. (LP: #346899) -- Arnaud Jeansen Thu, 26 Mar 2009 00:41:46 +0100 initramfs-tools (0.92bubuntu25) jaunty; urgency=low * mkinitramfs: include the modules.order file. LP: #296710. -- Scott James Remnant Fri, 13 Mar 2009 16:11:49 +0000 initramfs-tools (0.92bubuntu24) jaunty; urgency=low * update-initramfs: - when doing set_linked_version, check if the links point to a existing initrd.img -- Michael Vogt Wed, 11 Mar 2009 10:25:42 +0100 initramfs-tools (0.92bubuntu23) jaunty; urgency=low * Forgot the top-level MODPROBE_OPTIONS set. -- Scott James Remnant Mon, 09 Mar 2009 22:06:46 +0000 initramfs-tools (0.92bubuntu22) jaunty; urgency=low * Replace calls to modprobe -Q with -q. LP: #340128. -- Scott James Remnant Mon, 09 Mar 2009 21:38:45 +0000 initramfs-tools (0.92bubuntu21) jaunty; urgency=low * mkinitramfs: catch errors in find/cpio/gzip pipe (debian bug 514938): - git 63cc7b9216d69f413cd5414c96cf2c9a403e03ae - git 93654c9230d3817fa57069012a0b06ccb1df09e4 -- Kees Cook Sun, 15 Feb 2009 09:48:50 -0800 initramfs-tools (0.92bubuntu20) jaunty; urgency=low * scripts/local-premount/resume: wait for usplash drawing routines to finish by flushing usplash command buffer before starting resume. -- Kees Cook Sun, 08 Feb 2009 07:34:40 -0800 initramfs-tools (0.92bubuntu19) jaunty; urgency=low * hook-functions: Add hid_* modules, since some keyboards will not be usable at the initramfs/busybox prompt without them. -- Luke Yelavich Thu, 29 Jan 2009 07:00:07 +1100 initramfs-tools (0.92bubuntu18) jaunty; urgency=low * Add ext4 to the initramfs, in case it stops being built into the kernel. -- Colin Watson Thu, 08 Jan 2009 13:29:51 +0000 initramfs-tools (0.92bubuntu17) jaunty; urgency=low [ Mikael Gerdin ] * Create /dev/mem and /dev/zero if video=uvesafb (LP: #285970). [ Colin Watson ] * Make debug option write debug output to /dev/.initramfs/initramfs.debug rather than /tmp/initramfs.debug, so that it can be retrieved after boot. -- Colin Watson Wed, 26 Nov 2008 17:22:18 +0000 initramfs-tools (0.92bubuntu16) intrepid-proposed; urgency=low * Added atl1e to the list of NICs built into the initramfs. -LP: #292411 -- Tim Gardner Fri, 14 Nov 2008 11:40:29 -0700 initramfs-tools (0.92bubuntu15) intrepid; urgency=low [ Dan Munckton ] * Revert "framebuffer: Let udev create fb devices." udev isn't started at this point and therefore can't create framebuffer devices. This causes usplash not to run on PS3 (LP: #274860). -- Colin Watson Wed, 01 Oct 2008 16:02:37 +0100 initramfs-tools (0.92bubuntu14) intrepid; urgency=low * scripts/functions: Call ipconfig with a one-minute timeout rather than waiting forever (LP: #182940). -- Colin Watson Wed, 01 Oct 2008 14:51:59 +0100 initramfs-tools (0.92bubuntu13) intrepid; urgency=low * scripts/local-premount/resume: Fix incorrect resume message by checking for swsusp signature before assuming there's a resume about to happen -- Matt Zimmerman Tue, 16 Sep 2008 11:49:55 +0100 initramfs-tools (0.92bubuntu12) intrepid; urgency=low * scripts/functions: must chvt(1) during failure hooks, as console input might be required (eg, boot degraded raid) (LP: #268873). -- Dustin Kirkland Thu, 11 Sep 2008 16:49:17 -0400 initramfs-tools (0.92bubuntu11) intrepid; urgency=low * scripts/local-premount/resume: Display a message indicating that a resume has begun. This is non-localized text, but is better than nothing until we can display a graphical indicator. (LP: #41137) -- Matt Zimmerman Thu, 11 Sep 2008 09:26:31 +0100 initramfs-tools (0.92bubuntu10) intrepid; urgency=low * drop silly COMPCACHE_PREREQ and SKIP_COMPCACHE hacks, instead we export BOOT from init and deacivate compcache on the fly if booting in casper if we have more than 512M actual ram available. -- Oliver Grawert Thu, 14 Aug 2008 00:10:13 +0200 initramfs-tools (0.92bubuntu9) intrepid; urgency=low * Default update-initramfs.conf to not keep backups. With latest last-good-boot, we don't need to any more. TODO: LILO probably wants .bak's since it doesn't do last-good-boot stuff. Should we worry about this? -- Ben Collins Sun, 03 Aug 2008 17:34:22 -0400 initramfs-tools (0.92bubuntu8) intrepid; urgency=low * scripts/functions: Change to tty1 in the panic function to make sure the user can read any error messages displayed. (LP: #243226) -- Luke Yelavich Tue, 29 Jul 2008 16:29:16 +1000 initramfs-tools (0.92bubuntu7) intrepid; urgency=low * scripts/functions: - add_mountroot_fail_hook(): set up symlinks to hooks in tmp directory - try_failure_hooks(): new function that executes each fail hook in lexographic order, exiting successfully if a hook succeeds - panic(): remove the fail hook calling logic, now provided by try_failure_hooks() * scripts/local: - get_fstype(): FSTYPE must be initialized to "unknown" in case the fstype call does not set it - root_missing(): new function to provide the oft-called set of checks on the ROOT device - mountroot(): use root_missing(), and try the failure hooks before giving up * Fixes required for (LP: #120375), lots of help from Kees Cook, thanks! -- Dustin Kirkland Fri, 25 Jul 2008 17:34:21 -0500 initramfs-tools (0.92bubuntu6) intrepid; urgency=low * Replace /bin/mount by a symlink to busybox if busybox is available; klibc mount doesn't support displaying mount points. -- Colin Watson Wed, 16 Jul 2008 11:10:05 +0100 initramfs-tools (0.92bubuntu5) intrepid; urgency=low * Remove klibc chroot when using busybox, as the former is just wrong (chroot(); execve() rather than chroot(); chdir(); execvp()). -- Colin Watson Fri, 11 Jul 2008 12:21:21 +0100 initramfs-tools (0.92bubuntu4) intrepid; urgency=low * Add COMPCACHE_PREREQ varable (needs to be exported before running update-initramfs) to the compcache hook script, so that PREREQ can be filled by apps like casper. with that we are for example able to disable compcache dynamically if a certain amount of physical ram is present. * Add SKIP_COMPCACHE variable to init-top script (to be read from /tmp/compcache.opts which should be filled by a PREREQ script defined in COMPCACHE_PREREQ) to make it possible to let the script silently die -- Oliver Grawert Wed, 09 Jul 2008 16:17:39 +0000 initramfs-tools (0.92bubuntu3) intrepid; urgency=low * Support loading compcache from the initramfs. - conf/initramfs.conf: Add and document the COMPCACHE_SIZE setting. - initramfs.conf.5: Document the COMPCACHE_SIZE setting. - hooks/compcache: Install the compcache module and a script to initialize the cache if COMPCACHE_SIZE contains a value. - mkinitramfs: export COMPCACHE_SIZE for the hook. -- Johan Kiviniemi Wed, 09 Jul 2008 03:10:21 +0300 initramfs-tools (0.92bubuntu2) intrepid; urgency=low * Whilst looping for the root filesystem, don't just rely on the existance of the block device and whether vol_id succeeds on it, but also make sure that udev is not currently active by calling "settle" on it. This solves a race where mdadm or devmapper still has a lock on the device, but the contents are ready which will cause the mount call later to fail. -- Scott James Remnant Wed, 02 Jul 2008 16:44:53 +0100 initramfs-tools (0.92bubuntu1) intrepid; urgency=low * Merge from debian unstable, remaining changes: - Change Build-Depends to Build-Depends-Indep. - Use busybox-initramfs for Depends. - Do not source udev.conf. - Set BUSBOXDIR properly. - Keep kinit and gzip in initrd. - Use -Qb for for module loading to honor blacklists via the use of MODPROBE_OPTIONS. - all_generic_ide script. - Remove lvm local-top script (conflicts with lvm-common). - takeover=1 in update-initramfs. - Allow the mounting of a root filesystem as a loop device on top of a host filesystem, used for wubi installs. - Add vfat support to the initramfs. - Reduce timeout to 30 seconds -- corner cases (giant disk arrays, clusters) will need to provide their own rootdelay= boot arg. - Keep more meaningful text for no root device panic. - Provide a clearer error on mount failure of the Windows host filesystem. - Add 2>&1 to the run-init line. - Source /scripts/functions in resume script. - resume UUID upgrade. - Add mountroot failure support, to allow meaningful messages when no root device can be found. - Panic if either the root device doesn't exist, or vol_id cannot identify it. Allows for mountroot failure hooks for md devices to be displayed. - Ignore blacklist for forced vga= usage. - Loop for 5 seconds waiting for $suspend to show up, adjustable with the resumedelay= command-line arg. - Load virtio_pci for MODULES=most. - Usplash pulsates until the real init takes over. - Drop scripts/init-premount/thermal as force_load can do this for us during initramfs creation. - Load thermal modules on lpia. - Allow for alternative PREREQS to be specified using | as the separator. - Add udf to auto_add_modules. It was originally added to dep_add_modules, however dep_add_modules now auto-detects the modules needed for the root filesystem. * hook-functions: - Refer to /lib/firmware/${version} where version is the kernel version we are building an initramfs for. - Do not copy /lib/udev/firmware.agent to the initramfs. Ubuntu's udev has /lib/udev/firmware_helper instead, and the udev hook copies this to the initramfs for us. - Dropped the manual_add_firmware function, as initramfs-tools now checks the firmware field in the module it is copying, and copies the firmware required by that module if its available. * Drop hooks/keymap and the KEYMAP variable setting in conf/initramfs.conf as console-setup takes care of keymap loading. * hooks/udevhelper: Drop, udev already copies what it needs. * hooks/legacylvm: Drop, as it refers to binaries and directories our lvm package doesn't have. -- Luke Yelavich Mon, 30 Jun 2008 15:54:36 +1000 initramfs-tools (0.92b) unstable; urgency=low [ maximilian attems ] * update-initramfs: mbr_check() fix for /dev/md/X naming. (closes: #469312) Thanks to Axel Beckert for report. * hook-functions: MODULES=dep fix error message. [ Glennie Vignarajah ] * initramfs-tools: Fix UUID rootfs detection with 'MODULES=dep'. (closes: #483082) -- maximilian attems Fri, 30 May 2008 16:31:42 +0200 initramfs-tools (0.92a) unstable; urgency=high * ps3: Add ps3_sys_manager to MODULES=dep ps3 modules. * initramfs-tools.8: Document resume_offset bootparam. * Documentation typo fixes and additions. * init: Fix hardcoded ROOT bootcase. (closes: #478236) Thanks Kevin Price for report and Martin Michlmayr for debugging. -- maximilian attems Tue, 29 Apr 2008 21:18:55 +0200 initramfs-tools (0.92) unstable; urgency=low Release "Ogni contrada è patria del ribelle" [ maximilian attems ] * init: export ROOTFLAGS + ROOTFSTYPE. * debian/control: s/XS-Vcs/Vcs/ * mkinitramfs: Drop gzip -9 option. (closes: #470869) Thanks Tollef Fog Heen . * Ignore lintian warnings about empty directories. * framebuffer: Let udev create fb devices. * framebuffer: Leave tty devices for udev too. * manpages: fix hyphen-used-as-minus-sign * init: fix mkdir usage. * init: Set proper permissions of /dev/console mknod fallback. * scripts/function: Use mknod directly. * debian/control: Depend on latest klibc for mknod usage. * scripts/functions: fix configure_networking() for multiple interfaces. (closes: #467078) Thanks Michal Sojka . * ps3 nuke useless hardcoded initramfs script. (closes: #468113) * resume: Add support for resume_offset swap file suspend to disk. (closes: #474691) Thanks Alan Jenkins . * update-initramfs: Rename function according to reliability fix. * hook-functions: Add atl1, cxgb3, e1000e, igb, ipg, niu, sky2 to net section of initramfs modules. (closes: #463607) * hook-functions: MODULES=dep fix ps3 support. * initramfs-tools.8: Small documentation fixes. (closes: #467627) [ debian@x.ray.net ] * configure_network(): do nothing if device already configured. (closes: #465901) [ Joey Hess ] * update-initramfs: use dpkg-trigger. (closes: #447611) [ Luke Yelavich ] * update-initramfs: Initramfs generation reliability fixes. (closes: #468112) [ Fabio M. Di Nitto ] * hook-functions: Add support for sunvnet and sunvdc. -- maximilian attems Wed, 09 Apr 2008 10:42:49 +0200 initramfs-tools (0.91e) unstable; urgency=medium [ Daniel Reichelt ] * update-initramfs: fix ro-mounted /boot check (closes: #458772) -- maximilian attems Tue, 12 Feb 2008 18:23:34 +0100 initramfs-tools (0.91d) unstable; urgency=low * MODULES=dep fix for new /dev/md/X naming scheme (closes: #440694). * debian/control: Add versioned depends on findutils (closes: #450888). * Update to newer standards version without changes. * local-premount/resume: coding style fixes. -- maximilian attems Wed, 26 Dec 2007 00:53:48 +0100 initramfs-tools (0.91c) unstable; urgency=low * update-initramfs: Fix ro /boot partition check (closes: #451151) * init: Don't overwrite boot cmdline arg (closes: #453294) -- maximilian attems Wed, 28 Nov 2007 19:49:41 +0100 initramfs-tools (0.91b) unstable; urgency=low * hooks/udevhelper: Adding all /lib/udev on initramfs if missing. Due to overly strict errexit usage by udev hook functionality might be missing. This is an potential Etch Lenny upgrade issue on UUID and LABEL roots. Thanks Michael Prokop for report. (closes: 431291) -- maximilian attems Thu, 04 Oct 2007 12:00:33 +0200 initramfs-tools (0.91a) unstable; urgency=low * init: Fix resuming with hardcoded uppercase RESUME variable. Thanks Raphael Hertzog for the report. -- maximilian attems Wed, 12 Sep 2007 19:06:19 +0200 initramfs-tools (0.91) unstable; urgency=low * udev_helper: Axe the modprobe ide-generic should no longer be needed for kernel since Etch. * debian/control: Tighten dep on latest klibc for BUSYBOX=n usage. Add XS-Vcs-* fields. Mv busybox from Depends to Recommends. * mkinitramfs: Cope when no busybox is around warn on md/lvm root. * mkinitramfs: Kill kinit.shared too. * scripts/local: Quote readonly variable. (LP: #115807) * mkinitramfs, scripts/keymap: Add trailing slash on cp destination for dir. * init: Call panic for debug sh if run-init fails. * init-top/framebuffer: Check that fb minor is below 32. * init: Export noresume if set. uswsusp and kdump need it. * init: Try harder to find a valid init on rootmnt. Fixes bootfailure on bogus init bootarg too. * scripts/{functions,nfs}: Split networking code in separate function. Thanks Vagrant Cascadian for the patch. (closes: #439397) * update-initramfs: Don't check for ro /boot inside of a chroot. * debian/script: Fix syntax of MODULES=dep block. * hook-functions: Add rootfs detection for the "auto" mount output. Thanks martin f krafft for report. (closes: #441211) * init: Disable quiet on debug bootarg. Fix new init error message. Thanks Michael Prokop for the patches. * hook-functions: MODULES=dep fix I2O detection. Add sys_walk_modalias() to catch old style IDE. * mkinitramfs: Export MODULES, allows hook scripts to act accordingly. (closes: #421658) Add /usr/share/initramfs-tools/conf-hooks.d for hooks options on mkinitramfs run. Do not land in initramfs. -- maximilian attems Sun, 09 Sep 2007 12:26:16 +0200 initramfs-tools (0.90a) unstable; urgency=high * scripts/functions: simplify panic() * mkinitramfs: Kick empty dir modules. * hook-functions: Factor sys_walk_mod_add() out of dep_add_modules(). * init: Fix mount options invocation for klibc mount. * hook-functions: Add the new firewire modules. -- maximilian attems Thu, 23 Aug 2007 14:37:51 +0200 initramfs-tools (0.90) unstable; urgency=low Release "J'aim' pas le fataliste Je n'ai ni foi ni loi" [ maximilian attems ] * hook-functions: Fix xen i386 boots with optimized 2.5. (closes: 420754) Thanks Marco Nenciarini for patch. * debian/control: Bump dep on klibc-utils from etch. (closes: 435031) * scripts/functions: Implement non-zero panic bootarg. Style fix for maybe_break(). * hook-functions: dep_add_modules() fix for md, lv, luks root. (closes: #426917, #429237, #426446) * debian/scripts: Add /etc/crypttab to reportbug script. Add /sys/block list for MODULES=dep to reportbug script. * scripts/functions: Add error message on verbose mode about ignored files in boot/hooks dir. Thanks Kornilios Kourtis for the initial patch. Fixes a double set_initlist call too. Ignore empty dirs earlier too. (closes: #428729, #433459) * mkinitramfs.8: Document verbose mode. * debian/initramfs-tools.preinst: Inhibit /etc/initramfs-tools/conf.d/resume creation in chroot for debian-live and other. (closes: #433190) Thanks Kel Modderman for the patch. * update-initramfs: Improve "altered" error message. (closes: #436752) * update-initramfs, update-initramfs.conf: update_initramfs config variable is tristate. Set to 'all' to update any initramfs: $(update-initramfs -u). Allows specific admin setting. (closes: #425050) [ David Härdeman ] * hook-functions: Protect all variable with local, plus coding style fixes. -- maximilian attems Thu, 09 Aug 2007 21:30:29 +0200 initramfs-tools (0.89) unstable; urgency=low Release "L'\xE9lecteur c'est notoire N'a pas tout' sa raison" [ Joey Hess ] * mkinitramfs: Include libgcc_s.so.1 on arm since glibc always tries to load it for the SJLJ exception handling on that architecture. (closes: #426395) Thanks to Aurelien Jarno for ack and review. [ maximilian attems ] * initramfs.conf.5: Document ROOT hardcoding. * scripts/local: Use simpler fstype invocation. * initramfs-tools.8, initramfs.conf.5: Fix typos. (closes: #427837, #427838) Thanks "A. Costa" for the patch. * scripts/local: Try to warn for renamed root dev. (closes: #374611) * minitramfs: Fall back to bootable default MODULES=most if unsupported MODULES setting is passed. Thanks Henning Sprang for report. (closes: #429144) * hook-functions: Fix variable typo. Thanks Emanuele Rocca . * scripts/local: Revert change to use udev vol_id before fstype, there are too many "wrongly" formated fs out there. fstype supports less, but is more robust. -- maximilian attems Wed, 04 Jul 2007 00:28:34 +0200 initramfs-tools (0.88) unstable; urgency=low [ maximilian attems ] * debian/changelog: Fix missing colons in closes. * hook-functions: Add a proper /sys walking dep_add_modules() for a minimal initramfs on MODULES=dep. (closes: #395526) * mkinitramfs.8: Add examples section, plus improve description of the low-level tool and how it fits with update-initramfs. * init: Ignore non-numerical panic and rootdelay bootarg. * scripts/init-premount/ps3: Fix typo. (closes: #423469) * scripts/nfs: Fix when root-path includes server-ip. (closes: #387808) Thanks Vagrant Cascadian for patch. [ David Härdeman ] * init: Remove cryptopts parsing, not official bootparam. cryptsetup scripts parse /proc/cmdline themselves (even in the Etch version). * hook-functions: Change copy_exec to use the same source and destination path if only one argument is given. * hook-functions: Document how copy_exec determines the target path. * hook-functions: Add firmware loading support to manual_add_modules(). (closes: #355881) * scripts/local: Ubuntu merge - As well as waiting for the existance of the root device node, also check to see whether we have a filesystem of some kind on it. Some devices nodes (devmapper/LVM/EVMS, mdadm) will exist before they can be safely used. Patch by Scott James Remnant . Changed to support both fstype and vol_id. * hook-functions: make version check in check_minkver more robust. -- maximilian attems Sun, 27 May 2007 00:52:38 +0200 initramfs-tools (0.87b) unstable; urgency=low * scripts/init-top/framebuffer: Remove vga16fb loading on splash bootarg. Newer usplash > 0.4 no longer needs that. * hooks/legacymdadm: remove only needed for partial upgrades from sarge. * hooks/legacylvm: Source relevant functions. (closes: 419667) -- maximilian attems Tue, 17 Apr 2007 11:56:58 +0200 initramfs-tools (0.87) unstable; urgency=low [ maximilian attems ] * scripts/functions: reduce_satisfied() needs to ignore the same set as set_initlist() otherwise an script having a prereqs on a non-executable boot script may cause circular panic. (closes: 418509) * Add blacklist boot param, disabling the load of specific modules inside the initramfs. Still needs to be passed via tmpfs to the rootfs. * mkinitramfs, scripts/functions: Fix regexes to always use posix character classes. Based on a patch by Meelis Roos . (closes: 419062) [ David Härdeman ] * Add support for loading keymaps. (closes: 337663) * Move legacy code from mkinitramfs to separate hooks. * Ubuntu merge - Add PS3 module loading functionality without grep usage. * debian/copyright: Update authors info. * Bump standards version, no changes necessary. * debian/scripts: Print settings from initramfs.conf in reportbug script. -- maximilian attems Mon, 16 Apr 2007 20:21:30 +0200 initramfs-tools (0.86) unstable; urgency=low * update-initramfs: Bound the mode and version variable. (closes: 403905) * init: Set once the MODPROBE_OPTIONS environment variable and export it. Don't forget to set -b to have the modprobe.d blacklists respected. Thus remove everywhere the -q modprobe switch. Thanks Ben Collins for the suggestion. * small trailing whitespace cleanup, display full path of kernel-img.conf in bug script. * debian/control: Add busybox-initramfs as Ubuntu busybox alternative to depends. Drop the sarge busybox-cvs-static entry. * scripts/local-top/mdrun: Drop, existed for partial upgrades from sarge. * scripts/local: Improve panic message and printed order. (closes: 414640) Thanks Vincent.McIntyre@csiro.au for patch. * scripts/functions: Check if panic is set before using it. (closes: 406107) Thanks martin f krafft for report. * hook-functions: Copy all kernel/drivers/{block,ide,scsi} subdir modules instead of hardcoding the list of "supported" drivers. As consequence the initramfs might be larger, but none of those should be missed! As bonus syncs with Ubuntu. * init: Mount /sys and /proc nodev, noexec, nosuid - Ubuntu sync. * update-initramfs: If update-initramfs fails, restore the backup. Useful if a MINKVER set is not fulfilled. (LP: #101844) Thanks Soren Hansen for patch. * initramfs-tools.preinst: Test if $RESUME is nonzero, not if it exists, fixes issue of UUID resume dev. (LP: #67932) While there remove the conffile mv handling of 0.61. * scripts/functions: set_initlist() needs to add only script names with alphabetics, numerics and underscores - skip any other. Bad enough backup scripts get added, but they shouldn't lead to a panic. Also skip directories that might lay around. (closes: 398347) (LP: #76131) * initramfs-tools.8: Document valid script names. * mkinitramfs: Don't add backup scripts to initramfs. (closes: 378682) (LP: #78348) * scripts/functions: run_scripts() return immediately if passed dir does not exist. Empty dirs without boot script aren't created anymore. * debian/copyright: Update my email, add Ben Collins, update years, alphabetic authors sort + add new git tree location. * mkinitramfs: Set PATH with /sbin to allow non-root user usage. Thanks Bob Montgomery for the suggestion. (closes: 409995) -- maximilian attems Tue, 10 Apr 2007 21:45:36 +0200 initramfs-tools (0.85g) unstable; urgency=high * SECURITY scripts/functions: Set permission of created root dev in parse_numeric() to 600. This bug only affects lilo boots. Thanks Fabian Pietsch and Goswin von Brederlow for patch input. (closes: 417995) * debian/control: Change Uploaders email. -- maximilian attems Fri, 6 Apr 2007 09:19:13 +0200 initramfs-tools (0.85f) unstable; urgency=high Release "Au lieu d'aller voter Casse leur la margoulette" * update-initramfs: Grub _doesn't_ clear LILO string in mbr, but the inverse is done. Fix mbr_check() to first check for GRUB. Fixes accidental lilo call in the case that Grub is the used bootloader. (closes: 409820) Thanks Michael Prokop for bringing up the case. * initramfs.conf.5, mkinitramfs.5: Fix typos. Document version. (closes: 405157, 405190, 405194) * update-initramfs: Be more screamy about lilo error, people seem to overlook recent lilo failures. * scripts/init-top/framebuffer: Remove unused variables. * init: Export ROOTDELAY to let udev boot script handle eventual rootdelay. downgrades 401916 -- maximilian attems Wed, 7 Mar 2007 23:34:17 +0100 initramfs-tools (0.85eubuntu41) intrepid; urgency=low * Backport from Debian (required for new busybox): - init: Fix mount options invocation for klibc mount. -- Colin Watson Wed, 11 Jun 2008 18:20:44 +0100 initramfs-tools (0.85eubuntu40) intrepid; urgency=low * Add vfat support to the initramfs (LP: #236021). -- Evan Dandrea Fri, 30 May 2008 12:50:50 -0400 initramfs-tools (0.85eubuntu38) intrepid; urgency=low * scripts/local: reduce timeout to 30 seconds -- corner cases (giant disk arrays, clusters) will need to provide their own rootdelay= boot arg. Expanded the failure text to include a hint about the "rootdelay" boot argument. -- Kees Cook Wed, 28 May 2008 13:17:16 -0700 initramfs-tools (0.85eubuntu37) intrepid; urgency=low * Provide a clearer error on mount failure of the Windows host filesystem (LP: #226622) -- Agostino Russo Tue, 06 May 2008 23:55:47 +0100 initramfs-tools (0.85eubuntu36) hardy; urgency=low * Drop dependency on volumeid, it's shipped by udev again. -- Scott James Remnant Thu, 10 Apr 2008 14:00:46 +0100 initramfs-tools (0.85eubuntu35) hardy; urgency=low * hook-functions: Do not display find error messages if firmware directories cannot be found. (LP: #153743) * scripts/functions: Remove unneeded quotes. These were causing multiple mountroot fail hook entries to be run as one command. * scripts/local: Panic if the root device node cannot be found, or vol_id can't identify the volume on the device. This allows mdadm's mountroot fail hook to be reliably triggered, as the md device node exists even if the array cannot be brought up. * init: Add 2>&1 to the run-init line at the end of the file, to fix a long outstanding bug where init has no stderr. * scripts/local-premount/resume: Source /scripts/functions, thanks to Nikolaus Filus for the patch. (LP: #203429) -- Luke Yelavich Thu, 10 Apr 2008 00:48:51 +1000 initramfs-tools (0.85eubuntu34) hardy; urgency=low * Wow, somehow my fix for 129910 got removed. Re-implement. DO NOT USE -Qb for framebuffer. We need to ignore blacklist for forced vga= usage. -- Ben Collins Tue, 18 Mar 2008 11:46:44 -0400 initramfs-tools (0.85eubuntu33) hardy; urgency=low * Edit scripts/local with patch from https://bugs.edge.launchpad.net/wubi/+bug/201750 comment 1 "Cannot remount loopfiles inside of vfat" "The workaround involves mounting all loopinstallations rw to begin with" Closes LP: #201750 -- Jonathan Riddell Mon, 17 Mar 2008 14:35:20 +0000 initramfs-tools (0.85eubuntu32) hardy; urgency=low * Drop -9 to gzip call in order to save time at a very small size penalty (< 1%) -- Tollef Fog Heen Fri, 14 Mar 2008 10:41:38 +0100 initramfs-tools (0.85eubuntu31) hardy; urgency=low * debian/initramfs-tools.preinst: If /etc/mkinitramfs/initramfs.conf was not modified, do not copy it over to /etc/initramfs-tools on a dapper->hardy upgrade, since this causes an unnecessary dpkg conffile prompt. (LP: #172853) -- Martin Pitt Thu, 13 Mar 2008 19:19:59 +0100 initramfs-tools (0.85eubuntu30) hardy; urgency=low * Fix check for "ro" on /boot - LP: #197470 -- Ben Collins Tue, 11 Mar 2008 14:41:15 -0400 initramfs-tools (0.85eubuntu29) hardy; urgency=low * Do not honor blacklists for vga=/video= parsing. We should always load the fb drivers in this case (since this is a manual operation on the part of the user) LP: #129910 -- Ben Collins Tue, 11 Mar 2008 11:46:08 -0400 initramfs-tools (0.85eubuntu28) hardy; urgency=low * update-initramfs: remove failed ".new" initrd when creation is aborted. -- Kees Cook Mon, 10 Mar 2008 15:25:03 -0700 initramfs-tools (0.85eubuntu27) hardy; urgency=low * Copy the initramfs image to a backup file, in the event that the /boot filesystem doesn't support hard links. -- Luke Yelavich Fri, 07 Mar 2008 09:17:53 +1100 initramfs-tools (0.85eubuntu26) hardy; urgency=low * Loop for 5 seconds waiting for $suspend to show up. -- Soren Hansen Fri, 29 Feb 2008 15:34:35 -0500 initramfs-tools (0.85eubuntu25) hardy; urgency=low * scripts/functions: - Call all registered mountroot failure hooks, rather than stopping at one that has reported a failure. - Change the loop code that runs mountroot failure hooks, so we don't end up in an infinite loop. -- Luke Yelavich Mon, 18 Feb 2008 11:59:07 +1100 initramfs-tools (0.85eubuntu24) hardy; urgency=low * Implement the initramfs-tools part of the initramfs error handling spec * update-initramfs: - Make a hard link to the original initramfs image, rather than moving it out of the way. - Create a new initramfs image to ${initramfs}.new, to ensure we still have a functional initramfs in case of failure. The original initramfs only gets replaced when a new image is successfully created. * scripts/functions: - Added add_mountroot_fail_hook function to allow scripts in init-premount to register a hook to allow extra information to be given to the user, in the event of a non-existant root device. - The panic function now runs any registered mountroot fail hooks that were previously registered, and only does so when passed the -r argument from the calling function. * scripts/local: Call the panic function with -r to run any registered mountroot fail hooks when a root device cannot be found. -- Luke Yelavich Tue, 05 Feb 2008 13:38:51 +1100 initramfs-tools (0.85eubuntu23) hardy; urgency=low * Fix broken test in ro_boot_check (LP: #187282). It was matching ro as a subword. -- Evan Dandrea Wed, 30 Jan 2008 10:35:28 -0500 initramfs-tools (0.85eubuntu22) hardy; urgency=low * Load virtio_pci for MODULES=most. -- Soren Hansen Wed, 23 Jan 2008 19:27:18 +0100 initramfs-tools (0.85eubuntu21) hardy; urgency=low * Drop code to increment the usplash progress bar after each message, instead this will be pulsating until the real system. LP: #162397. -- Scott James Remnant Tue, 13 Nov 2007 20:41:33 +0000 initramfs-tools (0.85eubuntu20) gutsy; urgency=low * Updates for ps3 modules -- Ben Collins Thu, 04 Oct 2007 10:31:53 -0400 initramfs-tools (0.85eubuntu19) gutsy; urgency=low * Always mount loop-mount NTFS host filesystems read-write; ntfs-3g can't remount yet. -- Colin Watson Thu, 06 Sep 2007 23:36:24 +0100 initramfs-tools (0.85eubuntu18) gutsy; urgency=low * Use dpkg-trigger even in our own postinst, unless we're doing trigger processing or the running dpkg version doesn't support reflexive triggers. This reduces update-initramfs runs from two per upgrade batch to one per batch. -- Ian Jackson Fri, 24 Aug 2007 15:45:38 +0100 initramfs-tools (0.85eubuntu17) gutsy; urgency=low * Use dpkg-trigger (if available and operational) to save on calls to update-initramfs. -- Ian Jackson Thu, 16 Aug 2007 16:03:52 +0100 initramfs-tools (0.85eubuntu16) gutsy; urgency=low * Load thermal modules on lpia as well. This may need to change in the future to support hardware-specific features, but it's a start. -- Adam Conrad Tue, 31 Jul 2007 15:30:42 +1000 initramfs-tools (0.85eubuntu15) gutsy; urgency=low * Add support for loop=, loopflags=, and loopfstype= arguments, to allow the real root filesystem to be loop-mounted from a given file on the filesystem specified by root=. -- Colin Watson Mon, 30 Jul 2007 16:46:19 +0100 initramfs-tools (0.85eubuntu14) gutsy; urgency=low * Add support for sunvnet and sunvdc in hook-functions. -- Fabio M. Di Nitto Wed, 04 Jul 2007 18:59:22 +0200 initramfs-tools (0.85eubuntu13) gutsy; urgency=low * fix nfsroot handling if rootserver is specified with IP and colon in root-path (debian bug #387808) -- Oliver Grawert Wed, 04 Jul 2007 10:19:49 +0200 initramfs-tools (0.85eubuntu12) gutsy; urgency=low * Add support for alternative prerequisites, specified as e.g. "kbd|console-tools" (note the lack of spaces around the "|"). -- Colin Watson Fri, 01 Jun 2007 16:14:22 +0100 initramfs-tools (0.85eubuntu11) gutsy; urgency=low * Allow modules specified by force_load to be blacklisted. * Drop scripts/init-premount/thermal since this can be handled by using force_load now. * Make sure framebuffer modules can be blacklisted. * Drop mdrun script, since this can be handled entirely within the udev and initramfs scripts supplied by the mdadm package. -- Scott James Remnant Tue, 22 May 2007 10:42:34 +0100 initramfs-tools (0.85eubuntu10) feisty; urgency=low * As well as waiting for the existance of the root device node, also check to see whether we have a filesystem of some kind on it. Some devices nodes (devmapper/LVM/EVMS, mdadm) will exist before they can be safely used. LP: #103177. -- Scott James Remnant Fri, 13 Apr 2007 10:51:27 +0100 initramfs-tools (0.85eubuntu9) feisty; urgency=low * Add patch to restore initramfs on failures. Taken from Debian's initramfs-tools git repo (5dfd85f416a10b1c41ca7005de38b58715c04472). * While we're here, remove snd_ps3 from autoload list on PS3. Isn't in initramfs. Installer will add it to /etc/modules. -- Ben Collins Tue, 10 Apr 2007 11:05:45 -0400 initramfs-tools (0.85eubuntu8) feisty; urgency=low * Add support for the netboot variable, used by casper. LP: #96072. -- Tollef Fog Heen Fri, 30 Mar 2007 23:25:45 +0200 initramfs-tools (0.85eubuntu7) feisty; urgency=low * Use -Qb for ppc thermal modprobe's * Add snd_ps3 to ps3 module loads. Use -Qb here too. -- Ben Collins Thu, 29 Mar 2007 19:54:40 -0400 initramfs-tools (0.85eubuntu6) feisty; urgency=low * hook-functions: Add udf to dep_add_modules and auto_add_modules. -- Colin Watson Fri, 23 Mar 2007 19:47:51 +0000 initramfs-tools (0.85eubuntu5) feisty; urgency=low * Copy all of drivers/block/ to initramfs. Can't believe we didn't do this before. * Add init-premount hook to manually load modules for ps3. These modules do not have aliases or auto-load features, so have to do it by hand (ps3-system-bus). * For auto module inclusions, detect when we need to pack ps3 modules. -- Ben Collins Thu, 1 Mar 2007 16:45:48 -0500 initramfs-tools (0.85eubuntu4) feisty; urgency=low * Remove the 10MB size restriction from /dev; this doesn't make sense for Ubuntu since we use /dev for initramfs/realfs handover and for things like bootchart. -- Scott James Remnant Tue, 27 Feb 2007 15:00:54 +0000 initramfs-tools (0.85eubuntu3) feisty; urgency=low * Add aic94xx firmware hooks. -- Ben Collins Wed, 21 Feb 2007 15:34:56 -0500 initramfs-tools (0.85eubuntu2) feisty; urgency=low * Don't load vga16fb on amd64 either. usplash 0.4-36 fixes things so that we don't need it (LP: #67545). -- Colin Watson Wed, 7 Feb 2007 09:55:05 +0000 initramfs-tools (0.85eubuntu1) feisty; urgency=low * Merge from debian unstable, remaining changes: - Change Build-Depends to Build-Depends-Indep. - Use busybox-initramfs for Depends. - RESUME UUID upgrade. - add_firmware addition to hook-functions. - Use copy_modules_dir for auto module copying. - noexec,nodev,nosuid options for /sys and /proc. - Do not source udev.conf. - Set BUSBOXDIR properly. - Keep kinit and gzip in initrd. - Use -Qb for for module loading to honor blacklists. - all_generic_ide script. - Only load vga16fb on amd64 (not i386). - Remove lvm local-top script (conflicts with lvm-common). - takeover=1 in update-initramfs. - Remove udev_helper local-top script. It loads ide-generic, and we don't want that. - Closes: #76872 -- Ben Collins Tue, 2 Jan 2007 20:28:59 -0500 initramfs-tools (0.85e) unstable; urgency=high Release "Qu'ils soient rouges, bleus ou blancs Il faudrait mieux les pendre" * initramfs-tools.8: Correct copy_exec() example. (closes: 403122) Add a better dir to copy_modules_dir() example. * mkinitramfs: Revert the sed magic busybox hardlinking for size reduction. Go for functionality. The klibc binaries are better tested and superior in some cases like sleep. Fixes several boot troubles. Thanks Benjamí Villoslada for the report. (closes: 403224) Thanks Jurij Smakov for pinpointing the trouble. * hook-functions: Add all drivers/ata drivers to initramfs that exist for uname >= 2.6.19 (closes: 403309) urgency high. * scripts/init-top/framebuffer: Fix syntax by closing the brackets. Handle options of the form key:value, map kernel bootarg to module name for matroxfb. Thanks Rob Walker for the patches (closes: 403667, 403669). Use posix regexes according to review by Jurij Smakov . Also protect all variables. -- maximilian attems Wed, 20 Dec 2006 22:29:51 +0100 initramfs-tools (0.85d) unstable; urgency=high Release "Le gros ventre qu'engraisse L'suffrage universel" * update-initramfs: run_lilo() needs to show errors of lilo -t on failure and exit with failure message. Thanks David Anselmi for report. (closes: 401331) Updated according to review by Jurij Smakov . * hook-functions: Add hppa zalon scsi module. (closes: 401229) urgency high * update-initramfs: Add warning for missing initramfs on update mode without takeover arg. Restructure altered_check, don't delete sha1sum on failure. Thanks Jurij Smakov for noticing. * mkinitramfs: Reduce size of initramfs by keeping 1 busybox copy. Thanks for the patch input to Russell Coker . Thanks for the sed rework to Klaus Ita . (closes: 338405) -- maximilian attems Thu, 14 Dec 2006 16:10:06 +0100 initramfs-tools (0.85c) unstable; urgency=medium Release "Pour être heureux vraiment Faut plus d'gouvernement" * hook-funcions: Show on verbose mode the added binaries and libraries. * update-initramfs: Don't silently fail, user won't be able to reboot. Thanks Mario Aeby for his blog entry. * debian/copyright: Moved to bzr.d.o repo location. * hook-functions: Merge 0.69ubuntu22 copy_module_dir fixes, we'll use it too postetch. Fix the bashism. Thanks to Jurij Smakov * scripts/init-premount/thermal: Load blindly a bunch of thermal modules on powerpc as they are not hotpluggable. Might be ugly, but is a safe bet. Kernel plattform fix is scheduled for 2.6.20. Push with medium urgency. (closes: 401269) -- maximilian attems Sat, 2 Dec 2006 18:06:34 +0100 initramfs-tools (0.85b) unstable; urgency=medium * mkinitramfs: Test for ${outfile} before touching anything. (closes: 381677) * update-initramfs.conf, update-initramfs: Allow to disable backup strategy. While we are it fix logic of backup_booted_initramfs(). (closes: 397787) urgency medium. * scripts/init-top/framebuffer: Fix regression of /dev/fb0 creation, modprobe fb before creating device. Thanks to Otavio Salvador for patch. -- maximilian attems Tue, 14 Nov 2006 08:06:40 +0100 initramfs-tools (0.85a) unstable; urgency=high * On first time run backup_booted_initramfs() has nothing to back up. -- maximilian attems Fri, 3 Nov 2006 09:03:46 +0100 initramfs-tools (0.85) unstable; urgency=high Release "Nichts ist getan, wenn noch etwas zu tun übrig ist." * update-initramfs: Fix ro /boot check to not trigger on other mounts having a /boot string. (closes: 393906) Thanks for the patch Olli Helenius * init-top/framebuffer: Fix duplicate fbno0 device creation. Merge the 0.69ubuntu10 solution. Thanks Benjamin Leipold for the report. (closes: 393890) * update-initramfs: Fix mbr_check() for installed lilo and used grub. Thanks for the patch by Michel Casabona . Also be stricter about do_bootloader match, use negative info and add check for grub on mbr before throwing error. (closes: 394559) urgency high. * hook-functions: Add sata_sil24 to scsi modules. (closes: 395907) Thanks Vadim S. Solomi" for the patch. * update-initramfs: Fix lilo detection in mbr_check() for rootraid. Based on a patch by Michael Prokop . Suppress lilo warning messages on test run. -- maximilian attems Mon, 30 Oct 2006 10:12:58 +0100 initramfs-tools (0.84) unstable; urgency=high Release "A-t-on pris à Saint-Périne, Tous ces dictateurs impotents ?" * hook-functions: Use modprobe --ignore-install arg to put all listed modules on initramfs. Thanks Mario Izquierdo for report. (closes: 384043) * update-initramfs: If elilo is around run it on initramfs update, add zipl run. * scripts/local: Use vol_id too if around to set FSTYPE. Thanks for the patch to "Alex Owen" (closes: 380004) * hooks/thermal: Add many of the windfarm modules for powerpc boxes. * initramfs-tools.preinst: merge bits of 0.69ubuntu16. (closes: 393773) urgency high as fixes upgrade from sarge - thanks Federico Grau . * scripts/init-top/framebuffer: Fix mknod call. (closes: 393543) Thanks for the patch Kiro Zimmer . * mkinitramfs: Create modulesdir even on monolithic linux. (closes: 393688) Thanks for the patch Ian Campbell . -- maximilian attems Wed, 18 Oct 2006 11:04:50 +0200 initramfs-tools (0.83) unstable; urgency=high Release "Ois was du verzapfst is a koida Kaffee" * update-initramfs: Keep an initramfs backup while we are running. Do also keep the booted initramfs as .bak in /boot. First helps on power cut. Second is a good conservative approach and demanded feature. Thanks Thiemo Nagel for report. (closes: 387780) * init: When debug is invoked with an additional arg, write output to console. Thanks Christian Aichinger for the idea. Should ease remote debugging. * initramfs-tools.8: Document new debug= feature. * initramfs-tools.preinstall: Check for right arg. (closes: 391619) * update-initramfs: Try to guess harder if lilo might need to be run if grub is also around. On old installs we get _zero_ information from /etc/kernel.img. Parse mbr for lilo signature. (closes: 385949) Thanks to Michael Prokop for finetuning. * scripts/init-top/framebuffer: Parse video bootarg and refactor script. This add support for custom framebuffer modules. (closes: 386441) Thanks for the patch by David Härdeman . * update.conf: Allow to make "update-initramfs -u" an noop. Useful for conservative settings of a remote server. (closes: 362064) urgency high. Thanks Manoj Srivastava for the tough testing. * update-initramfs.conf.5: Document the new update_initramfs variable. * update-initramfs: Kope with stupid mv of grub to /usr/sbin. * manpages: Get a banana and mark myself as author. * update-initramfs: version_exists needs not only to check for existing sha1sum, but also initramfs. (closes: 382472) -- maximilian attems Fri, 13 Oct 2006 09:38:27 +0200 initramfs-tools (0.82) unstable; urgency=high * Merge 0.69ubuntu15, plus 0.69ubuntu14 and 0.69ubuntu11 changelog entries as not affected or already fixed. * hook-initramfs: Add qla4xxx support, thus urgency high. -- maximilian attems Thu, 5 Oct 2006 16:12:06 +0200 initramfs-tools (0.81) unstable; urgency=low Release quick and happy spin j = l + s * update-initramfs: Really check for mounted /proc on use. (closes: 388241) Thanks Alex Owen . While beeing in this business, check for mounted proc in initramfs-tools.preinst too. * hook-functions: Add new scsi drivers aic94xx and stex. Add new net drivers ehea, ep93xx_eth and qla3xxx. Thus urgency high. * update-initramfs: Use set ``--'' to change positional paramaters. Thanks Jörg Sommer . (closes: 389726) * scripts/nfs: Revert to previous handling of dhcp server passing server-ip. (closes: 387808) * debian/initramfs-tools.preinst: Fix comment typo, thanks shaulka@012.net.il for the patch. (closes: 389486) * mkinitramfs: Allow an hook script to set an paranoid umask, considered useful for shipping gpg keys inside of initramfs. Thanks Max Vozeler and Lionel Elie Mamane for the patch. (closes: 381677) -- maximilian attems Wed, 27 Sep 2006 15:56:46 +0200 initramfs-tools (0.80) unstable; urgency=high Release "O partigiano, portami via, che mi sento di morir." * update-initramfs: Test for lilo executable earlier otherwise an warning would be issued with grub installed and left over lilo config. * hook-functions: Add lasi700 to the scsi modules. (closes: 387909) Thanks Nagilum . Thus urgency high. * scripts/nfs: Fix typo in ipconfig protocol handling, fix dhcp server passing ser-ip as part of root-path, retry every second to not hammer an FAI'ed nfs initramfs network. Thanks for input and patches Vagrant Cascadian . While we are there refactor the loop. (closes: 387841, 387808, 387809) * update-initramfs: Check if /proc is mounted for ro_boot_check. -- maximilian attems Tue, 19 Sep 2006 07:56:47 +0200 initramfs-tools (0.79) unstable; urgency=high * update-initramfs: Allow create and delete to work on "all" kernelversions. Fixes bug on update to pass all the specified optional args. Thanks to Osamu Aoki for the patch. (closes: 360281) Improve it to parse args once and also highlight 'all' on usage. * update-initramfs.8: Document usage of "all" + add example section. * update-initramfs: On update check if /boot is ro, warn and exit. Thanks to Alexander Wirt to improve the awk snippet. * update-initramfs: run_lilo don't return 1 if no lilo executable is there. Thanks "Peter D. St. Onge" for the report. (closes: 386999) -- maximilian attems Mon, 11 Sep 2006 22:11:54 +0200 initramfs-tools (0.78) unstable; urgency=medium * update-initramfs: Check in call_lilo() if /sbin/lilo is executable, when /etc/lilo.conf exists (closes: 384967) - thus urgency medium. * init: Guard all dirs against creation. (closes: 385281) * debian/scripts: Add /etc/kernel-img.conf section, as update-initramfs needs to act according to it. * scripts/nfs: Fix parsing of etherboot ip options. Based on a patch by to Vagrant Cascadian . (closes: 385252) * scripts/nfs: No need to duplicate work of ntfsmount. Thanks for the patch to Vagrant Cascadian . (closes: 385226) * scripts/nfs: Add an sleep 0.1 in the retry loop to slow down retry attempts. Only log "Retrying .." after first run. Use init variable. (closes: 385624) * init: Reorder the early mknod after tmpfs mount. (closes: 385641) * initramfs.conf.5, mkinitramfs, scripts/local, scripts/local-top/mdrun, scripts/nfs, update-initramfs.8, debian/changelog: Whitespace policy. -- maximilian attems Mon, 4 Sep 2006 17:38:13 +0200 initramfs-tools (0.77b) unstable; urgency=high * mkinitramfs: Fix destination of mdrun.conf. Thanks for the report to Scott Glenn . Urgency high as broken in testing too and needed for partial mdadm upgrades. (closes: 385406) -- maximilian attems Thu, 31 Aug 2006 13:20:51 +0200 initramfs-tools (0.77) unstable; urgency=medium * mkinitramfs, scripts/local-top/mdrun: Use mdrun.conf as config file. Ship mdrun unconditionally if around, should help in recovery situations. * debian/initramfs-tools.postinst, hook-functions, mkinitramfs, scripts/local, update-initramfs: Cleanup the "-a" and "-o" bashism. * scripts/nfs: Retry to mount NFS on eventual failure. (closes: 377643) Based on a patch by Vagrant Cascadian . * init: Make sure there is an /dev and /root. Usually passed by the kernel. Also /dev/null or /dev/console might already be shipped. Based on a patch by David Härdeman . (closes: 340494) * scripts/local-top/lvm: Fix prereqs s/mdraid/mdrun, thus urgency medium. Thanks Rainer Gauweiler for the notice. -- maximilian attems Fri, 25 Aug 2006 16:55:56 +0200 initramfs-tools (0.76) unstable; urgency=medium * debian/control: Tighten klibc to 1.4.19-2 for fixed nuke. (closes: 383730) * mkinitramfs: Only hard code root when root arg got passed. * init: Parse /proc/cmdline for rootfstype, initrd-tools did it too. * init: Parse /proc/cmdline for rootdelay. * scripts/local: Use eventual rootfstype and rootdelay info. * initramfs-tools.8: Add more docs about boot args, s/2.6.15/2.6.17/. * scripts/functions: Simplify parse_numeric() by arithmetic calculation, instead of working on it's representation. Thanks to tarski. (launchpad.net/21759) Much more elegant than the 0.58 version fix. * mkinitramfs: Parse rootraid for sarge compatibility and pass the info to the initramfs if etch mdadm is not yet installed. * scripts/local-top/mdrun: Assemble the root raid first before mdrun. Thanks martin f krafft . (closes: 383908, 384063) * update-initramfs: Check if /etc/kernel-img.conf is readable, before attempting to parse also check for the right field. * init: Check for root=/dev/nfs. Parse ip kernel command line for nfsroot. Drop undocumented and not compliant nfsopts. * scripts/nfs: Add ip parsing conforming to Documentation/nfsroot.txt. Use the nfsroot bootparam in combination with eventual ip provided device or server-ip. Do minor code cleanups. Both items based on patches by Vagrant Cascadian . (closes: 380649) * Set urgency medium due to large number of serious bug fixes. -- maximilian attems Wed, 23 Aug 2006 08:17:51 +0200 initramfs-tools (0.75) unstable; urgency=high * hook-functions: Add megaraid_sas to the scsi list. Thanks Kenshi Muto . * init: Parse for "panic=" bootarg. * hook-functions: Immediately call reboot in the panic function if panic=0 to disallow any console access for secured boxes. (closes: 378455) * debian/TODO: Update to current state * update-initramfs: do_bootloader can be set mixed case or upper case. Catch the obvious Yes and YES too. * hook-functions: Really include DAC960 driver. Thanks Tim Small . (closes: 383486) 2 module fixes thus urgency high. -- maximilian attems Fri, 18 Aug 2006 15:35:09 +0200 initramfs-tools (0.74) unstable; urgency=low * scripts/local-premount/resume: Reuse klibc resume, hardcode path as uswsusp shipps too an resume binary in initramfs-tools. Thus tighten again klibc dep to 1.4.11-1. (closes: 381535) * mkinitramfs: Readd mdrun when around. * scripts/local-top/mdrun: Rename from mdraid. Use mdrun as previously, there is no guarantee that the sarge mdadm works and that the sarge mdadm.conf has any sense. * debian/control: Better package description. * scripts/local: mountroot add message what to check if root is not found in 2 straight lines to keep as much of scrolling buffer. * scripts/functions: Use set ``--'' to change positional paramaters without changing any options. This is useful for the debug bootparam on d?ash. * update-initramfs: Respect "do_bootloader = yes" from /etc/kernel-img.conf to call lilo if both lilo and grub are installed. (closes: 382013) -- maximilian attems Thu, 17 Aug 2006 16:50:51 +0200 initramfs-tools (0.73e) unstable; urgency=high * mkinitramfs: Fix if statement for conf.d. (closes: 382740) -- maximilian attems Sun, 13 Aug 2006 10:05:10 +0200 initramfs-tools (0.73d) unstable; urgency=high * scripts/local-top/mdraid: Fix path of expected mdadm config file. Thanks Daniel Dickinson for report. (closes: 382602) * mkinitramfs: Treat /usr/share/initramfs-tools/conf.d config snippets as the configuration files in /etc/initramfs-tools/conf.d. A configuration file with the same name will override the first. (closes: 381315) Thanks Vagrant Cascadian for the patch. * mkinitramfs.8: Document conf.d existence. * hooks/lvm: Really remove it, logic is in mkinitramfs. * urgency high for the mdraid bug fix, rest is trivial. -- maximilian attems Sat, 12 Aug 2006 09:43:55 +0200 initramfs-tools (0.73c) unstable; urgency=low * scripts/local-premount/resume: Revert klibc-utils resume usage until breakage cause is known. Thus downgrade klibc dep to 1.4.8-0. Thanks Steinar H. Gunderson for report. (closes: #381475) -- maximilian attems Sat, 5 Aug 2006 09:31:16 +0200 initramfs-tools (0.73b) unstable; urgency=high * Revert nfs change in 0.70: Debian busybox is build with CONFIG_NFSMOUNT=n. Reuse nfsmount from klibc. nfsroot parsing needs more care for the next release. Now at least support those users where nfs previously worked. Thanks Vagrant Cascadian for report. (closes: 380686). High urgency to get this into testing. -- maximilian attems Fri, 4 Aug 2006 09:53:46 +0200 initramfs-tools (0.73) unstable; urgency=high * debian/initramfs-tools.postrm: Don't forget to remove config file modules on purge. Thanks piuparts verification. * mkinitramfs: Add sections that deals with sarge mdadm and lvm2. Does nothing if etch package hooks are installed, will be dropped postetch as then we upgrade from mdadm and lvm2 packages with hooks. Taken from Dapper initramfs-tools-0.40ubuntu32. Adapt to add more modules and no need for mdrun. * hooks/lvm: Remove handled by mkinitramfs itself. * scripts/local-top/lvm: Add prereqs lvm2 + mdraid. Exit if lvm2 hook is present. Eases transition of lvm hooks to lvm2. * scripts/local-top/mdraid: Enable all raid devices. Add mdadm as prereqs. Only run if no mdadm hook is in initramfs. (closes: 380089) * urgency high upload to get RC fixes into testing. -- maximilian attems Sat, 29 Jul 2006 13:35:43 +0200 initramfs-tools (0.72) unstable; urgency=low * Add scripts/init-top/framebuffer, reduces ubuntu diff even more. fb is only activated with splash or vga boot param. * Upload sponsored by Petter Reinholdtsen. -- maximilian attems Tue, 25 Jul 2006 09:11:18 +0200 initramfs-tools (0.71b) unstable; urgency=low * This time caught on bzr dotfiles, removed. Thanks a lot to Frederik Schüler for review. -- maximilian attems Mon, 24 Jul 2006 15:06:04 +0200 initramfs-tools (0.71) unstable; urgency=low * initramfs.conf.5, initramfs-tools.8, mkinitramfs.8, mkinitramfs-kpkg.8, update-initramfs.8: Fix spacing in the SEE ALSO section and have this section everywhere as last. Fix linebreak in mkinitramfs.8 options. Thanks Martin Michlmayr for the notice. * scripts/functions: Use shell parameter expansion to strip known dir prefix instead of gratious basename call. * scripts/functions: On panic call open the rescue shell with -i to get dash interactive features. ash from busybox ignores the param. Thanks David Härdeman for the suggestion. * conf/initramfs.conf: Readd BUSYBOX=y section. Beware that a lot of boot scripts need busybox and the current default image still does too. * initramfs.conf: Document BUSYBOX usage. * init: Add variable quoting around resume, NORESUME parsing and checks. * hook-functions: Add myri10ge and smc911x to the net section. Add hptiop to the scsi section. * update-initramfs: Fix -v usage by not passing quoted ${OPTS} as one option. Thanks Famelis George for the patch. (closes: 379212) * mkinitramfs: Really source /usr/share/initramfs-tools/conf.d/ entries. * mkinitramfs: Check against modules.dep before invoking depmod. * hook-functions: check_minkver() only needs to call init_list(), when a dir gets passed. Clean up check_minkver() logic. * scripts/function, mkinitramfs: Add output on verbose mode. * merge 0.69ubuntu4. * scripts/local-top/lvm: Prereqs s/md/mdadm/ for the new hooks. -- maximilian attems Mon, 24 Jul 2006 09:10:53 +0200 initramfs-tools (0.70b) unstable; urgency=low * Be more careful about vi dot files, removed. Thanks Frederik Schüler for review. -- maximilian attems Wed, 19 Jul 2006 16:00:47 +0200 initramfs-tools (0.70) unstable; urgency=low * mkinitramfs: Don't include static kinit, nor gzip. They are the biggest klibc-utils binaries and we don't use them. Keep static gunzip, zcat and shared kinit for now. * Reduce diff against 0.69ubuntu3: - hook-functions: Fix kernel typo. - hooks/kernelextras: Fix comment and add vga16fb too. - init: Whitespace cleanup, add one more quiet check. - mkinitramfs: Use check_minkver instead of dpkg itself. Whitespace cleanup and add quoting. - scripts/local: Whitespace cleanup and add a comment. - scripts/nfs: Use mount with nolock instead of nfsmount. (closes: 359926) - update-initramfs: Add quoting + whitespace fix. - changelog: for noise reduction add 0.69ubuntu{1,2,3}, all 0.40ubuntu*, 0.36ubuntu1 and missing 0.29 + 0.28 entries. - initramfs-tools.install, initramfs-tools.postinst and initramfs-tools.preinst merge 0.69ubuntu3. * break.txt, debian/NEWS, debian/changelog, debian/copyright, docs/example_hook, docs/example_hook_cpiogz, docs/example_script, hooks/lvm, hooks/md, init, initramfs-tools.8, initramfs.conf.5, mkinitramfs, mkinitramfs-kpkg, mkinitramfs-kpkg.8, mkinitramfs.8, scripts/functions, scripts/local-top/udev_helper, update-initramfs, update-initramfs.8: Cleanup trailing whitespace and non tabular indents. * scripts/local-premount/resume: Use new resume bin from klibc-utils. Removes superflous stat and awk usage. * debian/control: Depend against newer klibc-utils 1.4.11-1. * hooks/md, scripts/local-top/md: Drop as mdadm > 2.5-1 features them. (closes: #367567) -- maximilian attems Wed, 19 Jul 2006 11:09:52 +0200 initramfs-tools (0.69b) unstable; urgency=high * debian/initramfs-tools.preinst: Don't depend upon shipped directories to be existing. Thanks Colin Watson for patch. Add trailing slash to copy command. (closes: 378089) * mkinitramfs: Revert the removal of kernel-package supported lonng param of 0.65. Readd that plain ugly interface. Warn users they should use ramdisk=mkinitramfs-kpkg. As kernel-package doesn't yet support update-initramfs. Thanks Frans Pop for report. * debian/bug: Rename to script so that it shows up in reportbug. Fix debian/initramfs-tools.install accordingly. * Thus high urgency upload. -- maximilian attems Fri, 14 Jul 2006 00:31:30 +0200 initramfs-tools (0.69ubuntu22) feisty; urgency=low * For copy_module_dir, actually call manual_module for each one, so deps are taken care of. -- Ben Collins Thu, 23 Nov 2006 02:10:29 -0500 initramfs-tools (0.69ubuntu20) edgy; urgency=low * Add the LSI Logic MegaRAID SAS Driver (megaraid_sas) to the SCSI module list, common on newer Dell PowerEdge servers, among others. -- Adam Conrad Wed, 25 Oct 2006 18:16:15 +1000 initramfs-tools (0.69ubuntu19) edgy; urgency=low * Check for "modules.dep" before running depmod, not "modules.depmod" which won't ever exist. This caused depmod to be run after live filesystem generation without the restricted modules available, it could also randomly cause the same to happen on upgrades depending on the order packages are configured. Ubuntu: #60938. -- Scott James Remnant Tue, 24 Oct 2006 18:51:09 +0100 initramfs-tools (0.69ubuntu18) edgy; urgency=low * Anchor regex in sed command to revert conffile edits, to avoid double-commenting RESUME= and causing a conffile prompt on upgrades (Closes: LP#66599) -- Matt Zimmerman Wed, 18 Oct 2006 04:54:45 -0700 initramfs-tools (0.69ubuntu17) edgy; urgency=low [ Tollef Fog Heen ] * Load vga16fb on amd64. [ Adam Conrad ] * ... but only when booting with a splash. -- Adam Conrad Tue, 17 Oct 2006 12:29:35 +1000 initramfs-tools (0.69ubuntu16) edgy; urgency=low * Bring in preinst fixes from Debian, including s/configure/install/ in preinst, since preinst is never called with "configure", and checking for /proc/swaps before we blindly try to read it to determine RESUME. * Do away with the bogus '-n "$2"' test in preinst, since "install" can be called without any arguments at all (and often is, on a clean setup) * On upgrades, revert the RESUME mangling that dapper's d-i did to our config file, avoiding spurious conffile prompts (launchpad.net/63693) -- Adam Conrad Mon, 16 Oct 2006 17:23:41 +1000 initramfs-tools (0.69ubuntu15) edgy; urgency=low * Add jmicron module to ide list. - Malone #63085 -- Ben Collins Wed, 4 Oct 2006 09:21:08 -0400 initramfs-tools (0.69ubuntu14) edgy; urgency=low * Remove stray "set -x" from scripts/local-premount/suspend. -- Adam Conrad Wed, 20 Sep 2006 08:35:05 +1000 initramfs-tools (0.69ubuntu11) edgy; urgency=low * since we ship /usr/share/initramfs-tools/conf.d as well as /etc/initramfs-tools/conf.d, make sure mkinitramfs also reads from both, not only from the /etc location -- Oliver Grawert Sun, 10 Sep 2006 11:50:14 +0200 initramfs-tools (0.69ubuntu10) edgy; urgency=low * Create framebuffer device nodes unconditionally -- Matthew Garrett Tue, 5 Sep 2006 17:50:53 +0100 initramfs-tools (0.69ubuntu4) edgy; urgency=low * scripts/local-premount/suspend: Check for UUID= or LABEL= on the start of $resume, and use /dev/disk/by-{uuid,label} if found. -- Scott James Remnant Fri, 21 Jul 2006 17:58:34 +0100 initramfs-tools (0.69ubuntu3) edgy; urgency=low * debian/initramfs-tools.install, debian/initramfs-tools.preinst, debian/initramfs-tools.postinst: Copy default modules file in the postinst (when it's actually available) rather than in the preinst (when it isn't). Copy it from /usr/share/initramfs-tools/ rather than from /usr/share/doc/initramfs-tools/examples/, per policy. -- Colin Watson Thu, 13 Jul 2006 10:04:26 +0100 initramfs-tools (0.69ubuntu2) edgy; urgency=low * debian/initramfs-tools.preinst: Make sure /etc/initramfs-tools and /etc/initramfs-tools/conf.d exist before trying to write to them. -- Colin Watson Thu, 13 Jul 2006 09:19:05 +0100 initramfs-tools (0.69ubuntu1) edgy; urgency=low [ Jeff Bailey ] * Merge from debian unstable. -- Jeff Bailey Wed, 12 Jul 2006 19:22:22 -0400 initramfs-tools (0.69) unstable; urgency=low * scripts/local-premount/suspend, scripts/local-premount/resume: Rename to the later as the script resumes from resume arg. * init: Parse for noresume and only export resume if it is not set. Allows boot scripts to check for it's eventual existence. Thanks David Härdeman for the suggestion. * update-initramfs: Add option "-b directory" to override BOOTDIR. Allows the initramfs to be created in another dir without awkward mkinitramfs invocation. Check that the passed arg is really a dir. (ubuntu: 37690) Thanks Colin Watson * update-initramfs.8: Document -b switch. -- maximilian attems Wed, 12 Jul 2006 16:51:49 +0200 initramfs-tools (0.68b) unstable; urgency=high * script/functions, hook-functions: Move check_minkver() to the second file as it uses dpkg and is run by mkinitramfs and not on boot. * mkinitramfs: Check if ${BUSYBOX} is set to n before adding it. Add a big fat warning that this not yet supported. Helps to do the klibc-utils work. * mkinitramfs: Run depmod if no /lib/modules/${version}/modules.dep exists. Solves initramfs creation for handbuild upstream Xen targets. Thanks to Klaus Ita for the report. * debian/initramfs-tools.preinst, debian/initramfs-tools.postinst: Do the migration of the mkinitrd settings in the preinst. (closes: #376604) Thanks for the checks to Justin Pryzby . * debian/initramfs-tools.preinst: Reorder. Generate an modules file similar to the one we ship. This should minimize Sarge upgrade prompting if no relevant modules where added to /etc/mkinitrd/modules. * conf/modules: Make it more similar to /etc/mkinitrd/modules. * Set urgency high for RC fixes upload. Thanks Steinar H. Gunderson for the review. -- maximilian attems Mon, 10 Jul 2006 00:13:52 +0200 initramfs-tools (0.67) unstable; urgency=high Release bella, ciao, ciao, ciao! * scripts/local: Fix typo in log_begin_msg. (closes: #375880) * update-initramfs: Generate initramfs for current version if there is no sha1sum and no initrd exists yet - regression from 0.65. (closes: #375671) Thanks martin f krafft for report. * conf/initramfs.conf, initramfs.conf(5): Drop RESUME section. * debian/initramfs-tools.preinst: Don't modify conffile initramfs.tools - drop the corresponding code. (closes: #376008) * initramfs-tools(8): Document that RESUME is tried to be autodected and written to /etc/initramfs-tools/conf.d/resume on install. * scripts/functions: Replace expr use with printf for skipping comments on /etc/modules. Works on both busybox ash and klibc dash. Prefix space is ignored by both. * scripts/local-top/lvm: Remove harmless warnings if a volumegroup is under /dev/mapper but not an lvm device. (closes: 376311) Thanks David Härdeman for the patch. * scripts/local-top/lvm: Change activate_vg() to return 1 if no volumegroup is found. * debian/initramfs-tools.dirs: Add usr/share/initramfs-tools/conf.d entry. * mkinitramfs: Add stuff to the conf.d directory also from aboves directory. * Set urgency to high to get the RC bugfix into testing. -- maximilian attems Sun, 2 Jul 2006 18:35:34 +0200 initramfs-tools (0.66) unstable; urgency=low * hooks/thermal: Add i2c-powermac. * scripts/init-premount/thermal: Load i2c-powermac on ppc boot. Fixes fan noises for Sven Luther * scripts/function: Fix typo s/FS1/PS1/ on panic call. (closes: #375624) Thanks to Tim Phipps for the report. * scripts/local-top/lvm: Refix lilo check. (closes: #375786) Thanks to the patch from Christian Weeks . -- maximilian attems Wed, 28 Jun 2006 12:11:49 +0200 initramfs-tools (0.65b) unstable; urgency=low * scripts/local-top/lvm: Load snapshot and mirror modules. (Closes: #375342) * scripts/local-top/lvm: Fix a wrong substitution for the lilo test. (Closes: #375442) -- maximilian attems Mon, 26 Jun 2006 14:54:30 +0200 initramfs-tools (0.65) unstable; urgency=low * scripts/local-top/lvm: Activate root and resume volume group. The initialization got refractored in an function. (closes: #374891) Thanks for the patch to David Härdeman . * scripts/local-top/lvm: Be careful to activate volume group on lilo boot too. Although in that case we don't know the precise volume group, we activate them all. Matches behaviour of previous hook. * hooks/lvm: Add dm-mirror, allows to boot from an unfinished pvmove. (closes: #374378) * mkinitramfs: Remove old kernel-package supported long param. kernel-package uses since 10.036 mkinitramfs-kpkg. * update-initramfs: Show by default which initramfs gets generated. (closes: #364301) * Resync with 0.40ubuntu32: - Make prereqs conditional on the script/hook actually existing. From now on, this means that 'PREREQ="udev"' means "run udev first, iff it happens to be installed". Having the files exist on the filesystem if you have a HARD dependency should be enforced with package dependencies. (closes: #369617) - Make "update-initramfs -u" try to find the running kernel *after* it attempts to search the symbolic link list and its own sha1 list. Using this as a fallback, rather than the default, should solve most upgrade issues, where people found their initramfs was half-baked. - Abstract out the kernel minversion checking stuff into the function library, so we can reuse it to check minversion requirements for hook scripts as well (such as udev, which requires >= 2.6.15 in dapper) - Bump the kernel minversion to 2.6.15 on hppa and ia64, since they used initrd-tools with their 2.6.12 kernels in breezy, not initramfs-tools. - If mkinitramfs fails due to minversion not being met, don't bail out of update-initramfs, but just exit 0, so upgrades don't halt on it. * debian/initramfs-tools.postrm: We no longer need to explicitly remove /etc/initramfs-tools/modules. -- maximilian attems Sat, 24 Jun 2006 13:27:49 +0200 initramfs-tools (0.64) unstable; urgency=low RELEASE o bella, ciao! bella, ciao! * debian/initramfs-tools.install: Add /etc/initramfs-tools/modules conffile, instead of a cp from postinstall. (closes: #368043) * debian/control, update-initramfs.8, mkinitramfs.8: Capitalize RAM + NFS. Rephrase nfs root support. Thanks to Jeff Bailey and Steinar H. Gunderson for the review. -- maximilian attems Thu, 22 Jun 2006 20:45:59 +0200 initramfs-tools (0.63) unstable; urgency=low * init: Use redirection '>' for touching /dev/.initramfs-tools. * debian/control, update-initramfs.8, mkinitramfs.8: s/an (cpio archive)/a gzipped \1/. Thanks to Andy Somerville . -- maximilian attems Thu, 22 Jun 2006 01:11:17 +0200 initramfs-tools (0.62) unstable; urgency=low * debian/control: We need at least udev 0.086-1, since earlier versions had hooks, which don't load ide-disk automatically for 2.6.15 kernels. Can't lower dependency to sarge version as it has no coldplug support to escape udev dependency loop on upgrade. (closes: #358360, #362816) * hook-functions: Add arcmsr to the scsi modules list. * debian/NEWS: Add Notice about confdir mv as version 0.61. -- maximilian attems Wed, 21 Jun 2006 09:22:23 +0200 initramfs-tools (0.61) unstable; urgency=low Release "O partigiano portami via" * debian/TODO: update to latest state. * debian/bug: Fix reportbug script shebang line, add some descriptive echos. Use exec to open file descriptor 3 for reportbug. * debian/control: Pump to 3.7.2 standard version without changes. * init: Use 10M as tmpfs_size for the udev /dev, that can be overriden in /etc/udev/udev.conf. (closes: #352434) * /etc/initramfs-tools: Use the much more intituive conf dir location. Thanks for the idea to Andres Salomon . * debian/initramfs-tools.preinst: mv /etc/mkinitramfs /etc/initramfs-tools on upgrade as this should work even with drive space issues. Thanks to Jeff Bailey for the posix atomic mv hint and Daniel Blaschke for testing. * mkinitramfs: Set CONFDIR to /etc/initramfs-tools. * mkinitramfs.8, initramfs-tools.8: Document the new pathes. * debian/control: Change Build-depends-indep to Build-depends as we need debhelper and cdbs for the clean target, fulfills policy 7.6. * debian/initramfs-tools.preinst: Warn and bail out if /etc/initramfs-tools already exists. -- maximilian attems Thu, 18 May 2006 17:27:44 +0200 initramfs-tools (0.60) unstable; urgency=low "E ho trovato l'invasor" * scripts/functions: Allow boot scripts to modify exported boot parameters. Thanks David Härdeman for the patch. (closes: 348147) This allows the inclusion of cryptoroot hooks to cryptsetup! * init: add cryptopts parsing and export. * init: Move parse_numeric down to the "mounting root" block. * init, scripts/local: Allow rootflags to be passed in kernel cmdline. Thanks Thomas Luzat for the patch. (closes: #358917) * init: Allow passing nfs root mount option in kernel cmdline. Thanks Brian Brunswick for the patch. (closes: #358649) * update-initramfs: s/ALL/all/, fix it to actually run on update in non verbose mode. (closes: #362568) * update-initramfs: Warn in big letters about grub and lilo installs. (closes: #362816) * debian/bug: Add reportbug script with info about cmdline, fs and lsmod. * initramfs-tools(8): Document the /conf/param.conf feature. * mkinitramfs-kpkg(8): Spell out, why the wrapper script is needed. -- maximilian attems Tue, 18 Apr 2006 13:33:18 +0200 initramfs-tools (0.59b) unstable; urgency=low * mkinitramfs-kpkg: Intialialize the variables. (closes: #359355, #359620, #359613, #359666, #359681) -- maximilian attems Tue, 28 Mar 2006 16:30:59 +0200 initramfs-tools (0.59) unstable; urgency=low * debian/copyright: Add years of copyright and authors. * Resync with 0.40ubuntu28: - hooks/md: Add raid10 module. - scripts/local: Move the "loop waiting for the root filesystem" code from the udev premount script to the local mountroot() function where it truly belongs. - scripts/local-top/udev_helper: Leave the remaining ide-generic part there, should be taken over by udev itself. - make the md local-top scripts pre-requisite the udev one. thanks Scott James Remnant -- maximilian attems Sun, 26 Mar 2006 22:35:15 +0200 initramfs-tools (0.58) unstable; urgency=low * hook-functions: Be more carefull about the minor parsing. The fix of #357332 works for 3 digit roots, but not for hdc6 aka root=1606. Thanks Martijn Pieters for report (closes: #358354, #358740). * hook-functions: Add gdth to the scsi modules. * mkinitramfs-kpkg: Use set -eu to capture full /boot. Really (closes: #350875) * Add dependency on module-init-tools. (closes: #358632) * Don't include full path for man page reference. (closes: #358371) -- maximilian attems Sun, 26 Mar 2006 16:39:37 +0200 initramfs-tools (0.57b) unstable; urgency=low * mkinitramfs, update-initramfs, hook-functions: On verbose mode show, which modules gets added to the initramfs. * hook-functions: Add cpqarray to the scsi modules - thanks for the patch to Petter Reinholdtsen . (closes: #357980) * initramfs-tools.8: Document that `-' is not allowed to be used in a script filename - the filenames get used as shell variable. (closes: #344639) * mkinitramfs: Don't exit succesfully in a case of a full fs. Leaves the linux-image unconfigured. Thanks martin f krafft for pointing to that potential boot failure. (closes: #350875) -- maximilian attems Tue, 21 Mar 2006 11:56:29 +0100 initramfs-tools (0.56) unstable; urgency=low * hooks/md: Add linear module - thanks to Moshe Yudkowsky . * scripts/functions: Fix numerical minor parsing - thanks for the patch to Wolfgang Weisselberg. (closes: #357332) * mkinitramfs.8: Correct wrong referenced filename. * update-initramfs.8: Define the argument 'version' - thanks to "Susan G. Kleinmann" . (closes: #357282) * scripts/init-premount/udev_helper: Source the relevant definition to get it really run. Thanks to Maurice Massar . (closes: #357450) -- maximilian attems Fri, 17 Mar 2006 19:09:11 +0100 initramfs-tools (0.55b) unstable; urgency=low * Thanks to Frederik Schüler for pointing to leftovers. -- maximilian attems Wed, 15 Mar 2006 13:23:51 +0100 initramfs-tools (0.55) unstable; urgency=low * scripts/init-premount/udev_helper: Fix modprobe args. Thanks Frans Pop for testing 0.54. * scripts/local: Use quiet to load the fs. (closes: #339092) * hook-functions: Really add the ieee1394 modules. Thanks to Michael Prokop for testing the fix. * update-initramfs: Run lilo on updates if no grub is around. Thanks Adeodato Simó for finding the issue. (Closes: #356850) -- maximilian attems Wed, 15 Mar 2006 11:29:12 +0100 initramfs-tools (0.54) unstable; urgency=low * hooks/lvm: lvm10 has also an vgchange - exit if no lvm2 libs. (closes: #354708) * debian/copyright: Meniton current bzr archive. (closes: #352738) * hook-functions: Add dac960 scsi driver. (closes: #355162) * scripts/init-premount/udev_helper: add code by Scott James Remnant from the ubuntu udev hook. We now wait on scsi and usb devices to settle, load ide-generic on ide boot only if no root device appeared. The udev hook is adding ide.agent so no longer duplicate that code. * hook-functions: auto_add_modules, split 1000 char wide lines up. Should allow better diffing. Splitting them out in proper files with each modules / line costs too much initramfs generation time. Should allow easier diffing. * hook-functions: Add sata_mv thanks Kenshi Muto . (closes: #355486) * hook-functions: Add dasd class to auto_add_modules and dd zfcp module. Thanks to s390 support Bastian Blank . (closes: #355595) * hook-functions: Add it821x. (closes: #352460) -- maximilian attems Wed, 8 Mar 2006 17:34:25 +0100 initramfs-tools (0.53c) unstable; urgency=low * update-initramfs: Really reset takeover to zero. -- maximilian attems Mon, 6 Mar 2006 07:59:34 +0100 initramfs-tools (0.53b) unstable; urgency=low * scripts/init-premount/udev_helper: Renamed from udev-helper. Thanks to Tollef Fog Heen (closes: #355235) -- maximilian attems Sat, 4 Mar 2006 15:26:13 +0100 initramfs-tools (0.53) unstable; urgency=high * update-initramfs: set_current_version needs to check against /boot/initrd-`uname -r` and not /boot/vmlinu?-`uname -r`. Otherwise this builds initramfs for newer handbuild trees too. * Resync with 0.40ubuntu24: - New conf.d dir for config snippet. - mptspi already included. - keep nfsmount for now, we don't want to add further busybox deps. - adds mptfc and mptsas modules (closes: #341930) - adds MODULES=netboot support (closes: #352669) * Further reduce ubuntudiff: - scripts/functions: remove duplicate dir check. - scripts/nfs: add quiet to modules loading. * mkinitramfs-kpkg: Add kernel-package compat stuff, behaves like mkinitramfs, but adds the sha1sum for update-initramfs. Reset takeover=0. (closes: #353809) Add small mkinitramf-kpkg.8. * init: Move the ROOT export up, so we actually source the hardcoded device in initramfs.conf. (closes: #352958) * mkinitramfs: When invoked with -r switch pass the hardcoded root device to /etc/mkinitramfs/conf.d/root inside the initramfs. * hook-functions: First shot at IEEE1394 support - add ohci1394 and sbp2. -- maximilian attems Mon, 27 Feb 2006 10:20:03 +0100 initramfs-tools (0.52b) unstable; urgency=high * update-initramfs: Set takeover=1. This allows hooks to regenerate the latest initramfs per default. No need for an kpkg wrapper, as kernel-package doesn't call update-initramfs, but mkinitramfs. -- maximilian attems Mon, 20 Feb 2006 13:30:54 +0100 initramfs-tools (0.52) unstable; urgency=low * hooks/lvm: manual_add_modules dm_snapshot, will allow boot from lvm snapshot. * init: Fix maybe_break test for the bottom stage. * scripts/init-premount/udev-helper: Renamed from scripts/init-premount/ide. * update-initramfs: s/was/has/ been altered. (closes: #351939, #352633, #353087, #353668) * update-initramfs(8), mkinitramfs(8): The point of the first is to be used on your local box. Highlight its mode of operations. The second cmd is only needed for advanced usage. -- maximilian attems Fri, 17 Feb 2006 21:41:11 +0100 initramfs-tools (0.51) unstable; urgency=low * scripts/functions: Call panic on circular deps to get rescue shell. * mkinitramfs: Use ${CONFDIR} everywhere. * Sync with 0.40ubuntu16: - skip 0.40ubuntu15 udev gets fixed to only call update-initramfs when /etc/mkinitramfs/initramfs.conf is there. - 0.40ubuntu13 don't take over all initramfs images in Debian. * hook-functions: auto_add_modules atkb and i8042. * scripts/functions: on panic modprobe atkb and i8042 - work around for broken configs, where those are not build in. (Closes: #337497) * scripts/functions: update_progress check if /dev/.initramfs/ exists before writing into it. -- maximilian attems Tue, 24 Jan 2006 13:11:24 +0100 initramfs-tools (0.50c) unstable; urgency=low "E so io muoio da partigiano" * hook-functions: Fix MODULES=dep as `modprobe --show-depends' prints not only the insmod commands, but also the install ones. Thanks for the patch to Jean Charles Delepine . (Closes: #342616) * hooks/evms, scripts/local-top/evms: EVMS takes care of it's own hooks, rm. Thanks Steinar H. Gunderson . (Closes: 340258) -- maximilian attems Sat, 14 Jan 2006 17:40:48 +0100 initramfs-tools (0.49) unstable; urgency=low * Pump dephelper to 4.1.0 dependency as pointed out by linda. * initramfs-tools.8: Add DEBUG section, cheat how to check the initramfs. * Add optional sarge busybox-cvs-static dep to ease backport. -- maximilian attems Thu, 12 Jan 2006 17:28:42 +0100 initramfs-tools (0.48) unstable; urgency=low * mkinitramfs: klibc 1.1.14 moved from /usr/lib/klibc/lib to /lib Bonus: You can now execute any klibc bin directly. Cope with the move and pump dep. (Closes: 345949) -- maximilian attems Wed, 4 Jan 2006 16:11:25 +0100 initramfs-tools (0.47) unstable; urgency=low * mkinitramfs: Don't complain about missing /bin/sh - use rm -f. Minor cleanup for the newer packaging of klibc 1.1.14. -- maximilian attems Sat, 31 Dec 2005 14:17:31 +0100 initramfs-tools (0.46) unstable; urgency=low * Don't include .bzr dirs in source upload. Thanks Frederik Schüler -- maximilian attems Thu, 29 Dec 2005 14:23:46 +0100 initramfs-tools (0.45) unstable; urgency=high "Che mi sento di morir." * Unset debug before calling init, confuses /etc/init.d/rc. * scripts/init-premount/ide: Load uncondionally for ide boots ide-generic and also ide-disk, as udev ignores them. High urgency upload for rc bugs. Thanks Frans Pop and Joey Hess for testing! (Closes: #332824, #342925, #344754, #337045, #338406) -- maximilian attems Thu, 29 Dec 2005 10:34:32 +0100 initramfs-tools (0.44) unstable; urgency=high "O partigiano portami via" * Urgency high upload to stay in sync with udev for testing. * initramfs.conf: Fix wording choice for resume option. (Closes: #337575) * hooks/kernelextras: Really fix #335505. Don't expand wildcase to current dir. (Closes: #342153) * Add initramfs-tools.8 describing how the hooks of initramfs-tools work and how to use them. Thanks David Härdeman for the patch. (Closes: #339091) * initramfs.conf.5, mkinitramfs.8, update-initramfs.8: Update cross-references of the different manpages. * TODO: update to current state. * scripts/functions: remove old duplicate suspend support. * Sync with 0.40ubuntu8. (Closes: #337318) - Revert the modprobe changes for now as modules-init-tools of testing doesn't have yet the wanted interface. -- maximilian attems Mon, 12 Dec 2005 11:22:15 +0100 initramfs-tools (0.42) unstable; urgency=low * hook-functions: The mptspi module is required for at least some machines that use the mptscsih. Thanks dann frazier for the patch. (Closes: #341162) * Resync with 0.40ubuntu7. - Do the udev split by hand as we have a different udev invocation supporting linux < 2.6.15. Increment udev dep to the version with initramfs hooks. - Debian's klibc hasn't yet the nanosleep, waiting for unbroken linux-headers. - Don't remove resume support from /etc/mkinitramfs/initramfs.conf even if bootloader setting is preferred. -- maximilian attems Mon, 5 Dec 2005 12:59:59 +0100 initramfs-tools (0.40ubuntu32) dapper; urgency=low * Revert 0.40ubuntu31. This isn't as trivial as it should be. -- Matt Zimmerman Sun, 21 May 2006 10:17:50 -0700 initramfs-tools (0.40ubuntu31) dapper; urgency=low * scripts/local-premount/resume: Print a message when a resume is about to begin (LP#41137) -- Matt Zimmerman Fri, 19 May 2006 15:14:53 -0700 initramfs-tools (0.40ubuntu30) dapper; urgency=low * This release brought to you by Fujitsu hard drives, which have forced me to rewrite all my most recent initramfs-tools changes from memory. * Include arcmsr module in the scsi module list (launchpad.net/40075) * Abstract out the kernel minversion checking stuff into the function library, so we can reuse it to check minversion requirements for hook scripts as well (such as udev, which requires >= 2.6.15 in dapper) * Bump the kernel minversion to 2.6.15 on hppa and ia64, since they used initrd-tools with their 2.6.12 kernels in breezy, not initramfs-tools. * If mkinitramfs fails due to minversion not being met, don't bail out of update-initramfs, but just exit 0, so upgrades don't halt on it. * Conditionalise the use of lvm and md in mkinitramfs so it's a no-op if you don't have those packages installed, but allows for smooth upgrades if you have older versions that don't ship their own hooks yet. * Make prereqs conditional on the script/hook actually existing. From now on, this means that 'PREREQ="udev"' means "run udev first, iff it happens to be installed". Having the files exist on the filesystem if you have a HARD dependency should be enforced with package dependencies. * Add ohci1394 and sbp2 to the scsi module list (launchpad.net/37479) * Move framebuffer setup from usplash to scripts/local-top/framebuffer so that people booting with vga=1234 but no splash will still get a framebuffer instead of a useless black console (launchpad.net/27669) -- Adam Conrad Tue, 16 May 2006 19:51:08 +1000 initramfs-tools (0.40ubuntu29) dapper; urgency=low * Make "update-initramfs -u" try to find the running kernel *after* it attempts to search the symbolic link list and its own sha1 list. Using this as a fallback, rather than the default, should solve most upgrade issues, where people found their initramfs was half-baked. -- Adam Conrad Wed, 19 Apr 2006 13:51:35 +1000 initramfs-tools (0.40ubuntu28) dapper; urgency=low * Add raid10 module to the generic module list (launchpad.net/28028) * Add cpqarray to the scsi module list (launchpad.net/{26632,35202}) * Unset debug before we run the real init (launchpad.net/24095) * Add the gdth module to the default scsi list (launchpad.net/31542) -- Adam Conrad Fri, 24 Mar 2006 04:33:44 +1100 initramfs-tools (0.40ubuntu27) dapper; urgency=low * Drop the evms, lvm and md local-top scripts; they're all provided by their own packages now. This makes the depdencies rather nicer. -- Scott James Remnant Thu, 23 Mar 2006 18:04:48 +0000 initramfs-tools (0.40ubuntu26) dapper; urgency=low * Make the md and evms local-top scripts pre-requisite the udev one. -- Scott James Remnant Thu, 23 Mar 2006 17:54:32 +0000 initramfs-tools (0.40ubuntu25) dapper; urgency=low * Move the "loop waiting for the root filesystem" code from the udev premount script to the local mountroot() function where it truly belongs. -- Scott James Remnant Wed, 22 Mar 2006 16:28:46 +0000 initramfs-tools (0.40ubuntu24) dapper; urgency=low * Add support for LSI Logic's Fusion MPT SAS and FC controllers as well. -- Adam Conrad Thu, 23 Feb 2006 23:27:16 +1100 initramfs-tools (0.40ubuntu23) dapper; urgency=low * Grow a conf.d directory for config snippets, and toss the RESUME option in there, to stop editing our own conffile in our maintainer scripts. * Add a cleverly hackish preinst that will pull the RESUME setting from old config files, migrate it to conf.d/resume, and reset that part of the conffile to a factory fresh state. This should fix the unwanted conffile prompt in breezy->dapper upgrades for people who made no local changes. -- Adam Conrad Fri, 17 Feb 2006 15:34:53 +1100 initramfs-tools (0.40ubuntu22) dapper; urgency=low * Add mptspi to the list of SCSI modules put in the initramfs by default, which is required for some LSI Logic controllers and for the VMware SCSI controller in recent VMware versions (See launchpad.net/{27187,31229}) * Fix typo of /dev/disk/by-*, which I wrote as /dev/disks/by-{uuid,label} * Load i2c-keywest before loading therm_pm72 in the PowerPC thermal hook, since the latter sometimes needs the former (Closes launchpad.net/27269) -- Adam Conrad Tue, 14 Feb 2006 23:28:35 +1100 initramfs-tools (0.40ubuntu21) dapper; urgency=low * Don't update the progress bar once udev has taken /dev away; after all, we can't contact usplash anyway at this point. -- Scott James Remnant Wed, 8 Feb 2006 14:34:10 +0000 initramfs-tools (0.40ubuntu20) dapper; urgency=low * Add ... to end of strings to match main boot sequence. -- Scott James Remnant Tue, 7 Feb 2006 11:07:50 +0000 initramfs-tools (0.40ubuntu19) dapper; urgency=low * Change the first of many "Loading modules" to "Loading essential drivers" to improve debugging when people say it breaks at that stage. -- Scott James Remnant Tue, 7 Feb 2006 11:05:15 +0000 initramfs-tools (0.40ubuntu18) dapper; urgency=low * Add support for selecting root by UUID or LABEL with syntax such as: root=LABEL=myrootfs or root=UUID=92addf34-0f02-4a0e-bfb2-cbaa1e907b77 -- Adam Conrad Fri, 3 Feb 2006 15:55:01 +0000 initramfs-tools (0.40ubuntu17) dapper; urgency=low * Make auto_add_modules take an argument, so you can use it to add only some of the auto* modules (like "net" or "ide"), and create a "netboot" option that only includes base and net (Closes launchpad.net/26426) * Change the nfs script to use "mount -o nolock" instead of "nfsmount", to fix some timeouts for ltsp NFS roots (Closes launchpad.net/19196) -- Adam Conrad Tue, 31 Jan 2006 11:55:11 +0000 initramfs-tools (0.40ubuntu16) dapper; urgency=low * Bump klibc-utils dependency to (>= 1.1.16-1), for hppa and ia64. -- Adam Conrad Thu, 19 Jan 2006 04:00:39 +1100 initramfs-tools (0.40ubuntu15) dapper; urgency=low * Drop the udev dependency, so we always get configured before udev. We can get away with this now that udev hooks/scripts have been split into the udev package proper. This should close Malone bug #28808. -- Adam Conrad Wed, 18 Jan 2006 22:50:27 +1100 initramfs-tools (0.40ubuntu14) dapper; urgency=low * If copy_exec is asked to copy to the same location twice, check if we're copying the same file again. If so, do nothing and carry on, if not, warn that we asked it for an impossibility, and don't overwrite. -- Adam Conrad Thu, 12 Jan 2006 18:00:12 +1100 initramfs-tools (0.40ubuntu13) dapper; urgency=low * Default to taking over other initramfs images in Ubuntu, as this is more consistent with what our packaging expects to be able to do. * Make "update-initramfs -u" try to find the running kernel before it attempts to search the symbolic link list and its own sha1 list. -- Adam Conrad Wed, 11 Jan 2006 16:25:20 +1100 initramfs-tools (0.40ubuntu12) dapper; urgency=low * Oops, move the progress state file into the new directory too. -- Adam Conrad Mon, 9 Jan 2006 21:26:44 +1100 initramfs-tools (0.40ubuntu11) dapper; urgency=low * Move the state directory from /dev/initramfs to /dev/.initramfs -- Adam Conrad Mon, 9 Jan 2006 21:17:50 +1100 initramfs-tools (0.40ubuntu10) dapper; urgency=low * Create the /dev/initramfs directory as soon as we mount /dev, so other packages that need a playground in /dev can do so in a uniform location. * Update the usplash progress bar every time we are asked to output a success or failure value from an init action, and write our progress to /dev/initramfs for sysv-init to gather up and pick up where we left off. * Export $DPKG_ARCH in both mkinitramfs (for use by hooks) and initramfs. * Use $DPKG_ARCH in the thermal hook/script to divide the x86 stuff from the powerpc stuff, not because we have to, but as an example to others. -- Adam Conrad Mon, 9 Jan 2006 10:51:51 +1100 initramfs-tools (0.40ubuntu9) dapper; urgency=low * Make some changes to cope with the new and improved klibc packaging: - Add a force to the deletion of ${DESTDIR}/bin/sh, to avoid errors. - Cope with libklibc moving from /usr/lib/klibc/lib to /lib. - Bump dependency on klibc-utils to one new enough for the above. -- Adam Conrad Thu, 5 Jan 2006 15:13:15 +1100 initramfs-tools (0.40ubuntu8) dapper; urgency=low * Call modprobe everywhere with "-Qb" to silence messages and allow user blacklisting. * Copy the entire /etc/modprobe.d directory to the initramfs, so we can pick up all user blacklists and options. * Remove the slumber for SCSI/USB devices from the local filesystem mount script, udev's init-premount script will take care of this when necessary. -- Scott James Remnant Wed, 7 Dec 2005 16:18:12 +0000 initramfs-tools (0.40ubuntu7) dapper; urgency=low * remove "sleep 3" from the nfs script before the nfsmount command, its a leftover from debugging in breezy and slows down thin client booting unnecessary -- Oliver Grawert Fri, 2 Dec 2005 11:45:05 +0100 initramfs-tools (0.40ubuntu6) dapper; urgency=low * When panicking, fork an interactive subshell rather than execing it, so that if the user fixes things up and exits, we continue rather than panic the kernel. * Call update-initramfs in postinst to regenerate the latest initramfs on upgrades -- Matt Zimmerman Thu, 1 Dec 2005 22:23:09 -0800 initramfs-tools (0.40ubuntu5) dapper; urgency=low * Wait up to 10 seconds for the root device to appear before failing, allowing SCSI and USB controllers time to settle. There's almost certainly a more elegant way to do this generically for all mountroot functions, but for now this will suffice. -- Scott James Remnant Thu, 1 Dec 2005 21:28:55 +0000 initramfs-tools (0.40ubuntu4) dapper; urgency=low * Mount /dev with mode 0755. -- Scott James Remnant Thu, 1 Dec 2005 19:30:06 +0000 initramfs-tools (0.40ubuntu3) dapper; urgency=low "A true friend stabs you in the front." - Oscar Wilde * hooks/acpid: Rename to ... * hooks/thermal: ... this. Add therm_pm72 for ppc64 systems. -- Jeff Bailey Wed, 30 Nov 2005 22:25:01 -0500 initramfs-tools (0.40ubuntu2) dapper; urgency=low * Rename scripts/init-premount/acpid to scripts/init-premount/thermal and add therm_pm72 to avoid "vaccum cleaner mode" on ppc64 systems. -- Adam Conrad Thu, 1 Dec 2005 12:37:27 +1100 initramfs-tools (0.40ubuntu1) dapper; urgency=low * Use tmpfs for /dev, instead of ramfs; as tmpfs is swappable. * Move /proc and /sys to the real filesystem, rather than unmounting them; slightly reduces workload. * Replace /root with ${rootmnt} in final usage of /dev/console * Copy across modprobe blacklist as well as aliases * Change the panic/breaknow thing *again*. There's now a break= option which can be any of top, modules, premount, mount, bottom, init and causes the initramfs to break at that point. panic/breaknow is now break=top, without an argument is equivalent to break=premount. * Run depmod at the top of the init script, so init-top scripts can use modprobe. * Remove udev-specific code: - depend on the version of udev that includes all of these things itself - remove udevstart from init - remove code to move /dev to the real filesystem from init - remove /sys-based module loading from load_modules - remove boot_events functions from load_modules - remove udev copy from mkinitramfs - remove udev hook script -- Scott James Remnant Thu, 24 Nov 2005 21:21:12 +0000 initramfs-tools (0.41) unstable; urgency=high "Una mattina mi sono svegliato" * High urgency upload to cope with newer udev upstream - bonus: condition to test against when udev is ready. (Closes: #341014) Thanks Marco d'Itri for guidance and Heikki Henriksen for double check. * Pump udev dep on 0.076-3. * Special thanks to Paul Traina for previous udev / emvs work. * Sync with Ubuntu (0.36ubuntu6). * Kill udevd as late as possible. Thanks David Härdeman for the patch. (Closes: #339093) -- maximilian attems Mon, 28 Nov 2005 17:53:24 +0100 initramfs-tools (0.40) unstable; urgency=high * High urgency upload as udev changed under our feet. Fix RC bugs. * hooks/udev: Add needed bits: udevsynthesize. (Closes: #340257) Move good bits from global mkinitramfs. * Pump udev dep on 0.074-3. * Fix evms hooks properly until they get merged into the evms itself. (Closes: #337704) * Sync with Ubuntu (0.36ubuntu4). -- maximilian attems Wed, 23 Nov 2005 10:31:57 +0100 initramfs-tools (0.39) unstable; urgency=medium * Setting urgency to medium to get this into testing. This will make life easier for d-i. * Revert the mklibs-small usage patch - reduces needed dependencies: hook-fuctions: Readds copy_exec. mkinitramfs, hooks/{evms,lvm,md}: Use copy_exec. * mkinitramfs: Newer udev no longer uses /sbin/udev - remove usage. (Closes: #339568, #339365, #338814) * Pump udev dependency. * init: Pump timeout as there is currently no way to check which udevd processes are still running and why. Cures hopefully breakage of missing devices on boot. * Sync with latest Ubuntu. -- maximilian attems Thu, 17 Nov 2005 19:59:47 +0100 initramfs-tools (0.36ubuntu6) dapper; urgency=low * Rename "panic" to "breaknow" -- Scott James Remnant Wed, 23 Nov 2005 10:23:54 +0000 initramfs-tools (0.36ubuntu5) dapper; urgency=low * Abort the boot sequence as early as possible if "panic" is placed on the kernel command-line, allowing debugging of scripts in init-top. -- Scott James Remnant Mon, 21 Nov 2005 08:40:20 +0000 initramfs-tools (0.36ubuntu4) dapper; urgency=low * Replace all occurances of /etc/mkinitramfs in mkinitramfs with $CONFDIR, so -d can be used to point at a completely alternate tree (for example, when installing into a chroot). -- Scott James Remnant Mon, 21 Nov 2005 08:34:03 +0000 initramfs-tools (0.36ubuntu3) dapper; urgency=low * mkinitramfs: only copy the klibc-*.so file, and not the development pieces that happen to sit alongside it. -- Scott James Remnant Thu, 10 Nov 2005 16:44:08 -0500 initramfs-tools (0.36ubuntu2) dapper; urgency=low * Fix typos in the handling of the mkinitramfs -d option (thanks, Colin). -- Adam Conrad Thu, 10 Nov 2005 12:12:32 -0500 initramfs-tools (0.38) unstable; urgency=low [ dann frazier ] * initramfs.conf: Reference correct manpage. (Closes: #336095) [ maximilian attems ] * scripts/functions, scripts/local-premount/suspend: Fix suspend to disk by using decimal numbers. Thanks to Adrian Bridgett for the patch. (Closes: #336936) * hooks/evms: manual_add_module dm_mod, now we no longer pull it in by default. Thanks to Steinar H. Gunderson (Closes: #336617) -- maximilian attems Wed, 2 Nov 2005 07:21:29 +0100 initramfs-tools (0.37) unstable; urgency=low * scripts/functions, scripts/local-premount/suspend: Use of "stat" which isn' any more provided by busybox (1.01-3). Thanks to Adrian Bridgett for the patch using awk. (Closes: #335801) * hooks/kernelextras: Check for existence of ${MODULESDIR}/initrd/: Exit if it doesn't exist before including current dir. Thanks to Jean Charles Delepine (Closes: #335505) * hooks/lvm, hooks/md: Remove FIXME's at second thought. You better want to check against the binaries for your not yet created raid/lvm. -- maximilian attems Wed, 26 Oct 2005 09:22:58 +0200 initramfs-tools (0.36ubuntu1) dapper; urgency=low * Forced version bump to minimise the scary until I have a chance to dig through the ubuntu:debian diffs and do a proper merge of their changes. * Remove the "Loading, please wait..." message from the top of init, as we now have other fairly early visual feedback, and this is just ugly. -- Adam Conrad Wed, 26 Oct 2005 11:27:36 +1000 initramfs-tools (0.36) unstable; urgency=low "Sunny Autumn Release" * Minor cleanups in mkiniramfs. * Remove manpage section about return values. Needs to be rephrased. Not sure if it's important for the enduser. -- maximilian attems Mon, 24 Oct 2005 19:51:51 +0200 initramfs-tools (0.35) unstable; urgency=low * mkinitramfs: Return 2 for failure path of --supported-(host|target)-version. * mkinitramfs: Run the hooks before mklibs-copy, broke evms. Thanks for fix and testing to Steinar H. Gunderson * Change name of virtual package that is provided into linux-initramfs-tool. * Add hooks/lvm allowing to remove dependency on lvm2. * Add hooks/md allowing to remove dependency on mdadm. * Remove the mdadm and lvm dependencies, they work as hooks when present. The lvm2 version in sarge is good enough to address issues mentioned in 0.16. A woody backport will need newer lvm2 although.. -- maximilian attems Mon, 24 Oct 2005 19:16:14 +0200 initramfs-tools (0.32) unstable; urgency=low [ Bastian Blank ] * Use mklibs-copy. * Use udevsynthesize instead of udevstart. * hook-functions: Add ibmvscsic to list of scsi modules. [ Sven Luther ] * Added --supported-(host|target)-version support for the new post-2.6.13 ramdisk-tool policy. Added linux-ramdisk-tool virtual package too. (Closes: #333856) [ maximilian attems ] * Resynchronise with latest upstream release. * Place shift after variable outfile assignment. * Fix strange chars in the Depends line resulting in no depends at all. * Thanks to Bastian Blank for the fixes concerning the new busybox version. (Closes: #334467) [ Jeff Bailey ] * scripts/nfs (mountroot): New variable: NFSOPTS, default to -o retranfs=10. (Ubuntu 12942) This can be overridden in the initramfs.conf file. Thanks to Oliver Grawert for testing this! * hook-scripts (auto_add_modules): Add jfs (dep_add_modules): Ditto. (Ubuntu #16742) Thanks to Colin Watson for this fix! [ Adam Conrad ] * Make us a bit more silent/tidy by default, unless "quiet" isn't on the kernel's command line (then we're just as verbose as ever) [ Jonas Smedegaard ] * Use GNU getopt (instead of bash builtin getopts) for improved long- opts handling. * Quote variables. * Use test options -n and -z. -- maximilian attems Wed, 19 Oct 2005 17:42:08 +0200 initramfs-tools (0.31) unstable; urgency=low Quick fix for sluggish dep [ Bastian Blank ] * Use new busybox. (closes: #333755) -- maximilian attems Mon, 17 Oct 2005 16:27:31 +0200 initramfs-tools (0.30) unstable; urgency=low Apparition Octobre Rouge [ maximilian Attems ] * Resynconise with latest upstream now we are in unstable. [ Jeff Bailey ] * debian/rules: Make sure hooks and scripts are chmod +x * hook-functions (auto_add_modules): Add advansys. * debian/init: Add "Loading, please wait..." message. Don't log for init-top scripts to avoid usplash noise. * init: Add start of debug command line option. * scripts/functions (log_begin_msg): Call usplash if available (log_end_msg): Call usplash if available (panic): Close usplash if available * scripts/functions (load_modules): Quote resume variable. Thanks to Christian Kellner for helping test that! * scripts/local-premount/suspend: Quote resume variable. * update-initramfs: Use basename on the link target to get the version number. * HACKING: Start of some notes on how this package actually works. * debian/initramfs-tools.docs: Install it. [ Matthew Garrett ] * scripts/functions (load_modules): Run udevstart after loading block drivers should fix resume from hibernate on non-LVM systems. -- maximilian attems Fri, 30 Sep 2005 19:34:55 +0200 initramfs-tools (0.29) breezy; urgency=low "Beauty is a form of genius - is higher, indeed, than genius, as it needs no explanation." - Oscar Wilde * hook-functions (auto_add_modules): Add advansys. * debian/rules: Make sure hooks and scripts are chmod +x * init: Add start of debug command line option. -- Jeff Bailey Tue, 20 Sep 2005 15:47:42 -0400 initramfs-tools (0.28) breezy; urgency=low * Run udevstart after loading block drivers - should fix resume from hibernate on non-LVM systems. -- Matthew Garrett Tue, 20 Sep 2005 01:13:31 +0100 initramfs-tools (0.27) unstable; urgency=low * Remove unused BUSYBOX config option as we use busybox anyway. * Add Jeff Bailey and myself as Uploaders, Debian kernel team as MAINTAINER. * Upload to debian unstable - allows use of nondevfs kernel >= 2.6.13 with initramfs image. (Closes: #312561, #315654) * Fix busybox dependency to the relevant debian package. * Reorder the initramfs.conf variables. * Add question mark to the getopts for the help message. * update-initramfs.8 New file install it. * The debian busybox-cvs-static installs into /bin/busybox: fix pathes vis-a-vis ubuntu version. make that a variable on top. -- maximilian attems Tue, 20 Sep 2005 13:52:00 +0200 initramfs-tools (0.26) breezy; urgency=low "Experience is one thing you can't get for nothing." - Oscar Wilde * scripts/local-top/lvm: Reduce -- to - in VG strings for feeding to vgchange. (Ubuntu: #13387) * update-initramfs: New file * debian/dirs: Add /var/lib/initramfs-tools * hooks/evms: New file * scripts/local-top/evms: New file. Thanks to Jerry Haltom for helping test this! * debian/control: Bump klibc depends to 1.0.14-1ubuntu2 for jfs support * hook-scripts (manual_add_modules): Don't do unnecessary depmod (dep_add_modules): No need for a sleep 2 here. Thanks to Matt Zimmmerman for noticing these! * scripts/functions: Attempt resume before loading USB or Network modules to avoid resume issues with USB. Thanks to Matthew Garrett for this patch! * scripts/functions (ide_boot_events): Always load ide-generic before going further. This allows us to catch any hidden IDE controllers that might not otherwise get found. * initramfs.conf.5: New file * debian/initramfs-tools.manpages: Install it. Thanks to maximilian attems for the manpage! * hook-functions (auto_add_modules): Add mptscsih (Ubuntu #15406) Thanks to Jesper Krogh for the bug report! * debian/dirs: Add etc/mkinitramfs/hooks, move all scripts subdirs into etc/mkinitramfs/scripts. * mkinitramfs: Set the umask. Copy the scripts from /etc/mkinitramfs/scripts into the image. Make sure that modules file lists is actually a regular file. * init: Use ${rootmnt} instead of hardcoded /root, use mount -n Fix typo. * hook-functions (catenate_cpiogz): Add sanity check. (add_modules_from_file): Document, quote variable, add warning. * docs/example_hook: Update Thanks to Karl Hegbloom for these previous 5 patches! * init: Create /var/lock on the initramfs Thanks to Jerry Haltom for noticing this! * debian/dirs: rename to ... * debian/initramfs-tools.dirs: ... this. * scripts/functions (scsi_boot_events): Don't attempt to look at ${device}/type if it doesn't actually exist. -- Jeff Bailey Wed, 14 Sep 2005 14:12:24 -0400 initramfs-tools (0.25) breezy; urgency=low "If there was less sympathy in the world, there would be less trouble in the world." - Oscar Wilde * init: Module the /dev tmpfs earlier. Make /dev/console, and /dev/null on it at the beginning, just in case. * debian/initramfs-tools.postinst: When copying the modules file over from initrd-tools installations, filter out ext2, ext3, ide-generic and ide-disk. These are leftovers from Warty. (Ubuntu #14242) * hooks/udev: New File (Ubuntu #12915) * init: panic if ${init} doesn't exist on the target filesystem. -- Jeff Bailey Thu, 1 Sep 2005 00:13:47 -0400 initramfs-tools (0.24) breezy; urgency=low "Experience is simply the name we give out mistakes." - Oscar Wilde * hook-functions (auto_add_modules): Add cciss (Ubuntu #14177) Thanks Fabionne! * scripts/functions (parse_numeric): Noop on empty parameter. Fixes LTSP boot failure. Thanks to Oliver Grawert for testing! * scripts/local-top/md: Don't run modprobe when raidlvl is unset. Run mdadm if raidlvl has ever been set, not just if the most recent device checked was part of the raid setup. Thanks to Jeff Waugh for the bug report! * mkinitramfs: Feed the -o argument through readlink -f to get the canonical pathname. -- Jeff Bailey Fri, 26 Aug 2005 09:35:32 -0400 initramfs-tools (0.23) breezy; urgency=low "This suspense is terrible. I hope it will last." - Oscar Wilde * scripts/local: Quote ${ROOT} so that an empty value causes us to drop to a shell. Thanks to Matt Zimmerman for this fix! * hook-functions (auto_add_modules): Add atiixp and opti621 to the IDE set. * hook-functions (dep_add_modules): Detect i2o and add i2o_block (auto_add_modules): Include i2o_block. * scripts/functions (i2o_boot_events): New function (load_modules): Call it. (Ubuntu# 13806) Thanks to Tollef Fog Heen for the i2o patch! * debian/control: Depend on udev. Thanks to Alexander Butenko for troubleshooting this with me. * init: Move the /dev directory to the root filesystem. Handle all the udev bind mounts as needed. Make sure input and output is associated with dev/console. * scripts/functions (parse_numeric): Exit if we're refering to a path. Otherwise override root setting to be /dev/root. * init: Call parse_numeric when setting the root variable. * scripts/local-top/lvm: When using a numeric root, call vgchange -ay Don't attempt to start LVM on regular partitions. (Ubuntu #13365, #13778, and some of #13399) * scripts/local-top/lvm: Cope with -'s in the Volume Group and logical volume names. (Ubuntu #13387) Thanks to Stephen Shirley for the patch! -- Jeff Bailey Thu, 25 Aug 2005 11:48:15 -0400 initramfs-tools (0.22) breezy; urgency=low * Fix argument handling in force_load hook-function * Add "sleep 3" to scripts/nfs as a nasty hack around bug #12942 -- Matt Zimmerman Fri, 19 Aug 2005 23:50:16 -0700 initramfs-tools (0.21) breezy; urgency=low "All that I desire to point out is the general principle that life imitates art far more than art imitates life." - Oscar Wilde * mkinitramfs: Define MODULESDIR and use it. * hook-functions: Use MODULESDIR (add_modules_from_file): Do not add .ko extension to file lists. Call force_load instead of twiddling conf/modules directly. (Ubuntu #13372) (force_load): New function. (copy_exec): Attempt to use non-optimsed libraries if available. (Ubuntu #13470) (auto_add_modules) Include forcedeth (Ubuntu #13448) * hooks/kernelextras: New file. (Ubuntu #13414) * debian/initramfs-tools.postinst: Preserve /etc/mkinitrd/modules if possible on new install. (Ubuntu #13372) -- Jeff Bailey Thu, 18 Aug 2005 00:20:11 -0400 initramfs-tools (0.20) breezy; urgency=low * Depend on cpio. -- Colin Watson Fri, 12 Aug 2005 10:43:04 +0100 initramfs-tools (0.19) breezy; urgency=low "The basis of optimism is sheer terror." - Oscar Wilde * mkinitramfs: Honour MODULES=list and MODULES=dep. * hook-functions: New function dep_add_modules. -- Jeff Bailey Wed, 10 Aug 2005 23:20:11 -0400 initramfs-tools (0.18) breezy; urgency=low "We are all in the gutter, but some of us are looking at the stars." - Oscar Wilde * debian/initramfs-tools.postrm: Use rm -f for removing the modules file, in case it doesn't exist for some reason. (Ubuntu #13335) Thanks to Colin Watson for the bug report! * mkinitramfs.8: Correct my email address to be jbailey@ubuntu.com Document /etc/mkinitramfs/DSDT.aml * debian/initramfs-tools.postinst: Attempt to inherit RESUME settings from initrd-tools. Also copy the DSDT from /etc/mkinitrd/DSDT to /etc/mkinitramfs/DSDT.aml -- Jeff Bailey Wed, 10 Aug 2005 13:09:44 -0400 initramfs-tools (0.17) breezy; urgency=low "The public is wonderfully tolerant. It forgives everything except genius." - Oscar Wilde * debian/initramfs-tools.postinst: Get the name of the config file right when seeding RESUME=. Also fix the sed expression. Thanks to Matthew Garrett for noticing this! -- Jeff Bailey Wed, 10 Aug 2005 11:54:07 -0400 initramfs-tools (0.16) breezy; urgency=low "It is through art, and through art only, that we can realise our perfection." - Oscar Wilde * mkinitramfs: Make sure all relevant ide modules are included. Add RESUME= support. * scripts/functions: Be silent when adding non-detected modules. * conf/mkinitramfs.conf: MODULES=most by default, BUSYBOX=y (Non-busybox isn't supported now. It's not clear that it ever will be). Add RESUME line for resuming from suspend-to-disk. * scripts/local-premount/suspend: New script for suspend-to-disk. * debian/control: Bump depends on busybox-cvs-initramfs to 20040623-1ubuntu19. Add dependancy on lvm2. Bump standards version to 3.6.2.0 (no-op) * debian/control: Force version depend on lvm2 (>= 2.01.04-5) to make sure newer kernels will boot. Thanks for Andrew Mitchell for discovering this. * hooks/: New directory * debian/dirs: Move hooks to ... * debian/initramfs-tools.install: ... here. * hooks/acpid: New file. * scripts/init-premount/acpid: New file Thanks for the hint from Matthew Garrett for this. * debian/initramfs-tools.postinst: Add RESUME support on first install. * debian/mkinitramfs: Move functions to ... * debian/hook-functions: ... here. * debian/initramfs-tools.install: Install hook-functions * mkinitramfs.8: New file. Thanks to Maximilian Attems for contributing this! * scripts/local-top/md: Don't try to detect raid on non-existant devices or on whole devices. Quiet other warning messages. * hook-functions: When generating initramfs, don't complain about missing modules. -- Jeff Bailey Tue, 9 Aug 2005 23:35:08 -0400 initramfs-tools (0.15) breezy; urgency=low "Nothing looks so like innocence as an indiscretion." - Oscar Wilde * mkinitramfs: Handle putting DSDT.aml into the initramfs Add sata_nv to list of modules to import for main mode. * init: New scripts directory, init-premount for generic premount handling (like usplash) * debian/dirs: Make the /etc version of this directory for user addons. * debian/rules: Use prebuild, rather than debian-build-arch. -- Jeff Bailey Tue, 9 Aug 2005 11:29:10 -0400 initramfs-tools (0.14) breezy; urgency=low "The world is a stage, but the play is badly cast." - Oscar Wilde * scripts/functions: Add scsi_boot_events and call it to load sd_mod * scripts/local-top/md: Autodetect raid level * scripts/local-top/lvm: Only activate the volumegroup required by the root device. Don't bother with lvm if the root partition isn't /dev/mapper/FOO. * scripts/functions: Fix ide_boot_events. This never worked, even if I thought it did. * init: init variable should be lower case. Exported ROOT variable should be upper case. -- Jeff Bailey Tue, 26 Jul 2005 20:30:57 -0400 initramfs-tools (0.13) breezy; urgency=low "We live in age when unnecessary things are our only necessities." - Oscar Wilde * Use detailed logging now for debian/changelog. We have at least three people hacking now, and details would probably be useful. * debian/TODO: Update * debian/dirs: Sort and add usr/share/initramfs-tools/hooks * debian/initramfs-tools.examples: Add docs/example_hook and docs/example_hook_cpiogz * debian/initramfs-tools.install: Pretty Print. * debian/rules: Ensure that mkinitramfs is executable * docs/example_script: New file * init: Add concept of 'quiet', be verbose if not specified * mkinitramfs: Do not load script functions until needed Clear up comments / documentation Use DESTDIR instead of TMPDIR Add ability to link in extra hunks into the cpio file Cosmetic cleanups * scripts/functions: Add lsb stype log_FOO_msg functions * scripts/local: Add logging * scripts/nfs: Add logging Thanks to Karl Hegbloom for most of these patches! * debian/control: Get a much better description Thanks to Maximilian Attems for this! * scripts/functions: Add copy_exec function that copies a program and all libraries that it depends on. * mkinitramfs: Use it * scripts/local-top/lvm: New file * mkinitramfs: Specify the modules to copy rather than mass copying directories * scripts/functions: Always load ide-generic to cope with ide subsystem suckage. -- Jeff Bailey Wed, 29 Jun 2005 23:50:56 +0000 initramfs-tools (0.12) breezy; urgency=low "I am not young enough to know everything." - Oscar Wilde * Don't complain if /etc/mkinitramfs/modules doesn't exist. * Make sure that raid1 is pulled in. * Include /etc/modprobe.d/aliases in the initramfs * Default to currently running kernel version. Based on a patch from maximilian attems, thanks! * Handle module arguments in /etc/mkinitramfs/modules * Do hookscripts at generation time. Drop things into /usr/share/initramfs-tools/hooks or /etc/mkinitramfs/hooks * Make sure local-bottom and nfs-bottom get created Thanks to Karl Hegbloom for these three patches! * Prune stray echo from call_scripts * Load raid1 for now so that md setups will work. * Detect ide modules load Thanks to Jeff Waugh for initial testing of this! -- Jeff Bailey Mon, 20 Jun 2005 23:05:04 +0000 initramfs-tools (0.11) breezy; urgency=low "Illusion is the first of all pleasures" - Oscar Wilde * Make the init much less noisy * Pull in all the dependancies for nfs and af_packet * Be compatible with misdocumented mkinitrd interface Thanks to Matt Zimmerman for the bug reports and testing! * Update debian/copyright to have the location of the bzr archive -- Jeff Bailey Fri, 17 Jun 2005 21:23:25 +0000 initramfs-tools (0.10) breezy; urgency=low The "I can see you!" release. * Unconditionally require busybox. Might revert this eventually but it's too much of a pain right now do this without a reasonably environment * Use modprobe to load modules * Iterate through /sys/bus/pci and /sys/bus/usb and load drivers based on their modalias * Start to use /sbin for things * Include depmod in the image. Use it at boot time. * Edit config example to show the modules that do need to be included manually for this build. -- Jeff Bailey Fri, 17 Jun 2005 12:45:07 +0000 initramfs-tools (0.9) breezy; urgency=low * Be consistent about y/n vs. yes/no values for the readonly variable -- Matt Zimmerman Thu, 16 Jun 2005 15:22:30 -0700 initramfs-tools (0.8) breezy; urgency=low The "We are one in the spirit..." release * Export the command line variables so that the various scripts can see them. * Honour command line 'ro' or 'rw' settings for nfs. -- Jeff Bailey Tue, 14 Jun 2005 21:35:14 +0000 initramfs-tools (0.7) breezy; urgency=low The "CONFORM!" release. * Make command line arguments almost match mkinitrd. The -m argument doesn't make any sense, so it's not supported. Add support for overriding the confdir, and specifying version no longer expects -v. * Add sed and grep to the initramfs for now. Will prune these eventually, but for now mdrun needs them. * Add mdadm and mdrun to the initramfs. * Add hookscript directories. * Call hookscripts Thanks to David Weinhall for the dependancy-based hookscripts. -- Jeff Bailey Thu, 9 Jun 2005 17:08:01 +0000 initramfs-tools (0.6) breezy; urgency=low The "Sweep! .... Off!" release. * Source in the net-${DEVICE}.conf file to get IP address information. * Add commandline parameters for NFSROOT and BOOT. * Moving loading of boot functions to after commandline parsing. * Allow NFSROOT variable to be set to auto to pick up value from DHCP Server. -- Jeff Bailey Wed, 1 Jun 2005 12:02:40 -0400 initramfs-tools (0.5) breezy; urgency=low The "Climbing to the horizons" release. * Update for newer udev, call "udevstart" rather than "udev udevstart" * /etc/mkinitramfs/modules should not be a conffile. * Support busybox. * Fix bug where -k would delete the tmp files, and otherwise it would keep them. * Handle # for comments in the modules file. * arch:all, not arch:any -- Jeff Bailey Tue, 31 May 2005 15:17:56 -0400 initramfs-tools (0.4) breezy; urgency=low * First upload to Ubuntu. * Handle glibc compiled udev for now. -- Jeff Bailey Tue, 24 May 2005 14:30:07 +0000 initramfs-tools (0.3) unstable; urgency=low * Fix init and root variables -- Jeff Bailey Sat, 29 Jan 2005 17:49:08 -0500 initramfs-tools (0.2) unstable; urgency=low * Include the modules in the initrd * Drop the .ko ending from the module loads. * Actually chain to the sub scripts. * kilbc is now named properly * First cut of an NFS root implementation -- Jeff Bailey Fri, 28 Jan 2005 16:50:53 -0500 initramfs-tools (0.1) unstable; urgency=low * Initial Release. -- Jeff Bailey Thu, 27 Jan 2005 15:23:52 -0500 initramfs-tools-0.103ubuntu4/debian/copyright0000664000000000000000000000207111762034302016241 0ustar This package was debianized by Jeff Bailey on Thu, 27 Jan 2005 15:23:52 -0500. The current Debian maintainer are maximilian attems and Michael Prokop . The current ubuntu release can be found at: http://archive.ubuntu.com/ubuntu/pool/main/i/initramfs-tools/ The Debian tree is maintained with "git" at: git://git.debian.org/git/kernel/initramfs-tools.git http://git.debian.org/?p=kernel/initramfs-tools.git;a=shortlog Authors: maximilian attems , Jeff Bailey , David Härdeman , Martin Michlmayr , Michael Prokop , Scott James Remnant Copyright: 2005 - 2011 maximilian attems 2005 Jeff Bailey 2005 - 2007 David Härdeman 2008 - 2010 Martin Michlmayr 2007 - 2011 Michael Prokop 2005 - 2009 Scott James Remnant License: GPL v2 or any later version On Debian systems, the complete text of the GNU General Public License version 2 can be found in `/usr/share/common-licenses/GPL-2'. initramfs-tools-0.103ubuntu4/debian/NEWS0000664000000000000000000000341411762034302015007 0ustar initramfs-tools (0.94) unstable; urgency=low To improve boot speed and avoid some complications, video drivers are no longer included in the initramfs by default (MODULES=most). -- maximilian attems Mon, 05 Apr 2010 08:10:34 +0200 initramfs-tools (0.76) unstable; urgency=low This release features nfs auto detection in the initramfs. The boot paramaters are parsed according to the linux source Documentation/kernel-parameters.txt and more specifically Documentation/nfsroot.txt. The initramfs-tools(8) manpage documents the parsed boot parameter. Note that the undocumented and non compliant nfsoption bootarg got dropped. -- maximilian attems Wed, 23 Aug 2006 08:47:26 +0200 initramfs-tools (0.61) unstable; urgency=low This release moves the initramfs-tools confdir from /etc/mkinitramfs to /etc/initramfs-tools. Packages are encouraged to ship files as scripts under /usr/share/initramfs-tools. Local tests behaved fine, but be warned that this could potentially cause boot troubles on upgrade. -- maximilian attems Wed, 21 Jun 2006 09:16:01 +0200 initramfs-tools (0.10) breezy; urgency=low This release includes hardware auto detection in the initramfs. This means two things in particular that are important: 1) the resulting initramfs will be huge. Like 10 megs huge. I will shrink it down once it's correct. If you're on an arch that doesn't like >4mb initramfs', then this won't boot. 2) Your network drivers are loaded in the initramfs, so hotplug won't see a network event, so ifup won't be run. This will be fixed shortly in hotplug. -- Jeff Bailey Fri, 17 Jun 2005 15:17:06 +0000 initramfs-tools-0.103ubuntu4/debian/initramfs-tools.manpages0000664000000000000000000000015211762034302021153 0ustar lsinitramfs.8 mkinitramfs.8 initramfs.conf.5 initramfs-tools.8 update-initramfs.8 update-initramfs.conf.5 initramfs-tools-0.103ubuntu4/debian/initramfs-tools.install0000664000000000000000000000074011762034302021031 0ustar lsinitramfs usr/bin mkinitramfs usr/sbin init usr/share/initramfs-tools scripts usr/share/initramfs-tools conf/initramfs.conf etc/initramfs-tools conf/update-initramfs.conf etc/initramfs-tools hooks usr/share/initramfs-tools hook-functions usr/share/initramfs-tools conf/modules usr/share/initramfs-tools update-initramfs usr/sbin debian/script usr/share/bug/initramfs-tools debian/lintian/initramfs-tools usr/share/lintian/overrides kernel etc bash_completion.d etc initramfs-tools-0.103ubuntu4/debian/initramfs-tools.doc-base0000664000000000000000000000052411762034302021040 0ustar Document: initramfs-maintainer Title: Maintainer documentation for initramfs-tools Author: Michael Prokop Abstract: This document describes the workflow of the initramfs-tools maintainers. Section: Debian Format: HTML Index: /usr/share/doc/initramfs-tools/maintainer-notes.html Files: /usr/share/doc/initramfs-tools/maintainer-notes.html initramfs-tools-0.103ubuntu4/debian/README0000664000000000000000000000046511762034302015173 0ustar initramfs-tools =============== This package is a work in progress towards the replacement of the initrd system with an initramfs system. The goals include using klibc for all earlyspace tools, an integrated udev and an integrated hotplug. See the TODO file for a current status. Jeff Bailey - 2005-04-24 initramfs-tools-0.103ubuntu4/debian/source/0000775000000000000000000000000012120217514015603 5ustar initramfs-tools-0.103ubuntu4/debian/source/format0000664000000000000000000000001511762034302017015 0ustar 3.0 (native) initramfs-tools-0.103ubuntu4/debian/control0000664000000000000000000000342512106364303015715 0ustar Source: initramfs-tools Section: utils Priority: optional Uploaders: maximilian attems , Michael Prokop Maintainer: Ubuntu Kernel Team XSBC-Original-Maintainer: Debian kernel team Build-Depends: debhelper (>= 7.0.50~), pkg-config, libudev-dev Standards-Version: 3.9.2 Vcs-Browser: http://git.debian.org/?p=kernel/initramfs-tools.git Vcs-Git: git://git.debian.org/git/kernel/initramfs-tools.git Package: initramfs-tools Architecture: all Multi-Arch: foreign Depends: initramfs-tools-bin (>= ${source:Version}), initramfs-tools-bin (<< ${source:Version}.1~), klibc-utils (>= 2.0-1~), busybox-initramfs (>= 1:1.13.3-1ubuntu5), cpio, module-init-tools, udev (>= 147~-5), findutils (>= 4.2.24), util-linux (>> 2.15~rc1), ${misc:Depends} Suggests: bash-completion Provides: linux-initramfs-tool Conflicts: usplash (<< 0.5.50) Breaks: cryptsetup (<< 2:1.1.0-2.1), elilo (<< 3.12-3.1~), lilo (<< 22.8-8.2~), s390-tools (<< 1.8.3-2~), mountall (<< 2.0~) Description: tools for generating an initramfs This package contains tools to create and boot an initramfs for packaged 2.6 Linux kernel. The initramfs is a gzipped cpio archive. At boot time, the kernel unpacks that archive into RAM, mounts and uses it as initial root file system. The mounting of the real root file system occurs in early user space. klibc provides utilities to setup root. Having the root on MD, LVM2, LUKS or NFS is also supported. Any boot loader with initrd support is able to load an initramfs archive. Package: initramfs-tools-bin Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: binaries used by initramfs-tools This package contains binaries used inside the initramfs images generated by initramfs-tools. initramfs-tools-0.103ubuntu4/debian/script0000775000000000000000000000247511762034302015550 0ustar #!/bin/sh exec >&3 echo "-- initramfs sizes" ls -lh /boot/initrd.img-2.6.* echo "-- /proc/cmdline" cat /proc/cmdline echo if [ -r /etc/initramfs-tools/conf.d/resume ]; then echo "-- resume" cat /etc/initramfs-tools/conf.d/resume fi echo "-- /proc/filesystems" grep -v nodev /proc/filesystems echo echo "-- lsmod" lsmod echo if [ -r /etc/initramfs-tools/modules ]; then echo "-- /etc/initramfs-tools/modules" sed 's/#.*$//;/^[[:space:]]*$/d' /etc/initramfs-tools/modules echo fi if [ -r /etc/kernel-img.conf ]; then echo "-- /etc/kernel-img.conf" cat /etc/kernel-img.conf echo fi if [ -r /etc/initramfs-tools/initramfs.conf ]; then echo "-- /etc/initramfs-tools/initramfs.conf" sed 's/#.*$//;/^[[:space:]]*$/d' /etc/initramfs-tools/initramfs.conf echo fi if [ -r /etc/initramfs-tools/update-initramfs.conf ]; then echo "-- /etc/initramfs-tools/update-initramfs.conf" sed 's/#.*$//;/^[[:space:]]*$/d' /etc/initramfs-tools/update-initramfs.conf echo fi if [ -r /etc/crypttab ]; then echo "-- /etc/crypttab" cat /etc/crypttab echo fi if [ -r /proc/mdstat ]; then echo "-- /proc/mdstat" cat /proc/mdstat echo fi if grep -rq "MODULES=dep" /etc/initramfs-tools/ ; then echo "-- /sys/block" ls /sys/block echo fi echo "-- mkinitramfs hooks" ls /usr/share/initramfs-tools/hooks /etc/initramfs-tools/hooks/ echo initramfs-tools-0.103ubuntu4/debian/initramfs-tools.docs0000664000000000000000000000004311762034302020307 0ustar HACKING docs/maintainer-notes.html initramfs-tools-0.103ubuntu4/debian/TODO0000664000000000000000000000065711762034302015006 0ustar TODO ==== o Grep for TODO and FIXME and do those. =) o Exclude list of hooks for admin. o Easier generation for remote boxes, see #570522. o "Fix" sed magic for lib dependence, copy_exec, maybe use dracut copy logic. o root loop support. o MODULES=dep md replace awk magic with proper parsing. -> WIP, check o Eliminate ?udev?, ?klibc?, busybox (-> glibc). o Support expanding symlinks, see #506540 + #338405 initramfs-tools-0.103ubuntu4/debian/initramfs-tools.examples0000664000000000000000000000010411762034302021173 0ustar conf/modules docs/example_script docs/example_hook docs/framebuffer initramfs-tools-0.103ubuntu4/debian/initramfs-tools-bin.install0000664000000000000000000000013211762034302021572 0ustar src/wait-for-root usr/lib/initramfs-tools/bin src/rzscontrol usr/lib/initramfs-tools/bin initramfs-tools-0.103ubuntu4/debian/initramfs-tools.dirs0000664000000000000000000000110111762034302020314 0ustar etc/initramfs-tools/scripts/init-bottom etc/initramfs-tools/scripts/init-premount etc/initramfs-tools/scripts/init-top etc/initramfs-tools/scripts/local-bottom etc/initramfs-tools/scripts/local-premount etc/initramfs-tools/scripts/local-top etc/initramfs-tools/scripts/nfs-bottom etc/initramfs-tools/scripts/nfs-premount etc/initramfs-tools/scripts/nfs-top etc/initramfs-tools/scripts/panic etc/initramfs-tools/hooks etc/initramfs-tools/conf.d usr/share/initramfs-tools/conf.d usr/share/initramfs-tools/conf-hooks.d usr/share/initramfs-tools/modules.d /var/lib/initramfs-tools initramfs-tools-0.103ubuntu4/lsinitramfs0000775000000000000000000000137711762034302015355 0ustar #!/bin/sh set -eu usage() { echo "Usage: $(basename $0) " } if [ "$#" -eq 0 ] ; then usage >&2 exit 1 fi cpio_args="--extract --quiet --list" 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 eval set -- "$OPTIONS" while true; do case "$1" in -h|--help) usage exit 0 ;; -l|--long) cpio_args="${cpio_args:+${cpio_args} --verbose}" shift ;; --) shift break ;; *) echo "Internal error!" >&2 exit 1 esac done for initramfs in "$@" ; do if ! [ -r "${initramfs}" ] ; then echo "Specified file could not be read." >&2 exit 1 else echo "${initramfs}" zcat "${initramfs}" | cpio ${cpio_args} fi done initramfs-tools-0.103ubuntu4/mkinitramfs.80000664000000000000000000000711711762034302015507 0ustar .TH MKINITRAMFS 8 "2010/04/07" "Linux" "mkinitramfs manual" .SH NAME mkinitramfs \- low-level tool for generating an initramfs image .SH SYNOPSIS .B mkinitramfs .RB [ \-c .IR compress ] .RB [ \-d .IR confdir ] .RB [ \-k ] .RB \-o .IR outfile .RB [ \-r .IR root ] .RB [ \-v ] .RI [ version ] .B mkinitramfs .RB [ \-\-supported-host-version= .IR hversion ] .B mkinitramfs .RB [ \-\-supported-target-version= .IR tversion ] .SH DESCRIPTION The .B mkinitramfs script generates an initramfs image. The initramfs is a compressed cpio archive. The archive can be used on a different box of the same arch with the corresponding Linux kernel. .B mkinitramfs is meant for advanced usage. On your local box .B update-initramfs calls .B mkinitramfs with the relevant parameters. .B update-initramfs keeps sha1sum of generated initramfs. It takes care to generate backups and eventually runs the bootloader. At boot time, the kernel unpacks that archive into RAM disk, mounts and uses it as initial root file system. All finding of the root device happens in this early userspace. .SH OPTIONS .TP \fB \-c \fI compress Override the .B COMPRESS setting in .IR initramfs.conf . .TP \fB \-d \fI confdir Set an alternate configuration directory. .TP \fB \-k Keep the temporary directory used to make the image. .TP \fB \-o \fI outfile Write the image to .IR outfile . .TP \fB \-r \fI root Override the .B ROOT setting in .IR initramfs.conf . .TP \fB \-v Set the verbose mode output. .TP \fI version Set the kernel version of the initramfs image (defaults to the running kernel). .TP \fB\-\-supported-host-version=\fIhversion This option queries if mkinitramfs can create ramdisks on a running kernel of version .IR hversion . .TP \fB\-\-supported-target-version=\fItversion This option queries if mkinitramfs can create ramdisks for kernel version .IR tversion . .SH ENVIRONMENT .B mkinitramfs honours the .B TMPDIR environment variable. If set, it uses subdirectories in the given directory to create its temporary working directories. Else it uses .I /tmp as default value for that purpose. The given directory should be on a filesystem which allows the execution of files stored there, i.e. should not be mounted with the .B noexec mount option. .SH FILES .TP .I /etc/initramfs-tools/initramfs.conf The default configuration file for the script. See .BR initramfs.conf (5) for a description of the available configuration parameter. .TP .I /etc/initramfs-tools/modules Specified modules will be put in the generated image and loaded when the system boots. The format - one per line - is identical to that of .I /etc/modules, which is described in .BR modules (5). .TP .I /etc/initramfs-tools/conf.d The conf.d directory allows one to hardcode bootargs at initramfs build time via config snippets. This allows one to set ROOT or RESUME. This is especially useful for bootloaders, which do not pass an root bootarg. .TP .I /etc/initramfs-tools/DSDT.aml If this file exists, it will be appended to the initramfs in a way that causes it to be loaded by ACPI. .SH EXAMPLES Create an initramfs for current running kernel: .PP .B mkinitramfs -o ~/tmp/initramfs-$(uname -r) Create an initramfs for specific kernel and keep builddirs: .PP .B mkinitramfs -k -o ~/tmp/initramfs-2.6.21-686 2.6.21-686 Debug initramfs creation (check out written logfile) .PP .B sh -x mkinitramfs -o ~/tmp/initramfs-$(uname -r) 2> ~/tmp/log .SH AUTHOR The initramfs-tools are written by Maximilian Attems , Jeff Bailey and numerous others. .SH SEE ALSO .BR .IR initramfs.conf (5), .IR initramfs-tools (8), .IR update-initramfs (8). initramfs-tools-0.103ubuntu4/update-initramfs0000664000000000000000000002171411762034302016270 0ustar #!/bin/sh STATEDIR=/var/lib/initramfs-tools BOOTDIR=/boot CONF=/etc/initramfs-tools/update-initramfs.conf USETRIGGERS=true mode="" version="" update_initramfs=yes backup_initramfs=no set -e [ -r ${CONF} ] && . ${CONF} case "$DPKG_MAINTSCRIPT_PACKAGE" in linux-image-*) if [ -z "$INITRAMFS_TOOLS_KERNEL_HOOK" ]; then # kernel maintainer script called us directly; ignore # it and let the hook script handle it instead echo "update-initramfs: deferring update (hook will be called later)" exit 0 fi ;; ?*) if $USETRIGGERS \ && [ $# = 1 ] \ && [ x"$1" = x-u ] \ && dpkg-trigger --check-supported 2>/dev/null then if dpkg-trigger --no-await update-initramfs; then echo "update-initramfs: deferring update (trigger activated)" exit 0 fi fi ;; esac usage() { if [ -n "${1:-}" ]; then printf "${*}\n\n" >&2 fi cat >&2 << EOF Usage: ${0} [OPTION]... Options: -k [version] Specify kernel version or 'all' -c Create a new initramfs -u Update an existing initramfs -d Remove an existing initramfs -t Take over a custom initramfs with this one -b Set alternate boot directory -v Be verbose -h This message EOF exit 1 } # chroot check chrooted() { # borrowed from udev's postinst if [ "$(stat -c %d/%i /)" = "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then # the devicenumber/inode pair of / is the same as that of # /sbin/init's root, so we're *not* in a chroot and hence # return false. return 1 fi return 0 } mild_panic() { if [ -n "${1:-}" ]; then printf "${*}\n" >&2 fi exit 0 } panic() { if [ -n "${1:-}" ]; then printf "${*}\n" >&2 fi exit 1 } verbose() { if [ "${verbose}" = 1 ]; then printf "${*}\n" fi } version_exists() { [ -e "${STATEDIR}/${1}" ] && [ -e "${initramfs}" ] return $? } set_initramfs() { initramfs="${BOOTDIR}/initrd.img-${version}" } # backup initramfs while running backup_initramfs() { [ ! -r "${initramfs}" ] && return 0 initramfs_bak="${initramfs}.dpkg-bak" [ -r "${initramfs_bak}" ] && rm -f "${initramfs_bak}" ln -f "${initramfs}" "${initramfs_bak}" \ || cp -a "${initramfs}" "${initramfs_bak}" verbose "Keeping ${initramfs_bak}" } # keep booted initramfs backup_booted_initramfs() { initramfs_bak="${initramfs}.dpkg-bak" # first time run thus no backup [ ! -r "${initramfs_bak}" ] && return 0 # chroot with no /proc [ ! -r /proc/uptime ] && rm -f "${initramfs_bak}" && return 0 # no kept backup wanted [ "${backup_initramfs}" = "no" ] && rm -f "${initramfs_bak}" && return 0 # no backup yet if [ ! -r "${initramfs}.bak" ]; then mv -f ${initramfs_bak} "${initramfs}.bak" verbose "Backup ${initramfs}.bak" return 0 fi # keep 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}) fi if [ -n "${boot_initramfs}" ]; then mv -f "${initramfs_bak}" "${initramfs}.bak" verbose "Backup ${initramfs}.bak" return 0 fi verbose "Removing current backup ${initramfs_bak}" rm -f ${initramfs_bak} } # nuke generated copy remove_initramfs_bak() { [ -z "${initramfs_bak:-}" ] && return 0 rm -f "${initramfs_bak}" verbose "Removing ${initramfs_bak}" } generate_initramfs() { echo "update-initramfs: Generating ${initramfs}" OPTS="-o" if [ "${verbose}" = 1 ]; then OPTS="-v ${OPTS}" fi if mkinitramfs ${OPTS} "${initramfs}.new" "${version}"; then mv -f "${initramfs}.new" "${initramfs}" set_sha1 else mkinitramfs_return="$?" remove_initramfs_bak rm -f "${initramfs}.new" if [ "$mkinitramfs_return" = "2" ]; then # minversion wasn't met, exit 0 exit 0 fi echo "update-initramfs: failed for ${initramfs} with $mkinitramfs_return." >&2 exit $mkinitramfs_return fi } # lilo call run_lilo() { # show lilo errors on failure if ! lilo -t > /dev/null 2>&1 ; then echo "ERROR lilo fails for new ${initramfs}:" >&2 echo lilo -t fi lilo } # Invoke bootloader run_bootloader() { # invoke policy conformant bootloader hooks if [ -d /etc/initramfs/post-update.d/ ]; then run-parts --arg=${version} --arg=${initramfs} \ /etc/initramfs/post-update.d/ return 0 fi } compare_sha1() { sha1sum "${initramfs}" | diff "${STATEDIR}/${version}" - >/dev/null 2>&1 return $? } # Note that this must overwrite so that updates work. set_sha1() { sha1sum "${initramfs}" > "${STATEDIR}/${version}" } delete_sha1() { rm -f "${STATEDIR}/${version}" } # ro /boot is not modified ro_boot_check() { # check irrelevant inside of a chroot if [ ! -r /proc/mounts ] || chrooted; then return 0 fi boot_opts=$(awk '/boot/{if ((match($4, /^ro/) || match($4, /,ro/)) \ && $2 == "/boot") print "ro"}' /proc/mounts) if [ -n "${boot_opts}" ]; then echo "WARNING: /boot is ro mounted." echo "update-initramfs: Not updating ${initramfs}" exit 0 fi } get_sorted_versions() { version_list="" for gsv_x in "${STATEDIR}"/*; do gsv_x="$(basename "${gsv_x}")" if [ "${gsv_x}" = '*' ]; then return 0 fi worklist="" for gsv_i in $version_list; do if dpkg --compare-versions "${gsv_x}" '>' "${gsv_i}"; then worklist="${worklist} ${gsv_x} ${gsv_i}" gsv_x="" else worklist="${worklist} ${gsv_i}" fi done if [ "${gsv_x}" != "" ]; then worklist="${worklist} ${gsv_x}" fi version_list="${worklist}" done verbose "Available versions: ${version_list}" } set_current_version() { if [ -f /boot/initrd.img-`uname -r` ]; then version=`uname -r` fi } set_linked_version() { linktarget= if [ -e /initrd.img ] && [ -L /initrd.img ]; then linktarget="$(basename "$(readlink /initrd.img)")" fi if [ -e /boot/initrd.img ] && [ -L /boot/initrd.img ]; then linktarget="$(basename "$(readlink /boot/initrd.img)")" fi if [ -z "${linktarget}" ]; then return fi version="${linktarget##initrd.img-}" } set_highest_version() { get_sorted_versions if [ -z "${version_list}" ]; then version= return fi set -- ${version_list} version=${1} } create() { if [ -z "${version}" ]; then usage "Create mode requires a version argument" fi set_initramfs if [ "${takeover}" = 0 ]; then if version_exists "${version}"; then panic "Cannot create version ${version}: already exists" fi if [ -e "${initramfs}" ]; then panic "${initramfs} already exists, cannot create." fi fi generate_initramfs } update() { if [ "${update_initramfs}" = "no" ]; then echo "update-initramfs: Not updating initramfs." exit 0 fi if [ -z "${version}" ]; then set_highest_version fi if [ -z "${version}" ]; then set_linked_version fi if [ -z "${version}" ]; then set_current_version fi if [ -z "${version}" ]; then verbose "Nothing to do, exiting." exit 0 fi set_initramfs ro_boot_check altered_check backup_initramfs generate_initramfs run_bootloader backup_booted_initramfs } delete() { if [ -z "${version}" ]; then usage "Delete mode requires a version argument" fi set_initramfs if [ "${takeover}" = 0 ]; then if [ ! -e "${initramfs}" ]; then panic "Cannot delete ${initramfs}, doesn't exist." fi if ! version_exists "${version}"; then panic "Cannot delete version ${version}: Not created by this utility." fi fi altered_check echo "update-initramfs: Deleting ${initramfs}" delete_sha1 rm -f "${initramfs}" "${initramfs}.bak" } # Check for update mode on existing and modified initramfs altered_check() { # No check on takeover [ "${takeover}" = 1 ] && return 0 if [ ! -e "${initramfs}" ]; then mild_panic "${initramfs} does not exist. Cannot update." fi if ! compare_sha1; then echo "update-initramfs: ${initramfs} has been altered." >&2 mild_panic "update-initramfs: Cannot update. Override with -t option." fi } # Defaults verbose=0 yes=0 # We default to takeover=1 in Ubuntu, but not Debian takeover=1 ## while getopts "k:cudyvtb:h?" flag; do case "${flag}" in k) version="${OPTARG}" ;; c) mode="c" ;; d) mode="d" ;; u) mode="u" ;; v) verbose="1" ;; y) yes="1" ;; t) takeover="1" ;; b) BOOTDIR="${OPTARG}" if [ ! -d "${BOOTDIR}" ]; then echo "Error: ${BOOTDIR} is not a directory." >&2 exit 1 fi ;; h|?) usage ;; esac done shift $((${OPTIND} - 1)) if [ $# -ne 0 ]; then echo "Invalid argument for option -k." >&2 usage fi # Validate arguments if [ -z "${mode}" ]; then usage "You must specify at least one of -c, -u, or -d." fi if [ "${version}" = "all" ] \ || ( [ "${update_initramfs}" = "all" ] && [ -z "${version}" ] ); then : FIXME check for --yes, and if not ask are you sure get_sorted_versions if [ -z "${version_list}" ]; then verbose "Nothing to do, exiting." exit 0 fi OPTS="-b ${BOOTDIR}" if [ "${verbose}" = "1" ]; then OPTS="${OPTS} -v" fi if [ "${takeover}" = "1" ]; then OPTS="${OPTS} -t" fi if [ "${yes}" = "1" ]; then OPTS="${OPTS} -y" fi for u_version in ${version_list}; do verbose "Execute: ${0} -${mode} -k \"${u_version}\" ${OPTS}" "${0}" -${mode} -k "${u_version}" ${OPTS} done exit 0 fi case "${mode}" in c) create ;; d) delete ;; u) update ;; esac initramfs-tools-0.103ubuntu4/kernel/0000775000000000000000000000000012120217514014341 5ustar initramfs-tools-0.103ubuntu4/kernel/postinst.d/0000775000000000000000000000000012120217514016446 5ustar initramfs-tools-0.103ubuntu4/kernel/postinst.d/initramfs-tools0000775000000000000000000000153211762034302021532 0ustar #!/bin/sh -e version="$1" bootopt="" # passing the kernel version is required if [ -z "${version}" ]; then echo >&2 "W: initramfs-tools: ${DPKG_MAINTSCRIPT_PACKAGE:-kernel package} did not pass a version number" exit 2 fi # exit if custom kernel does not need an initramfs if [ -n "${KERNEL_PACKAGE_VERSION}" ] && [ "$INITRD" = 'No' ]; then exit 0 fi # absolute file name of kernel image may be passed as a second argument; # create the initrd in the same directory if [ -n "$2" ]; then bootdir=$(dirname "$2") bootopt="-b ${bootdir}" fi # avoid running multiple times if [ -n "$DEB_MAINT_PARAMS" ]; then eval set -- "$DEB_MAINT_PARAMS" if [ -z "$1" ] || [ "$1" != "configure" ]; then exit 0 fi fi # we're good - create initramfs. update runs do_bootloader INITRAMFS_TOOLS_KERNEL_HOOK=1 update-initramfs -c -t -k "${version}" ${bootopt} >&2 initramfs-tools-0.103ubuntu4/kernel/postrm.d/0000775000000000000000000000000012120217514016107 5ustar initramfs-tools-0.103ubuntu4/kernel/postrm.d/initramfs-tools0000775000000000000000000000145611762034302021200 0ustar #!/bin/sh -e version="$1" bootopt="" # passing the kernel version is required if [ -z "${version}" ]; then echo >&2 "W: initramfs-tools: ${DPKG_MAINTSCRIPT_PACKAGE:-kernel package} did not pass a version number" exit 0 fi # exit if custom kernel does not need an initramfs if [ -n "${KERNEL_PACKAGE_VERSION}" ] && [ "$INITRD" = 'No' ]; then exit 0 fi # absolute file name of kernel image may be passed as a second argument; # create the initrd in the same directory if [ -n "$2" ]; then bootdir=$(dirname "$2") bootopt="-b ${bootdir}" fi # avoid running multiple times if [ -n "$DEB_MAINT_PARAMS" ]; then eval set -- "$DEB_MAINT_PARAMS" if [ -z "$1" ] || [ "$1" != "remove" ]; then exit 0 fi fi # delete initramfs INITRAMFS_TOOLS_KERNEL_HOOK=1 update-initramfs -d -t -k "${version}" ${bootopt} >&2 initramfs-tools-0.103ubuntu4/conf/0000775000000000000000000000000012120217514014006 5ustar initramfs-tools-0.103ubuntu4/conf/update-initramfs.conf0000664000000000000000000000057211762034302020140 0ustar # # Configuration file for update-initramfs(8) # # # update_initramfs [ yes | all | no ] # # Default is yes # If set to all update-initramfs will update all initramfs # If set to no disables any update to initramfs beside kernel upgrade update_initramfs=yes # # backup_initramfs [ yes | no ] # # Default is no # If set to no leaves no .bak backup files. backup_initramfs=no initramfs-tools-0.103ubuntu4/conf/initramfs.conf0000664000000000000000000000316011762034302016654 0ustar # # initramfs.conf # Configuration file for mkinitramfs(8). See initramfs.conf(5). # # Note that configuration options from this file can be overridden # by config files in the /etc/initramfs-tools/conf.d directory. # # MODULES: [ most | netboot | dep | list ] # # most - Add most filesystem and all harddrive drivers. # # dep - Try and guess which modules to load. # # netboot - Add the base modules, network modules, but skip block devices. # # list - Only include modules from the 'additional modules' list # MODULES=most # # BUSYBOX: [ y | n ] # # Use busybox if available. # BUSYBOX=y # # COMPCACHE_SIZE: [ "x K" | "x M" | "x G" | "x %" ] # # Amount of RAM to use for RAM-based compressed swap space. # # An empty value - compcache isn't used, or added to the initramfs at all. # An integer and K (e.g. 65536 K) - use a number of kilobytes. # An integer and M (e.g. 256 M) - use a number of megabytes. # An integer and G (e.g. 1 G) - use a number of gigabytes. # An integer and % (e.g. 50 %) - use a percentage of the amount of RAM. # # You can optionally install the compcache package to configure this setting # via debconf and have userspace scripts to load and unload compcache. # COMPCACHE_SIZE="" # # COMPRESS: [ gzip | bzip2 | lzma | lzop | xz ] # COMPRESS=gzip # # NFS Section of the config. # # # BOOT: [ local | nfs ] # # local - Boot off of local media (harddrive, USB stick). # # nfs - Boot using an NFS drive as the root of the drive. # BOOT=local # # DEVICE: ... # # Specify a specific network interface, like eth0 # Overridden by optional ip= bootarg # DEVICE= # # NFSROOT: [ auto | HOST:MOUNT ] # NFSROOT=auto initramfs-tools-0.103ubuntu4/conf/modules0000664000000000000000000000036611762034302015411 0ustar # List of modules that you want to include in your initramfs. # They will be loaded at boot time in the order below. # # Syntax: module_name [args ...] # # You must run update-initramfs(8) to effect this change. # # Examples: # # raid1 # sd_mod initramfs-tools-0.103ubuntu4/src/0000775000000000000000000000000012247374500013661 5ustar initramfs-tools-0.103ubuntu4/src/rzscontrol.c0000664000000000000000000001122211762034302016234 0ustar /* * rzscontrol - Control ramzswap devices * * Copyright (C) 2008, 2009 Nitin Gupta * * This code is released using a dual license strategy: BSD/GPL * You can choose the licence that better fits your requirements. * * Released under the terms of 3-clause BSD License * Released under the terms of GNU General Public License Version 2.0 * * Project home: http://compcache.googlecode.com */ #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u32; typedef uint64_t u64; #include "ramzswap_ioctl.h" /* Flag set by '--verbose' */ static int verbose_flag; /* /dev/ramzswapX */ #define MAX_DEVICE_NAME_LEN 32 /* * 10 decimal digits can represent 2^32. * All input sizes are in KB, so 10 digits are sufficient. */ #define MAX_SIZE_LEN 10 #define VERBOSE(args...) do { \ if (verbose_flag) \ printf(args); \ } while (0) struct rzs_args { u64 disksize_kb; int init; int reset; int stats; }; void usage(void) { printf("Usage: rzscontrol {} []\n" "Example: rzscontrol /dev/ramzswap0 --init\n" "See rzscontrol manpage for details.\n"); } void show_stats(struct ramzswap_ioctl_stats *s) { #define K(x) ((x) >> 10) /* Basic stats */ printf( "DiskSize: %8" PRIu64 " kB\n", K(s->disksize) ); /* Extended stats */ printf( "NumReads: %8" PRIu64 "\n" "NumWrites: %8" PRIu64 "\n" "FailedReads: %8" PRIu64 "\n" "FailedWrites: %8" PRIu64 "\n" "InvalidIO: %8" PRIu64 "\n" "NotifyFree: %8" PRIu64 "\n" "ZeroPages: %8u\n" "GoodCompress: %8u %%\n" "NoCompress: %8u %%\n" "PagesStored: %8u\n" "PagesUsed: %8u\n" "OrigDataSize: %8" PRIu64 " kB\n" "ComprDataSize: %8" PRIu64 " kB\n" "MemUsedTotal: %8" PRIu64 " kB\n", s->num_reads, s->num_writes, s->failed_reads, s->failed_writes, s->invalid_io, s->notify_free, s->pages_zero, s->good_compress_pct, s->pages_expand_pct, s->pages_stored, s->pages_used, K(s->orig_data_size), K(s->compr_data_size), K(s->mem_used_total) ); } int do_ioctl(int fd, int argc, struct rzs_args *args) { int ret = 0; /* Print an error message if ioctl fails */ #define ON_ERR(str) do { \ int err; \ if (ret == -1) { \ err = errno; \ printf("%s: %s\n", str, strerror(err)); \ goto out; \ } \ } while (0) while (argc--) { if (args->disksize_kb) { VERBOSE("disksize_kb: %" PRIu64 "\n", args->disksize_kb); ret = ioctl(fd, RZSIO_SET_DISKSIZE_KB, &args->disksize_kb); args->disksize_kb = 0; ON_ERR("disksize_kb"); } if (args->init) { ret = ioctl(fd, RZSIO_INIT); args->init = 0; ON_ERR("init"); } if (args->reset) { ret = ioctl(fd, RZSIO_RESET); args->reset = 0; ON_ERR("reset"); } if (args->stats) { struct ramzswap_ioctl_stats s; memset(&s, 0, sizeof(s)); ret = ioctl(fd, RZSIO_GET_STATS, &s); args->stats = 0; ON_ERR("stats"); show_stats(&s); } } /* while (argc--) */ out: return ret; } int main(int argc, char *argv[]) { int fd, ret, opt, idx; struct rzs_args args; char dev_name[MAX_DEVICE_NAME_LEN]; if (argc < 3) { usage(); exit(0); } memset(&args, 0, sizeof(args)); strncpy(dev_name, argv[1], MAX_DEVICE_NAME_LEN - 1); dev_name[MAX_DEVICE_NAME_LEN - 1] = '\0'; fd = open(dev_name, O_NONBLOCK); if (fd == -1) { ret = errno; printf("Failed to open %s: %s\n", dev_name, strerror(ret)); return ret; } VERBOSE("device: %s\n", dev_name); ret = 0; while (1) { char *endptr = NULL; static struct option long_options[] = { { "disksize_kb", required_argument, 0, 'd' }, { "init", no_argument, 0, 'i' }, { "reset", no_argument, 0, 'r' }, { "stats", no_argument, 0, 's' }, { "verbose", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, { NULL, no_argument, NULL, 0 } }; opt = getopt_long(argc, argv, "m:d:b:irsvh", long_options, &idx); if (opt == -1) break; switch (opt) { case 'd': if (strnlen(optarg, MAX_SIZE_LEN + 1) > MAX_SIZE_LEN) { printf("disksize_kb: %s\n", strerror(EOVERFLOW)); ret = -EOVERFLOW; goto out; } args.disksize_kb = strtoul(optarg, &endptr, 10); break; case 's': args.stats = 1; break; case 'i': args.init = 1; break; case 'r': args.reset = 1; break; case 'v': verbose_flag = 1; break; case 'h': usage(); break; case '?': usage(); ret = -EINVAL; goto out; default: /* We never reach here */ break; } } ret = do_ioctl(fd, argc - 2, &args); out: close(fd); return ret; } initramfs-tools-0.103ubuntu4/src/Makefile0000664000000000000000000000067511762034302015323 0ustar PKG_CONFIG = pkg-config UDEV_CFLAGS = $(shell $(PKG_CONFIG) --cflags libudev) UDEV_LIBS = $(shell $(PKG_CONFIG) --libs libudev) CC = gcc CFLAGS = -g -Wall -O2 $(UDEV_CFLAGS) LDFLAGS = .PHONY: all all: wait-for-root rzscontrol wait-for-root: wait-for-root.o $(CC) $(LDFLAGS) -o $@ $< $(UDEV_LIBS) rzscontrol: rzscontrol.o $(CC) $(LDFLAGS) -o $@ $< .PHONY: clean clean: rm -f wait-for-root.o wait-for-root rzscontrol.o rzscontrol core *~ initramfs-tools-0.103ubuntu4/src/wait-for-root.c0000664000000000000000000001167212247374474016557 0ustar #include #include #include #include #include #include #include #include #include #include #include static int device_queued (struct udev *udev, const char *path); static int matching_device (struct udev_device *device, const char *path); static void alarm_handler (int signum); int main (int argc, char *argv[]) { const char * devpath; char path[PATH_MAX]; int timeout; struct udev * udev; struct udev_monitor *udev_monitor; struct stat devstat; struct udev_device * udev_device; const char * type; int flags; if (argc != 3) { fprintf (stderr, "Usage: %s DEVICE TIMEOUT\n", argv[0]); exit (2); } devpath = argv[1]; if (! strncmp (devpath, "UUID=", 5)) { strcpy (path, "/dev/disk/by-uuid/"); strcat (path, devpath + 5); } else if (! strncmp (devpath, "LABEL=", 6)) { strcpy (path, "/dev/disk/by-label/"); strcat (path, devpath + 6); } else { strcpy (path, devpath); } timeout = atoi (argv[2]); signal (SIGALRM, alarm_handler); alarm (timeout); /* Connect to the udev monitor first; if we stat() first, the * event might happen between the stat() and the time we actually * get hooked up. */ udev = udev_new (); udev_monitor = udev_monitor_new_from_netlink (udev, "udev"); udev_monitor_filter_add_match_subsystem_devtype (udev_monitor, "block", NULL); udev_monitor_enable_receiving (udev_monitor); udev_monitor_set_receive_buffer_size(udev_monitor, 128*1024*1024); /* If the device is not being processed, check to see whether it * exists already on the filesystem. If this is true, we don't need * to wait for it can obtain the filesystem type by looking up the * udevdb record by major/minor. */ if ((! device_queued (udev, devpath)) && (stat (path, &devstat) == 0) && S_ISBLK (devstat.st_mode)) { udev_device = udev_device_new_from_devnum (udev, 'b', devstat.st_rdev); if (udev_device) { type = udev_device_get_property_value (udev_device, "ID_FS_TYPE"); if (type) { printf ("%s\n", type); udev_device_unref (udev_device); goto exit; } udev_device_unref (udev_device); } } /* udev monitor socket is nonblocking by default, but we want to wait * for events */ flags = fcntl (udev_monitor_get_fd (udev_monitor), F_GETFL, 0); flags &= ~O_NONBLOCK; fcntl (udev_monitor_get_fd (udev_monitor), F_SETFL, flags); /* When the device doesn't exist yet, or is still being processed * by udev, use the monitor socket to wait it to be done. */ while (1) { /* even though we use a blocking socket this might still fail * due to ENOBUFS or similar. */ while ((udev_device = udev_monitor_receive_device (udev_monitor)) == NULL) sleep (1); if (matching_device (udev_device, devpath)) { type = udev_device_get_property_value (udev_device, "ID_FS_TYPE"); if (type) { printf ("%s\n", type); udev_device_unref (udev_device); goto exit; } } udev_device_unref (udev_device); } exit: udev_monitor_unref (udev_monitor); udev_unref (udev); exit (0); } static int device_queued (struct udev *udev, const char * devpath) { struct udev_queue * udev_queue; struct udev_list_entry *queue_entry; int found = 0; udev_queue = udev_queue_new (udev); for (queue_entry = udev_queue_get_queued_list_entry (udev_queue); queue_entry != NULL; queue_entry = udev_list_entry_get_next (queue_entry)) { const char * syspath; struct udev_device *udev_device; syspath = udev_list_entry_get_name (queue_entry); udev_device = udev_device_new_from_syspath (udev, syspath); if (udev_device) { if (matching_device (udev_device, devpath)) found = 1; udev_device_unref (udev_device); } } udev_queue_unref (udev_queue); return found; } static int matching_device (struct udev_device *device, const char * path) { const char * devnode; struct udev_list_entry *devlinks_entry; /* Match by name */ devnode = udev_device_get_devnode (device); if (devnode && (! strcmp (path, devnode))) return 1; /* Match by UUID */ if (! strncmp (path, "UUID=", 5)) { const char *uuid; uuid = udev_device_get_property_value (device, "ID_FS_UUID"); if (uuid && (! strcmp (path + 5, uuid))) return 1; } /* Match by LABEL */ if (! strncmp (path, "LABEL=", 6)) { const char *label; label = udev_device_get_property_value (device, "ID_FS_LABEL"); if (label && (! strcmp (path + 6, label))) return 1; } /* Match by symlink */ for (devlinks_entry = udev_device_get_devlinks_list_entry (device); devlinks_entry != NULL; devlinks_entry = udev_list_entry_get_next (devlinks_entry)) if (! strcmp (path, udev_list_entry_get_name (devlinks_entry))) return 1; return 0; } static void alarm_handler (int signum) { exit (1); } initramfs-tools-0.103ubuntu4/src/ramzswap_ioctl.h0000664000000000000000000000253311762034302017065 0ustar /* * Compressed RAM based swap device * * Copyright (C) 2008, 2009, 2010 Nitin Gupta * * This code is released using a dual license strategy: BSD/GPL * You can choose the licence that better fits your requirements. * * Released under the terms of 3-clause BSD License * Released under the terms of GNU General Public License Version 2.0 * * Project home: http://compcache.googlecode.com */ #ifndef _RAMZSWAP_IOCTL_H_ #define _RAMZSWAP_IOCTL_H_ struct ramzswap_ioctl_stats { u64 disksize; /* user specified or equal to backing swap * size (if present) */ u64 num_reads; /* failed + successful */ u64 num_writes; /* --do-- */ u64 failed_reads; /* should NEVER! happen */ u64 failed_writes; /* can happen when memory is too low */ u64 invalid_io; /* non-swap I/O requests */ u64 notify_free; /* no. of swap slot free notifications */ u32 pages_zero; /* no. of zero filled pages */ u32 good_compress_pct; /* no. of pages with compression ratio<=50% */ u32 pages_expand_pct; /* no. of incompressible pages */ u32 pages_stored; u32 pages_used; u64 orig_data_size; u64 compr_data_size; u64 mem_used_total; } __attribute__ ((packed, aligned(4))); #define RZSIO_SET_DISKSIZE_KB _IOW('z', 0, size_t) #define RZSIO_GET_STATS _IOR('z', 1, struct ramzswap_ioctl_stats) #define RZSIO_INIT _IO('z', 2) #define RZSIO_RESET _IO('z', 3) #endif initramfs-tools-0.103ubuntu4/scripts/0000775000000000000000000000000012120217514014550 5ustar initramfs-tools-0.103ubuntu4/scripts/panic/0000775000000000000000000000000012120217514015642 5ustar initramfs-tools-0.103ubuntu4/scripts/nfs0000664000000000000000000000336211762034302015270 0ustar # NFS filesystem mounting -*- shell-script -*- # FIXME This needs error checking retry_nr=0 # parse nfs bootargs and mount nfs do_nfsmount() { configure_networking # get nfs root from dhcp if [ "x${NFSROOT}" = "xauto" ]; then # check if server ip is part of dhcp root-path if [ "${ROOTPATH#*:}" = "${ROOTPATH}" ]; then NFSROOT=${ROOTSERVER}:${ROOTPATH} else NFSROOT=${ROOTPATH} fi # nfsroot=[:][,] elif [ -n "${NFSROOT}" ]; then # nfs options are an optional arg if [ "${NFSROOT#*,}" != "${NFSROOT}" ]; then NFSOPTS="-o ${NFSROOT#*,}" fi NFSROOT=${NFSROOT%%,*} if [ "${NFSROOT#*:}" = "$NFSROOT" ]; then NFSROOT=${ROOTSERVER}:${NFSROOT} fi fi if [ -z "${NFSOPTS}" ]; then NFSOPTS="-o retrans=10" fi [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-premount" run_scripts /scripts/nfs-premount [ "$quiet" != "y" ] && log_end_msg if [ ${readonly} = y ]; then roflag="-o ro" else roflag="-o rw" fi nfsmount -o nolock ${roflag} ${NFSOPTS} ${NFSROOT} ${rootmnt} } # NFS root mounting mountroot() { [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-top" run_scripts /scripts/nfs-top [ "$quiet" != "y" ] && log_end_msg modprobe nfs # For DHCP modprobe af_packet wait_for_udev 10 # Default delay is around 180s delay=${ROOTDELAY:-180} # loop until nfsmount succeeds do_nfsmount while [ ${retry_nr} -lt ${delay} ] && [ ! -e ${rootmnt}${init} ]; do [ "$quiet" != "y" ] && log_begin_msg "Retrying nfs mount" /bin/sleep 1 do_nfsmount retry_nr=$(( ${retry_nr} + 1 )) [ "$quiet" != "y" ] && log_end_msg done [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/nfs-bottom" run_scripts /scripts/nfs-bottom [ "$quiet" != "y" ] && log_end_msg } initramfs-tools-0.103ubuntu4/scripts/local0000664000000000000000000001021611762034302015570 0ustar # Local filesystem mounting -*- shell-script -*- pre_mountroot() { [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-top" run_scripts /scripts/local-top [ "$quiet" != "y" ] && log_end_msg # Don't wait for a root device that doesn't have a corresponding # device in /dev (ie, mtd0) if [ "${ROOT#/dev}" = "${ROOT}" ]; then return fi while [ -z "${FSTYPE}" ]; do FSTYPE=$(wait-for-root "${ROOT}" ${ROOTDELAY:-30}) # 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 return fi # Run failure hooks, hoping one of them can fix up the system # and we can restart the wait loop. If they all fail, abort # and move on to the panic handler and shell. if [ -z "${FSTYPE}" ] && ! try_failure_hooks; then break fi done # We've given up, but we'll let the user fix matters if they can while [ -z "${FSTYPE}" -a ! -e "${ROOT}" ]; do # give hint about renamed root case "${ROOT}" in /dev/hd*) suffix="${ROOT#/dev/hd}" major="${suffix%[[:digit:]]}" major="${major%[[:digit:]]}" if [ -d "/sys/block/sd${major}" ]; then echo "WARNING bootdevice may be renamed. Try root=/dev/sd${suffix}" fi ;; /dev/sd*) suffix="${ROOT#/dev/sd}" major="${suffix%[[:digit:]]}" major="${major%[[:digit:]]}" if [ -d "/sys/block/hd${major}" ]; then echo "WARNING bootdevice may be renamed. Try root=/dev/hd${suffix}" fi ;; esac echo "Gave up waiting for root device. Common problems:" echo " - Boot args (cat /proc/cmdline)" echo " - Check rootdelay= (did the system wait long enough?)" echo " - Check root= (did the system wait for the right device?)" echo " - Missing modules (cat /proc/modules; ls /dev)" panic "ALERT! ${ROOT} does not exist. Dropping to a shell!" done } mountroot() { pre_mountroot # Get the root filesystem type if not set if [ -z "${ROOTFSTYPE}" ]; then [ -n "${FSTYPE}" ] || FSTYPE=$(blkid -s TYPE -o value "${ROOT}") ROOTFSTYPE="${FSTYPE}" else FSTYPE=${ROOTFSTYPE} fi [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-premount" run_scripts /scripts/local-premount [ "$quiet" != "y" ] && log_end_msg if [ "${readonly}" = "y" ] && \ [ -z "$LOOP" ]; then roflag=-r else roflag=-w fi # FIXME This has no error checking [ -n "${FSTYPE}" ] && modprobe ${FSTYPE} # FIXME This has no error checking # Mount root mount ${roflag} ${FSTYPE:+-t ${FSTYPE} }${ROOTFLAGS} ${ROOT} ${rootmnt} mountroot_status="$?" if [ "$LOOP" ]; then if [ "$mountroot_status" != 0 ]; then if [ ${FSTYPE} = ntfs ] || [ ${FSTYPE} = vfat ]; then panic " Could not mount the partition ${ROOT}. This could also happen if the file system is not clean because of an operating system crash, an interrupted boot process, an improper shutdown, or unplugging of a removable device without first unmounting or ejecting it. To fix this, simply reboot into Windows, let it fully start, log in, run 'chkdsk /r', then gracefully shut down and reboot back into Windows. After this you should be able to reboot again and resume the installation. (filesystem = ${FSTYPE}, error code = $mountroot_status) " fi fi mkdir -p /host mount -o move ${rootmnt} /host while [ ! -e "/host/${LOOP#/}" ]; do panic "ALERT! /host/${LOOP#/} does not exist. Dropping to a shell!" done # Get the loop filesystem type if not set if [ -z "${LOOPFSTYPE}" ]; then eval $(fstype < "/host/${LOOP#/}") else FSTYPE="${LOOPFSTYPE}" fi if [ "$FSTYPE" = "unknown" ] && [ -x /sbin/blkid ]; then FSTYPE=$(/sbin/blkid -s TYPE -o value "/host/${LOOP#/}") [ -z "$FSTYPE" ] && FSTYPE="unknown" fi if [ ${readonly} = y ]; then roflag=-r else roflag=-w fi # FIXME This has no error checking modprobe loop modprobe ${FSTYPE} # FIXME This has no error checking mount ${roflag} -o loop -t ${FSTYPE} ${LOOPFLAGS} "/host/${LOOP#/}" ${rootmnt} if [ -d ${rootmnt}/host ]; then mount -o move /host ${rootmnt}/host fi fi [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-bottom" run_scripts /scripts/local-bottom [ "$quiet" != "y" ] && log_end_msg } initramfs-tools-0.103ubuntu4/scripts/init-top/0000775000000000000000000000000012120217514016313 5ustar initramfs-tools-0.103ubuntu4/scripts/init-top/keymap0000775000000000000000000000057111762034302017535 0ustar #!/bin/sh OPTION=FRAMEBUFFER PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac OPTS="-q" # Should terminal be in UTF8 mode? if [ -x /bin/kbd_mode ]; then /bin/kbd_mode -u OPTS="${OPTS} -u" fi # Load custom keymap if [ -x /bin/loadkeys -a -r /etc/boottime.kmap.gz ]; then loadkeys ${OPTS} /etc/boottime.kmap.gz fi initramfs-tools-0.103ubuntu4/scripts/init-top/blacklist0000775000000000000000000000075211762034302020220 0ustar #!/bin/sh PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac # blacklist vga16fb when vga= or video= given for x in $(cat /proc/cmdline); do case ${x} in vga=*|video=*) echo "blacklist vga16fb" >> /etc/modprobe.d/initramfs.conf ;; esac done # sanity check [ -z "${blacklist}" ] && exit 0 # write blacklist to modprobe.d IFS=',' for b in ${blacklist}; do echo "blacklist $b" >> /etc/modprobe.d/initramfs.conf done initramfs-tools-0.103ubuntu4/scripts/init-top/all_generic_ide0000775000000000000000000000053711762034302021336 0ustar #!/bin/sh PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac for x in $(cat /proc/cmdline); do case ${x} in all_generic_ide) modprobe ata_generic all_generic_ide=1 ;; all_generic_ide=*) if [ ${x#all_generic_ide=} ]; then modprobe ata_generic all_generic_ide=1 fi ;; esac done initramfs-tools-0.103ubuntu4/scripts/init-top/framebuffer0000775000000000000000000000606211762034302020534 0ustar #!/bin/sh OPTION=FRAMEBUFFER PREREQ="udev" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac # The options part of the kernel "video=" argument (i.e. everyting # after "video=:") has very inconsistent rules. # # Generally the following applies: # 1) options are comma-separated # 2) options can be in either of these three forms: # =, :, . # 3) the "mode" option has the form x[M][R][-][@][i][m] # and may or may not start with "mode=" # # When the options are used with modules, they need to be space-separated # and the following conversions are needed: # : -> = # -> =1 # -> mode= parse_video_opts() { local OPTS="$1" local IFS="," # Must be a line like video=:,[opt2]... if [ "${OPTS}" = "${OPTS%%:*}" ]; then return fi OPTS="${OPTS#*:}" for opt in ${OPTS}; do # Already in the "=" form if [ "${opt}" != "${opt#*=}" ]; then echo -n "$opt " # In the ":" form elif [ "${opt}" != "${opt#*:}" ]; then echo -n "${opt%:*}=${opt#*:} " # Presumably a modevalue without the "mode=" prefix elif [ "${opt}" != "${opt#[0-9]*x[0-9]}" ]; then echo -n "mode=$opt " # Presumably a boolean else echo -n "${opt}=1 " fi done } FB="" OPTS="" for x in $(cat /proc/cmdline); do case ${x} in vga=*) FB="vesafb"; OPTS=""; ;; video=*) FB=${x#*=} FB="${FB%%:*}" OPTS="$(parse_video_opts "${x}")" esac done # Map command line name to module name case ${FB} in matroxfb) FB=matroxfb_base ;; esac if [ -n "${FB}" ]; then # Some framebuffer devices need character devices :-/ udevadm settle MODPROBE_OPTIONS=-q modprobe ${FB} ${OPTS} # Wait for the framebuffer devices to be ready udevadm settle else # If we have no graphics devices yet, wait for udev to settle [ -d /sys/class/graphics/fbcon ] && \ [ -d /sys/class/graphics/fb0 ] && \ [ -d /sys/class/drm/card0 ] || udevadm settle # If we still have no graphics device, fall back to vesafb like # we do in the post-initramfs case in # /etc/init/udev-fallback-graphics.conf. # There is a higher risk of racing the regular video driver init # than there is in the post-initramfs case, because this is earlier # in boot and the kernel has had less time to finish probing the # video drivers; and if we probe vesafb when we aren't meant to it # will cause problems later. So just to be sure, add a sleep(1) # which seems to be enough time to let the drm interface get loaded. [ -d /sys/class/graphics/fbcon ] && \ [ -d /sys/class/graphics/fb0 ] && \ [ -d /sys/class/drm/card0 ] || sleep 1 if ! [ -d /sys/class/graphics/fbcon ] \ || ! [ -d /sys/class/graphics/fb0 ] \ || ! [ -d /sys/class/drm/card0 ] then modprobe -q vesafb 2>/dev/null udevadm settle fi fi # Force fb mode via /sys interface for x in $(cat /proc/cmdline); do case ${x} in fbmode=*) MODE=${x#*=} echo "$MODE" > /sys/class/graphics/fb0/mode ;; esac done initramfs-tools-0.103ubuntu4/scripts/local-premount/0000775000000000000000000000000012120217514017511 5ustar initramfs-tools-0.103ubuntu4/scripts/local-premount/resume0000775000000000000000000000231011762034302020736 0ustar #!/bin/sh PREREQ="" prereqs() { echo "$PREREQ" } case $1 in # get pre-requisites prereqs) prereqs exit 0 ;; esac if [ -z "${resume}" ]; then exit 0 fi case $resume in LABEL=*) resume="${resume#LABEL=}" # support any / in LABEL= path (escape to \x2f) case "${resume}" in */*) if command -v sed >/dev/null 2>&1; then resume="$(echo ${resume} | sed 's,/,\\x2f,g')" else if [ "${resume}" != "${resume#/}" ]; then resume="\x2f${resume#/}" fi if [ "${resume}" != "${resume%/}" ]; then resume="${resume%/}\x2f" fi IFS='/' newresume= for s in $resume; do newresume="${newresume:+${newresume}\\x2f}${s}" done unset IFS resume="${newresume}" fi esac resume="/dev/disk/by-label/${resume}" ;; UUID=*) resume="/dev/disk/by-uuid/${resume#UUID=}" ;; esac SWAPTYPE=$(wait-for-root "${resume}" ${RESUMEDELAY:-5}) case "${SWAPTYPE}" in swsuspend|s1suspend|s2suspend|ulsuspend|tuxonice) if [ -x /bin/plymouth ] && plymouth --ping; then plymouth message --text="Resuming from $resume" fi # hardcode path, uswsusp ships an resume binary too if [ -n "${resume_offset}" ]; then /bin/resume ${resume} ${resume_offset} else /bin/resume ${resume} fi ;; esac initramfs-tools-0.103ubuntu4/scripts/local-premount/fixrtc0000775000000000000000000000324111762034302020741 0ustar #!/bin/sh -e # initramfs local-premount script for fixrtc PREREQ="" # Output pre-requisites prereqs() { echo "$PREREQ" } case "$1" in prereqs) prereqs exit 0 ;; esac # use the fixrtc cmdline option in your bootloader to # automatically set the hardware clock to the date of # the last mount of your root filesystem to avoid fsck # to get confused by the superblock being in the future BROKEN_CLOCK="" ROOTDEV="" for x in $(cat /proc/cmdline); do case ${x} in root=*) value=${x#*=} # Find the device node path depending on the form of root= : case ${value} in UUID=*) ROOTDEV=/dev/disk/by-uuid/${value#UUID=} ;; LABEL=*) ROOTDEV=/dev/disk/by-label/${value#LABEL=} ;; *) ROOTDEV=${value} ;; esac ;; fixrtc) BROKEN_CLOCK=1 ;; esac done if [ -n "$BROKEN_CLOCK" -a -n "$ROOTDEV" ];then ROOTDISK=$(readlink -f "$ROOTDEV") TIMESTR=$(dumpe2fs -h "$ROOTDISK" 2>/dev/null|grep "Last mount time") TIME=${TIMESTR#*:} hwclock -s MOUNTTIME=$(date --utc --date "${TIME}" +%s) CURDATE=$(date --utc --date "$(date)" +%s) if [ "$MOUNTTIME" -gt "$CURDATE" ]; then date --set="${TIME} 1 minute" >/dev/null 2>&1 fi fi # This script is best-effort. If we couldn't fudge the clock as desired, # just try to carry on boot anyway: # It will probably fail, but we won't have made the situation any worse. exit 0 initramfs-tools-0.103ubuntu4/scripts/functions0000664000000000000000000002404212232302542016505 0ustar # -*- shell-script -*- _log_msg() { if [ "$quiet" = "y" ]; then return; fi printf "$@" } log_success_msg() { _log_msg "Success: $@\n" } log_failure_msg() { _log_msg "Failure: $@\n" } log_warning_msg() { _log_msg "Warning: $@\n" } log_begin_msg() { _log_msg "Begin: $@ ... " } log_end_msg() { _log_msg "done.\n" } # Add failure hook add_mountroot_fail_hook() { mkdir -p /tmp/mountroot-fail-hooks.d ln -s "$0" /tmp/mountroot-fail-hooks.d/"$1" } # Run failure hooks. # When a failure hook exits "1", it has not done anything to correct the # system. Exiting "0" means that something has been attempted to resolve # the lack of a root filesystem. # Hooks are run in lexigraphical order, and are responsible for removing # themselves if they should not re-run in a later cycle. When one exits # "0", the stack is stopped, so the caller can return to the main rootfs # wait loop. try_failure_hooks() { local hook # Disable usplash so text from hooks can be seen if [ -x /sbin/usplash_write ]; then /sbin/usplash_write "QUIT" fi chvt 1 if [ -x /bin/plymouth ] && plymouth --ping; then /bin/plymouth hide-splash > /dev/null 2>&1 fi for hook in /tmp/mountroot-fail-hooks.d/*; do if [ -x ${hook} ] && ${hook} mountfail; then return 0 fi done return 1 } panic() { if command -v chvt >/dev/null 2>&1; then chvt 1 fi echo "$@" # Disallow console access if [ -n "${panic}" ]; then echo "Rebooting automatically due to panic= boot argument" sleep ${panic} reboot fi modprobe i8042 modprobe atkbd modprobe usbhid run_scripts /scripts/panic REASON="$@" PS1='(initramfs) ' /bin/sh -i /dev/console 2>&1 } maybe_break() { if echo "${break:-}" | egrep -q "(,|^)$1(,|$)"; then panic "Spawning shell within the initramfs" fi } render() { eval "echo -n \${$@}" } set_initlist() { unset initlist for si_x in ${initdir}/*; do # skip empty dirs without warning [ "${si_x}" = "${initdir}/*" ] && return # only allow variable name chars case ${si_x#${initdir}/} in *[![:alnum:]\._-]*) [ "${verbose}" = "y" ] \ && echo "$si_x ignored: not alphanumeric or '_' file" continue ;; esac # skip non executable scripts if [ ! -x ${si_x} ]; then [ "${verbose}" = "y" ] \ && echo "$si_x ignored: not executable" continue fi # skip directories if [ -d ${si_x} ]; then [ "${verbose}" = "y" ] \ && echo "$si_x ignored: a directory" continue fi # skip bad syntax if ! sh -n ${si_x} ; then [ "${verbose}" = "y" ] \ && echo "$si_x ignored: bad syntax" continue fi initlist="${initlist:-} ${si_x#${initdir}/}" done } reduce_satisfied() { deplist="$(render array_${1})" unset tmpdeplist for rs_y in ${deplist}; do # check if there are alternatives case ${rs_y} in *\|*) OLD_IFS="$IFS" IFS="|" for rs_z in ${rs_y}; do IFS="$OLD_IFS" # only allow variable name chars case ${rs_z} in *[![:alnum:]\._-]*) IFS="|" continue ;; esac # skip non executable scripts if [ ! -x ${initdir}/${rs_z} ]; then IFS="|" continue fi # skip directories if [ -d ${initdir}/${rs_z} ]; then IFS="|" continue fi # skip bad syntax if ! sh -n ${initdir}/${rs_z}; then IFS="|" continue fi tmpdeplist="${tmpdeplist} ${rs_z}" break done IFS="$OLD_IFS" ;; *) # only allow variable name chars case ${rs_y} in *[![:alnum:]\._-]*) continue ;; esac # skip non executable scripts [ ! -x ${initdir}/${rs_y} ] && continue # skip directories [ -d ${initdir}/${rs_y} ] && continue # skip bad syntax sh -n ${initdir}/${rs_y} || continue tmpdeplist="${tmpdeplist} ${rs_y}" ;; esac done deplist=${tmpdeplist} for rs_x in ${runlist}; do pop_list_item ${rs_x} ${deplist} deplist=${tmppop} done eval array_${1}=\"${deplist}\" } get_prereqs() { set_initlist for gp_x in ${initlist}; do tmp=$(${initdir}/${gp_x} prereqs) eval array_${gp_x}=\"${tmp}\" done } count_unsatisfied() { set -- ${@} return ${#} } # Removes $1 from initlist pop_list_item() { item=${1} shift set -- ${@} unset tmppop # Iterate for pop in ${@}; do if [ ${pop} = ${item} ]; then continue fi tmppop="${tmppop} ${pop}" done } # This function generates the runlist, so we clear it first. reduce_prereqs() { unset runlist set -- ${initlist} i=$# # Loop until there's no more in the queue to loop through while [ ${i} -ne 0 ]; do oldi=${i} for rp_x in ${initlist}; do reduce_satisfied ${rp_x} count_unsatisfied $(render array_${rp_x}) cnt=${?} if [ ${cnt} -eq 0 ]; then runlist="${runlist} ${rp_x}" pop_list_item ${rp_x} ${initlist} initlist=${tmppop} i=$((${i} - 1)) fi done if [ ${i} -eq ${oldi} ]; then panic "PANIC: Circular dependancy. Exiting." fi done } get_prereq_pairs() { set_initlist for gp_x in ${initlist:-}; do echo ${gp_x} ${gp_x} prereqs=$(${initdir}/${gp_x} prereqs) for prereq in ${prereqs}; do echo ${prereq} ${gp_x} done done } call_scripts() { set -e for cs_x in ${runlist}; do [ -f ${initdir}/${cs_x} ] || continue if [ x"$1" = "xoptional" ]; then option=$(sed '/^OPTION=/!d;$d;s/^OPTION=//;s/[[:space:]]*$//' "${initdir}/${cs_x}") [ -z "${option}" ] || eval test -n \"\${$option}\" -a \"\${$option}\" != \"n\" || continue fi # mkinitramfs verbose output if [ "${verbose}" = "y" ]; then echo "Calling hook ${cs_x}" fi ${initdir}/${cs_x} && ec=$? || ec=$? # allow hooks to abort build: # (except for iscan, due to a widely-deployed third-party # package causing upgrade problems) if [ "$ec" -ne 0 ] && [ "${cs_x}" != iscan ] && \ [ "${cs_x}" != iscan-data ]; then echo "E: ${initdir}/${cs_x} failed with return $ec." # only errexit on mkinitramfs [ -n "${version}" ] && exit $ec fi # allow boot scripts to modify exported boot parameters if [ -e /conf/param.conf ]; then . /conf/param.conf fi done set +e } run_scripts() { initdir=${1} [ ! -d ${initdir} ] && return if [ -f ${initdir}/ORDER ]; then . ${initdir}/ORDER elif command -v tsort >/dev/null 2>&1; then runlist=$(get_prereq_pairs | tsort) call_scripts ${2:-} else get_prereqs reduce_prereqs call_scripts $2 fi } # Load custom modules first load_modules() { if [ -e /conf/modules ]; then cat /conf/modules | while read m; do # Skip empty lines if [ -z "$m" ]; then continue fi # Skip comments - d?ash removes whitespace prefix com=$(printf "%.1s" "${m}") if [ "$com" = "#" ]; then continue fi modprobe $m done fi } # lilo compatibility parse_numeric() { case $1 in "") return ;; /*) return ;; [0-9]*:[0-9]*) minor=$(echo ${1#*:} | sed -e 's/^0*//') major=$(echo ${1%:*} | sed -e 's/^0*//') ;; [A-Fa-f0-9]*) value=$(( 0x${1} )) minor=$(( ${value} % 256 )) major=$(( ${value} / 256 )) ;; *) return ;; esac if command -v udevd >/dev/null 2>&1; then ROOT=/dev/block/${major}:${minor} else mknod -m 600 /dev/root b ${major} ${minor} ROOT=/dev/root fi } # Parameter: device node to check # Echos fstype to stdout # Return value: indicates if an fs could be recognized get_fstype () { local FS FSTYPE FSSIZE RET FS="${1}" # blkid has a more complete list of file systems, # but fstype is more robust eval $(fstype "${FS}" 2> /dev/null) if [ "$FSTYPE" = "unknown" ] && command -v blkid >/dev/null 2>&1 ; then FSTYPE=$(blkid -o value -s TYPE "${FS}") elif [ "$FSTYPE" = "unknown" ] && [ -x /lib/udev/vol_id ]; then FSTYPE=$(/lib/udev/vol_id -t "${FS}" 2> /dev/null) fi RET=$? if [ -z "${FSTYPE}" ]; then FSTYPE="unknown" fi echo "${FSTYPE}" return ${RET} } configure_networking() { if [ -n "${BOOTIF}" ]; then # pxelinux sets BOOTIF to a value based on the mac address of the # network card used to PXE boot, so use this value for DEVICE rather # than a hard-coded device name from initramfs.conf. this facilitates # network booting when machines may have multiple network cards. # pxelinux sets BOOTIF to 01-$mac_address # strip off the leading "01-", which isn't part of the mac # address temp_mac=${BOOTIF#*-} # convert to typical mac address format by replacing "-" with ":" bootif_mac="" IFS='-' for x in $temp_mac ; do if [ -z "$bootif_mac" ]; then bootif_mac="$x" else bootif_mac="$bootif_mac:$x" fi done unset IFS # look for devices with matching mac address, and set DEVICE to # appropriate value if match is found. for device in /sys/class/net/* ; do if [ -f "$device/address" ]; then current_mac=$(cat "$device/address") if [ "$bootif_mac" = "$current_mac" ]; then DEVICE=${device##*/} break fi fi done fi # networking already configured thus bail out [ -n "${DEVICE}" ] && [ -e /run/net-"${DEVICE}".conf ] && return 0 # support ip options see linux sources # Documentation/filesystems/nfs/nfsroot.txt # Documentation/frv/booting.txt for ROUNDTTT in 2 3 4 6 9 16 25 36 64 100; do # The NIC is to be configured if this file does not exist. # Ip-Config tries to create this file and when it succeds # creating the file, ipconfig is not run again. for x in /run/net-"${DEVICE}".conf /run/net-*.conf ; do [ -e "$x" ] && break 2 done case ${IP} in none|off) # Do nothing ;; ""|on|any) # Bring up device ipconfig -t ${ROUNDTTT} "${DEVICE}" ;; dhcp|bootp|rarp|both) ipconfig -t ${ROUNDTTT} -c ${IP} -d "${DEVICE}" ;; *) ipconfig -t ${ROUNDTTT} -d $IP # grab device entry from ip option NEW_DEVICE=${IP#*:*:*:*:*:*} if [ "${NEW_DEVICE}" != "${IP}" ]; then NEW_DEVICE=${NEW_DEVICE%:*} else # wrong parse, possibly only a partial string NEW_DEVICE= fi if [ -n "${NEW_DEVICE}" ]; then DEVICE="${NEW_DEVICE}" fi ;; esac done # source ipconfig output if [ -n "${DEVICE}" ]; then # source specific bootdevice . /run/net-${DEVICE}.conf else # source any interface... # ipconfig should have quit after first response . /run/net-*.conf fi } # Wait for queued kernel/udev events wait_for_udev() { command -v udevadm >/dev/null 2>&1 || return 0 udevadm settle ${1:+--timeout=$1} } initramfs-tools-0.103ubuntu4/update-initramfs.conf.50000664000000000000000000000210211762034302017345 0ustar .TH UPDATE-INITRAMFS.CONF 5 "2010/04/05" "Linux" "update-initramfs.conf manual" .SH NAME update-initramfs.conf \- configuration file for update-initramfs .SH DESCRIPTION The configuration file allows one to disable the update action from .B update-initramfs. .SH GENERAL VARIABLES .TP \fB update_initramfs Default is \fIyes\fP for running the latest initramfs-tools hooks in the newest Linux image. Setting it to \fIall\fP updates any known initramfs. It is possible to set it to \fIno\fP for remote servers or boxes where conservative manners needs to be applied. This disables the \fBupdate_initramfs \-u\fP call. .TP \fB backup_initramfs If set \fBupdate_initramfs\fP keeps an .bak file of the previous initramfs. If unset the backup initramfs will not be kept. .SH FILES .TP .I /etc/initramfs-tools/update-initramfs.conf .SH AUTHOR The initramfs-tools are written by Maximilian Attems , Jeff Bailey and numerous others. .SH SEE ALSO .BR .IR initramfs.conf (5), .IR initramfs-tools (8), .IR mkinitramfs (8), .IR update-initramfs (8). initramfs-tools-0.103ubuntu4/init0000775000000000000000000001610512120216072013753 0ustar #!/bin/sh [ -d /dev ] || mkdir -m 0755 /dev [ -d /root ] || mkdir -m 0700 /root [ -d /sys ] || mkdir /sys [ -d /proc ] || mkdir /proc [ -d /tmp ] || mkdir /tmp mkdir -p /var/lock mount -t sysfs -o nodev,noexec,nosuid sysfs /sys mount -t proc -o nodev,noexec,nosuid proc /proc # Some things don't work properly without /etc/mtab. ln -sf /proc/mounts /etc/mtab grep -q '\' /proc/cmdline || echo "Loading, please wait..." # Note that this only becomes /dev on the real filesystem if udev's scripts # are used; which they will be, but it's worth pointing out if ! mount -t devtmpfs -o mode=0755 udev /dev; then echo "W: devtmpfs not available, falling back to tmpfs for /dev" mount -t tmpfs -o mode=0755 udev /dev [ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1 [ -e /dev/null ] || mknod /dev/null c 1 3 fi mkdir /dev/pts mount -t devpts -o noexec,nosuid,gid=5,mode=0620 devpts /dev/pts || true mount -t tmpfs -o "noexec,nosuid,size=10%,mode=0755" tmpfs /run mkdir /run/initramfs # compatibility symlink for the pre-oneiric locations ln -s /run/initramfs /dev/.initramfs # Export the dpkg architecture export DPKG_ARCH= . /conf/arch.conf # Set modprobe env export MODPROBE_OPTIONS="-qb" # Export relevant variables export ROOT= export ROOTDELAY= export ROOTFLAGS= export ROOTFSTYPE= export IP= export BOOT= export BOOTIF= export UBIMTD= export break= export init=/sbin/init export quiet=n export readonly=y export rootmnt=/root export debug= export panic= export blacklist= export resume= export resume_offset= export recovery= # mdadm needs hostname to be set. This has to be done before the udev rules are called! if [ -f "/etc/hostname" ]; then /bin/hostname -b -F /etc/hostname 2>&1 1>/dev/null fi # Bring in the main config . /conf/initramfs.conf for conf in conf/conf.d/*; do [ -f ${conf} ] && . ${conf} done . /scripts/functions # Parse command line options for x in $(cat /proc/cmdline); do case $x in init=*) init=${x#init=} ;; root=*) ROOT=${x#root=} case $ROOT in LABEL=*) ROOT="${ROOT#LABEL=}" # support any / in LABEL= path (escape to \x2f) case "${ROOT}" in */*) if command -v sed >/dev/null 2>&1; then ROOT="$(echo ${ROOT} | sed 's,/,\\x2f,g')" else if [ "${ROOT}" != "${ROOT#/}" ]; then ROOT="\x2f${ROOT#/}" fi if [ "${ROOT}" != "${ROOT%/}" ]; then ROOT="${ROOT%/}\x2f" fi IFS='/' newroot= for s in $ROOT; do newroot="${newroot:+${newroot}\\x2f}${s}" done unset IFS ROOT="${newroot}" fi esac ROOT="/dev/disk/by-label/${ROOT}" ;; UUID=*) ROOT="/dev/disk/by-uuid/${ROOT#UUID=}" ;; /dev/nfs) [ -z "${BOOT}" ] && BOOT=nfs ;; esac ;; rootflags=*) ROOTFLAGS="-o ${x#rootflags=}" ;; rootfstype=*) ROOTFSTYPE="${x#rootfstype=}" ;; rootdelay=*) ROOTDELAY="${x#rootdelay=}" case ${ROOTDELAY} in *[![:digit:].]*) ROOTDELAY= ;; esac ;; resumedelay=*) RESUMEDELAY="${x#resumedelay=}" ;; loop=*) LOOP="${x#loop=}" ;; loopflags=*) LOOPFLAGS="-o ${x#loopflags=}" ;; loopfstype=*) LOOPFSTYPE="${x#loopfstype=}" ;; cryptopts=*) cryptopts="${x#cryptopts=}" ;; nfsroot=*) NFSROOT="${x#nfsroot=}" ;; netboot=*) NETBOOT="${x#netboot=}" ;; ip=*) IP="${x#ip=}" ;; boot=*) BOOT=${x#boot=} ;; ubi.mtd=*) UBIMTD=${x#ubi.mtd=} ;; resume=*) RESUME="${x#resume=}" ;; resume_offset=*) resume_offset="${x#resume_offset=}" ;; noresume) noresume=y ;; panic=*) panic="${x#panic=}" case ${panic} in *[![:digit:].]*) panic= ;; esac ;; quiet) quiet=y ;; ro) readonly=y ;; rw) readonly=n ;; debug) debug=y quiet=n exec >/run/initramfs/initramfs.debug 2>&1 set -x ;; debug=*) debug=y quiet=n set -x ;; break=*) break=${x#break=} ;; break) break=premount ;; blacklist=*) blacklist=${x#blacklist=} ;; netconsole=*) netconsole=${x#netconsole=} ;; BOOTIF=*) BOOTIF=${x#BOOTIF=} ;; hwaddr=*) BOOTIF=${x#BOOTIF=} ;; recovery) recovery=y ;; esac done if [ -n "${noresume}" ]; then export noresume unset resume else resume=${RESUME:-} fi maybe_break top # export BOOT variable value for compcache, # so we know if we run from casper export BOOT # Don't do log messages here to avoid confusing graphical boots run_scripts /scripts/init-top maybe_break modules [ "$quiet" != "y" ] && log_begin_msg "Loading essential drivers" load_modules [ "$quiet" != "y" ] && log_end_msg [ -n "${netconsole}" ] && modprobe netconsole netconsole="${netconsole}" maybe_break premount [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/init-premount" run_scripts /scripts/init-premount [ "$quiet" != "y" ] && log_end_msg maybe_break mount log_begin_msg "Mounting root file system" . /scripts/${BOOT} parse_numeric ${ROOT} maybe_break mountroot mountroot log_end_msg maybe_break bottom [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/init-bottom" run_scripts /scripts/init-bottom [ "$quiet" != "y" ] && log_end_msg # Preserve information on old systems without /run on the rootfs if [ -d ${rootmnt}/run ]; then mount -n -o move /run ${rootmnt}/run else # The initramfs udev database must be migrated: if [ -d /run/udev ] && [ ! -d /dev/.udev ]; then mv /run/udev /dev/.udev fi # The initramfs debug info must be migrated: if [ -d /run/initramfs ] && [ ! -d /dev/.initramfs ]; then mv /run/initramfs /dev/.initramfs fi umount /run fi # Move virtual filesystems over to the real filesystem mount -n -o move /sys ${rootmnt}/sys mount -n -o move /proc ${rootmnt}/proc validate_init() { checktarget="${1}" # Work around absolute symlinks if [ -d "${rootmnt}" ] && [ -h "${rootmnt}${checktarget}" ]; then case $(readlink "${rootmnt}${checktarget}") in /*) checktarget="$(chroot ${rootmnt} readlink ${checktarget})" ;; esac fi # Make sure the specified init can be executed if [ ! -x "${rootmnt}${checktarget}" ]; then return 1 fi # Upstart uses /etc/init as configuration directory :-/ if [ -d "${rootmnt}${checktarget}" ]; then return 1 fi } # Check init bootarg if [ -n "${init}" ]; then if ! validate_init "$init"; then echo "Target filesystem doesn't have requested ${init}." init= fi fi # Common case: /sbin/init is present if [ ! -x "${rootmnt}/sbin/init" ]; then # ... if it's not available search for valid init if [ -z "${init}" ] ; then for inittest in /sbin/init /etc/init /bin/init /bin/sh; do if validate_init "${inittest}"; then init="$inittest" break fi done fi # No init on rootmount if ! validate_init "${init}" ; then panic "No init found. Try passing init= bootarg." fi fi maybe_break init # don't leak too much of env - some init(8) don't clear it # (keep init, rootmnt) unset debug unset MODPROBE_OPTIONS unset DPKG_ARCH unset ROOTFLAGS unset ROOTFSTYPE unset ROOTDELAY unset ROOT unset IP unset BOOT unset BOOTIF unset UBIMTD unset blacklist unset break unset noresume unset panic unset quiet unset readonly unset resume unset resume_offset # Chain to real filesystem exec run-init ${rootmnt} ${init} "$@" ${recovery:+--startup-event=recovery} <${rootmnt}/dev/console >${rootmnt}/dev/console 2>&1 panic "Could not execute run-init."