/usr/share/initramfs-tools/hooks/zz-busybox-initramfs is in busybox-initramfs 1:1.27.2-2ubuntu3.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #!/bin/sh
# This hook copies busybox binary into the initramfs directory
# and creates all necessary links to it.
# It should be placed last into the hooks directory, in order to
# not overwrite commands which are provided by other means.
set -e
case "${1:-}" in
prereqs) echo ""; exit 0;;
esac
BB_BIN=/usr/lib/initramfs-tools/bin/busybox
[ n = "$BUSYBOX" ] && exit 0
[ -r /usr/share/initramfs-tools/hook-functions ] || exit 0
. /usr/share/initramfs-tools/hook-functions
if [ -f $DESTDIR/bin/sh ] && cmp -s $DESTDIR/bin/sh $BB_BIN ; then
# initramfs copies busybox into /bin/sh, undo this
rm -f $DESTDIR/bin/sh
fi
rm -f $DESTDIR/bin/busybox # for compatibility with old initramfs
copy_exec $BB_BIN /bin/busybox
for alias in $($BB_BIN --list-long); do
alias="${alias#/}"
case "$alias" in
# strip leading /usr, we don't use it
usr/*) alias="${alias#usr/}" ;;
*/*) ;;
*) alias="bin/$alias" ;; # make it into /bin
esac
# Busybox is configured to prefer its own applets, so remove
# duplication from klibc.
name="${alias##*/}"
if [ -e "$DESTDIR/$alias" ] && cmp -s "/usr/lib/klibc/bin/$name" "$DESTDIR/$alias"; then
rm -f "$DESTDIR/$alias"
[ "${verbose}" = "y" ] && echo "Preferring busybox $alias over klibc" || true
fi
[ -e "$DESTDIR/$alias" ] || \
ln "$DESTDIR/bin/busybox" "$DESTDIR/$alias"
done
|