diff options
-rw-r--r-- | functions | 6 | ||||
-rw-r--r-- | init | 14 | ||||
-rw-r--r-- | install/base | 7 |
3 files changed, 15 insertions, 12 deletions
@@ -39,7 +39,7 @@ die () { echo "FATAL: ${@}" >&2; exit 1; } add_full_dir () { - if [ -d "${1}" -a "x${1}" != "x" ]; then + if [ "x${1}" != "x" -a -d "${1}" ]; then for f in ${1}/*; do if [ -d "${f}" ]; then add_full_dir "${f}" @@ -53,7 +53,7 @@ add_full_dir () add_dir () { #skip root directory and "." for relative directories... i.e. /foo/bar/./blah - if [ "${1}" -a "x${1}" != "x" -a "${1}" != "/" -a "${1}" != "." ]; then + if [ "x${1}" != "x" -a "${1}" != "/" -a "${1}" != "." ]; then if ! grep "dir ${1} " "${FILELIST}" 2>&1 > /dev/null; then add_dir $(dirname "${1}") msg " adding dir ${1}" @@ -174,7 +174,7 @@ add_binary () msg " adding '${type}' script, ensure proper interp exists..." add_file "${bin}" ${dest} ;; - *executable*) + *executable*|*shared\ object*) add_file "${bin}" ${dest} #note, this will also handle 'not a dynamic executable' spit out by # static binaries... the deps will produce nothing @@ -14,7 +14,7 @@ export CMDLINE # Used so hooks can override params to kinit export kinit_params="" export root="" -echo "/bin/modprobe" > /proc/sys/kernel/modprobe +echo "/sbin/modprobe" > /proc/sys/kernel/modprobe for cmd in $CMDLINE; do case "$cmd" in @@ -110,11 +110,11 @@ if [ ! -e "${root}" ]; then PS1="ramfs$ " /bin/sh -i msg "Rebooting..." /bin/reboot -else - msg ":: Initramfs Completed - control passing to kinit" - if [ -f "/message" ]; then - msg "$(cat /message)" - fi +fi + +msg ":: Initramfs Completed - control passing to kinit" +if [ -f "/message" ]; then + msg "$(cat /message)" fi #Special handling if udev is running @@ -125,6 +125,4 @@ if [ "x${udevpid}" != "x" ]; then fi -echo "/sbin/modprobe" > /proc/sys/kernel/modprobe - exec /bin/kinit -- "root=${root}" ${kinit_params} "${runlevel}" > /dev/null 2>&1 diff --git a/install/base b/install/base index 78fbc1d..d1fc19b 100644 --- a/install/base +++ b/install/base @@ -15,7 +15,12 @@ install () done for f in /usr/lib/klibc/bin/*; do - add_file $f /bin/$(basename $f) + if [ "$(basename $f)" = "modprobe" ]; then + # force putting modprobe in /sbin + add_file $f /sbin/$(basename $f) + else + add_file $f /bin/$(basename $f) + fi done add_file "/lib/initcpio/init" "/init" |