blob: d6ea94350f1758bf35567670483a9f5aa365f584 [file] [log] [blame]
#!/bin/bash
check() {
require_binaries busybox || return 1
return 0
}
depends() {
return 0
}
install_busybox_links() {
dir="${1}"
linkname="${2}"
(cd "${dracutsysrootdir?}${dir}" &&
for x in *; do
if [ "$(readlink "${x}")" = "${linkname}" ]; then
ln -sf "${linkname}" "${initdir?}/${dir}/${x}"
fi
done
)
}
install() {
inst_multiple /bin/busybox
# wrapper script for early console; will launch /sbin/init
# after having mounted devtmpfs
inst_multiple /init
if [ -e "${dracutsysrootdir?}/lib64" ]; then
ln -sf lib "${initdir?}/lib64"
ln -sf lib "${initdir?}/usr/lib64"
fi
if [ -e "${dracutsysrootdir?}/lib32" ]; then
ln -sf lib "${initdir?}/lib32"
ln -sf lib "${initdir?}/usr/lib32"
fi
install_busybox_links "/bin" "busybox"
install_busybox_links "/sbin" "../bin/busybox"
if [ ! -L "${dracutsysrootdir?}/bin" ]; then
install_busybox_links "/usr/bin" "../../bin/busybox"
install_busybox_links "/usr/sbin" "../../bin/busybox"
fi
inst_multiple \
/etc/inittab \
/etc/init.d/rcS \
/etc/init.d/rcK \
/etc/issue \
/etc/fstab \
/etc/group \
/etc/passwd \
/etc/shadow \
/etc/hostname
}