USB2.0で外付けHDDを

先日、IDEのハードディスクを増設したばかりですが、USB2.0で接続できるHDDも持っていたのでLinuxサーバーに繋いでみようといろいろ試してみました。このHDDにはiPod用のデーターがごっそり入ってる。このファイルを先日インストールした、mt-daapdサーバー(iTunesサーバー)で使いたいのです。

以下はHDDを認識させるまでの道のり。Windows/Macと違って、エラい長い道のりだ

まずは本体にUSB2.0ボードを繋いだ。Linux起動後、HDDが認識されているかどうかは下記のやり方で確認できるとのこと

cat /proc/bus/usb/devices

最初実行したときは何もでてこない。いろいろ調べたらまずはUSB2.0ボード用のハードウェアセッティングが必要だった。kudzuを起動時に立ち上げるようにして、ハードウェアのセッティングをした。その後、dmesgすると

# dmesg | grep usb

...

usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
usb.c: registered new driver usb-storage
usb-uhci.c: $Revision: 1.275 $ time 13:37:34 Oct 27 2004
usb-uhci.c: High bandwidth mode enabled
usb-uhci.c: USB UHCI at I/O 0xef80, IRQ 10
usb-uhci.c: Detected 2 ports
usb.c: new USB bus registered, assigned bus number 1
usb-uhci.c: v1.275:USB Universal Host Controller Interface driver
usb.c: USB disconnect on device 00:1f.2-0 address 1
usb.c: USB bus 1 deregistered

USB2.0ボードが認識されるみたい。
が、それでもまだHDDが認識されていない。ドライバをインストールしないといけないみたい。USB2.0用のドライバはehci-hcd.oというのが使われるらしい

# locate echi-hcd.o
/lib/modules/2.4.*****/kernel/drivers/usb/host/ehci-hcd.o

発見しました。これを使うには

# modprobe ehci-hcd

するだけでいいらしい。わりと簡単。ここまでやったあとで再度cat /proc/bus/usb/devices すると

# cat /proc/bus/usb/devices

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 5
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS= 8 #Cfgs=  1
P:  Vendor=0000 ProdID=0000 Rev= 2.04
S:  Manufacturer=Linux 2.4.27-0vl7 ehci_hcd
S:  Product=NEC Corporation USB 2.0
S:  SerialNumber=02:0a.2
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=256ms
T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  2 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=04bb ProdID=010f Rev= 1.05
S:  Manufacturer=I-O DATA DEVICE,INC.
S:  Product=HDC-U
S:  SerialNumber=00000021D46B
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=  2mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

ごっついメッセージがでました。ハードディスクをうまく認識したようです。ここまでいけば後はmountするだけ.FAT32用のmountは -t vfatをつけるといいらしい

# mount -t vfat /dev/sda1 /test

エラーがでないので上手くいったみたい

#df 

/dev/sda1            244136352  46715776 197420576  20% /test

成功です。250GB。


[参考]
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/527useusb2.html