D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
thread-self
/
root
/
usr
/
share
/
initramfs-tools
/
hooks
/
Filename :
zz-busybox-initramfs
back
Copy
#!/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 [ -x $BB_BIN ] || exit 0 if [ -f /etc/initramfs-tools/initramfs.conf ]; then . /etc/initramfs-tools/initramfs.conf [ n = "$BUSYBOX" ] && exit 0 fi [ -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