こんばんは、芳賀です。 ディスクが SCSI 構成になっているマシンに Vine Linux 2.6 を インストールし、Vine Linux 2.6 r4 に上げた後で、カーネルを 2.4.25 にアップグレードしようと思ったのですが、その途中で、 mkinitrd で initrd を作成する時に以下のエラーが出ました。 # mkinitrd /boot/initrd-2.4.25.img 2.4.25 # find: /proc/scsi/usb-sto*: そのようなファイルやディレクトリはありません # basename: 引数の数が少なすぎます # 詳しくは `basename --help' を実行して下さい. そこで、[vine-users:063436] を参考に、以下のような変更を 加えたところ正常に終り、現在も問題なく使えています。 ただ、気になるのは、この方法が適切な修正かどうかということ です。そういう意味では、こういうのは適切なのでしょうか? % diff -u /sbin/mkinitrd.org /sbin/mkinitrd --- /sbin/mkinitrd.org 2004-03-03 08:32:26.000000000 +0900 +++ /sbin/mkinitrd 2004-03-03 08:37:19.000000000 +0900 @@ -20,7 +20,7 @@ # Preston Brown <pbrown@xxxxxxxxxx> -PATH=/sbin:$PATH +PATH=/sbin:/usr/sbin:$PATH export PATH VERSION=3.4.12 @@ -300,7 +300,7 @@ esc=$(echo $fs | sed 's,/,\\/,g') dev=$(mount | awk "/ on ${esc} / { print \$1 }" | sed 's/[0-9]*$//' | cut -d/ -f3) if [ "$(echo $dev | cut -c1-2)" = sd ]; then - if [ -z "$usbHosts" -a /proc/scsi/usb-storage-0 ]; then + if [ -z "$usbHosts" -a -e /proc/scsi/usb-storage-0 ]; then usbHosts=$(find /proc/scsi/usb-sto* -type f | xargs -n 1 basename) fi */usr/sbin を追加しないと、kudzu が見つからないというエラーになります。 --Haga