From 6e3bc94f2d9a8f5823aeac9bce5418caf2a1d2b8 Mon Sep 17 00:00:00 2001 From: Thomas Bächler Date: Sat, 12 May 2007 17:10:00 +0000 Subject: - adjusted all hooks for new modprobe path - added compatibility symlink /bin/modprobe - 0.5.14 release git-svn-id: http://projects.archlinux.org/svn/initramfs/mkinitcpio@206 880c04e9-e011-0410-abf7-b926e227c9cd --- functions | 11 +++++++++++ hooks/filesystems | 2 +- hooks/modload | 24 ++++++++++++------------ hooks/raid | 2 +- init | 4 ++-- install/base | 2 ++ 6 files changed, 29 insertions(+), 16 deletions(-) diff --git a/functions b/functions index 7b421d2..abe1cad 100644 --- a/functions +++ b/functions @@ -79,6 +79,7 @@ add_device () fi } +# what the hell does this do? add_symlink () { local fil dest dir @@ -95,6 +96,16 @@ add_symlink () #fail quietly } +add_symlink2 () +{ + add_dir $(dirname ${1}) + add_dir $(dirname ${2}) + if ! grep -q "slink ${1} " "${FILELIST}" 2>&1 >/dev/null; then + msg " adding link ${1} -> ${2}" + echo "slink ${1} ${2} 777 0 0" >> "${FILELIST}" + fi +} + add_file () { local fil lnk dir dest diff --git a/hooks/filesystems b/hooks/filesystems index a7c9916..ba29443 100644 --- a/hooks/filesystems +++ b/hooks/filesystems @@ -41,6 +41,6 @@ run_hook () echo "ERROR: root fs cannot be detected. Try using the rootfstype= kernel parameter." else kinit_params="${kinit_params} rootfstype=${FSTYPE}" - /bin/modprobe -q "${FSTYPE}" >/dev/null 2>&1 + /sbin/modprobe -q "${FSTYPE}" >/dev/null 2>&1 fi } diff --git a/hooks/modload b/hooks/modload index 6cf4037..41361c1 100644 --- a/hooks/modload +++ b/hooks/modload @@ -4,13 +4,13 @@ run_hook () msg ":: Begin manual module load" if [ -e "/sys/bus/pci/" ]; then msg -n "Loading pci bus modules..." - /bin/modprobe -a -q $(/bin/cat /sys/bus/pci/devices/*/modalias) >/dev/null 2>&1 + /sbin/modprobe -a -q $(/bin/cat /sys/bus/pci/devices/*/modalias) >/dev/null 2>&1 msg "done." fi if [ -e "/sys/bus/ide/devices/" ]; then msg -n "Loading ide modules..." - /bin/modprobe -q -a $(/bin/cat /sys/bus/ide/devices/*/modalias) >/dev/null 2>&1 + /sbin/modprobe -q -a $(/bin/cat /sys/bus/ide/devices/*/modalias) >/dev/null 2>&1 msg "done" fi @@ -20,25 +20,25 @@ run_hook () if [ -e "${d}/type" ]; then read m < "${d}/type" case "$m" in - 0) /bin/modprobe -q sd_mod 2>&1 >/dev/null ;; + 0) /sbin/modprobe -q sd_mod 2>&1 >/dev/null ;; # this below is take from the Arch udev rules 1) read vendor < "${d}/vendor" if [ "${vendor}" = "Onstream" ]; then read model < "${d}/model" case "$model" in - ADR*) /bin/modprobe -q st >/dev/null 2>&1;; - *) /bin/modprobe -q osst >/dev/null 2>&1;; + ADR*) /sbin/modprobe -q st >/dev/null 2>&1;; + *) /sbin/modprobe -q osst >/dev/null 2>&1;; esac else - /bin/modprobe -q st >/dev/null 2>&1 + /sbin/modprobe -q st >/dev/null 2>&1 fi ;; - 2|3) /bin/modprobe -q sg >/dev/null 2>&1;; - 4|5) /bin/modprobe -q sr_mod >/dev/null 2>&1;; - 6) /bin/modprobe -q sg >/dev/null 2>&1;; - 7) /bin/modprobe -q sd_mod >/dev/null 2>&1;; - 8|9) /bin/modprobe -q sg >/dev/null 2>&1;; - 14) /bin/modprobe -q sd_mod >/dev/null 2>&1;; + 2|3) /sbin/modprobe -q sg >/dev/null 2>&1;; + 4|5) /sbin/modprobe -q sr_mod >/dev/null 2>&1;; + 6) /sbin/modprobe -q sg >/dev/null 2>&1;; + 7) /sbin/modprobe -q sd_mod >/dev/null 2>&1;; + 8|9) /sbin/modprobe -q sg >/dev/null 2>&1;; + 14) /sbin/modprobe -q sd_mod >/dev/null 2>&1;; esac fi done diff --git a/hooks/raid b/hooks/raid index a22c1b6..8128cff 100644 --- a/hooks/raid +++ b/hooks/raid @@ -2,7 +2,7 @@ run_hook () { #TODO scan for these somehow... - /bin/modprobe -aq linear multipath raid0 raid1 raid456 raid10>/dev/null 2>&1 + /sbin/modprobe -aq linear multipath raid0 raid1 raid456 raid10>/dev/null 2>&1 # md= can be specified multiple times. The simplistic commandline # parsing does not handle this, so we will let mdassemble parse it /bin/mdassemble ${CMDLINE} diff --git a/init b/init index 1e1bcca..0cc2ece 100644 --- a/init +++ b/init @@ -57,7 +57,7 @@ fi if [ "x${earlymodules}" != "x" ]; then for m in $(replace "${earlymodules}" ','); do - /bin/modprobe -q $m > /dev/null 2>&1 + /sbin/modprobe -q $m > /dev/null 2>&1 done fi @@ -67,7 +67,7 @@ for m in $MODULES; do TST="" eval "TST=\$mod_${m}" if [ "${TST}" != "disabled" ]; then - /bin/modprobe -q $m > /dev/null 2>&1 + /sbin/modprobe -q $m > /dev/null 2>&1 fi done diff --git a/install/base b/install/base index d1fc19b..01d5a04 100644 --- a/install/base +++ b/install/base @@ -17,7 +17,9 @@ install () for f in /usr/lib/klibc/bin/*; do if [ "$(basename $f)" = "modprobe" ]; then # force putting modprobe in /sbin + # add symlink for compatibility add_file $f /sbin/$(basename $f) + add_symlink2 /bin/modprobe /sbin/modprobe else add_file $f /bin/$(basename $f) fi -- cgit v1.2.3-24-g4f1b