HAYAGUI

FreeBSD 4.7 + USBフラッシュメモリ

はじめに

IO DATA製のUSBフラッシュメモリ USB-ED2 32MB を FreeBSD 4.7 に認識させる方法が、 freebsd-users メーリングリスト[72466]に載ってたので、私もやってみました。

どんな感じに認識されるかと

素の FreeBSD 4.7 から、どのように認識されているかというと、こんな感じ。 dmesg は、こんな感じで、
umass0: M-Systems DiskOnKey, rev 1.10/2.00, addr 2
umass0: Get Max Lun not supported (SHORT_XFER)
usbdevs はこんな感じ。
mico# usbdevs -v
Controller /dev/usb0:
addr 1: self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
 port 1 powered
 port 2 addr 2: power 94 mA, config 1, DiskOnKey(0x0010), M-Systems(0x08ec), rev 2.00

変更点

で、メーリングリストに書いてある通りに認識させるための変更点はこちら。
M-Sys の項目を追加。
mico# pwd
/usr/src/sys/cam/scsi
mico# vi /scsi_da.c

    {
        /* Another USB floppy */
        {T_DIRECT, SIP_MEDIA_REMOVABLE, "MATSHITA", "FDD CF-VFDU*","*"},
        /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE
    },
    {
        /* M-Sys DiskOnKey USB flash-memory */
        {T_DIRECT, SIP_MEDIA_REMOVABLE, "M-Sys", "DiskOnKey","*"},
        /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE
    },
カーネルをコンパイル。
mico# pwd
/usr/src/sys/i386/conf
mico# ls
GENERIC LINT
mico#
mico# /usr/sbin/config GENERIC
Don't forget to do a ``make depend''
Kernel build directory is ../../compile/GENERIC
mico#

mico# cd ../../compile/GENERIC/
mico# make depend
mico# make
mico# make install

FreeBSD を reboot

認識できたかな

FreeBSD が起動中にUSBフラッシュメモリを挿しても、mount できませんでした。 で、装着してから FreeBSD を起動すると、こんな感じに認識されます。
da0 at umass-sim0 bus 0 target 0 lun 0
da0:  Removable Direct Access SCSI-0 device
da0: 650KB/s transfers
da0: 31MB (63648 512 byte sectors: 64H 32S/T 31C)
こんな感じにマウントできます。
mico# mkdir /mnt/usbmem
mico# mount_msdos /dev/da0 /mnt/usbmem
mico# cd /mnt/usbmem
mico# ls
hoge.txt
mico#
その後やったら、/dev/da0s4 になっていたり。

戻る



(C)1999 - 2003 Kenji Ito All rights reserved.