From: Harada kazutaka <kazutaka@xxxxxxxxxxxxxxxx> Date: Thu, 26 Aug 2004 02:09:11 +0900 kazutaka> もともとusb_mountスクリプトでは、"usb接続" の "ブロックデバイス" kazutaka> のみを対象としています。 kazutaka> その為、あえてusb-storageが(SCSIエミュレーションをして)扱っている kazutaka> デバイス以外は除外する必要があると考えて、このようにしてあります。 そうすると、採番でずれが発生するような気がします。 USB ストレージの場合、1 ホストアダプタで 1 ストレージ となっていますが、純粋な SCSI の場合、1 ホストアダプタ で n ストレージなのが普通です。 例えば 53C875 の IF に MO とスキャナを接続し、さらに メモリカードリーダを装着した場合、 [hane@localhost hane]$ ls -l /proc/scsi/ 合計 0 -r--r--r-- 1 root root 0 Aug 26 03:09 scsi dr-xr-xr-x 2 root root 0 Aug 26 03:09 sym53c8xx/ dr-xr-xr-x 2 root root 0 Aug 26 03:09 usb-storage-0/ となります。もし、53C875 に 2 台以上の HDD があるとま ずいと思えるのは、この為です。ですから私のダサイパッチ では、ハラダさんのオリジナルを拡張して /proc/scsi/* を 見るようにしてみました。 kazutaka> ここでは /dev/sd? と /dev/scd? のどちらになるのかを判別する為だけに kazutaka> $2を使用していますので、他のTypeで/dev/scd?になるものがある場合は kazutaka> 問題が起きるかもしれませんが、今のところそのような情報を持ち合わせていません。 kazutaka> もし御存じでしたら教えて頂けると助かります。 勿論 USB ストレージに限定すれば問題ありませんが、採 番のために全ての SCSI (に見える)デバイスをなめると問題 が出ます。先の環境ではこんな感じです。 [hane@localhost hane]$ cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 00 Id: 01 Lun: 00 Vendor: FUJITSU Model: M2513EL Rev: 0010 Type: Optical Device ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 02 Lun: 00 Vendor: Konica Model: SCANNER Qscan Rev: 1.10 Type: Processor ANSI SCSI revision: 01 Host: scsi1 Channel: 00 Id: 00 Lun: 00 Vendor: MELCO Model: CF CARD Reader Rev: 2.20 Type: Direct-Access ANSI SCSI revision: 02 なもので、私のパッチでは devType でもう一度 for を回し ています。このパッチも手抜きなので、本来はカウントすべ き Type をきちんと見分ける必要があると思います。 てな感じで如何でしょう? ====================================================== 羽根 秀也 wing@xxxxxxxx http://www.lain.org/~wing/ Studio 八割堂 http://www.lain.org/ ======================================================