Linux機をUSBデバイスサーバーにしてみた(USB Server+USB Redirector)
USB機器を複数のパソコンで共有するための製品として、USBデバイスサーバーというものがある。
製品としては、IO-DATAの
I-O DATA USB機器共有ネットワークアダプター「net.USB」 ETG-DS/US
あたりが有名か。
単体製品ではなく自宅のPCをUSBデバイスサーバーにすることができるアプリケーションが販売されているので、果たしてどんなものか試してみた。
今回試したのは、ここにある
・USB Server for Linux i386(サーバーアプリ)
・USB Redirector(クライアントアプリ)
を使用してみた。
ちなみに、インストールしたディストリビューションはCentOS5.5
[root@localhost ~]# cat /proc/version Linux version 2.6.18-194.el5 (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Fri Apr 2 14:58:35 EDT 2010
- ネットワーク環境
- サーバ、クライアント間はギガビットHUBにて接続
てな具合。
この環境で試した機器は以下の通り。
- デジタルトランスポーター UDT-1
- AUDIOTRAK DR.DAC2 DX
- Creative USB Sound Blaster Digital Music Premium HD SB-DM-PHD
- BUFFALO ポータブルハードディスク 500GB HD-PE500U2
上3つがUSBオーディオで、4つ目がUSBバスパワー駆動のポータブルHDD。
ちなみに、USB Server環境を常用するつもりは元々なくて、単にこれらの機器がUSB Server経由で満足に動作するのかという興味本位で試してみた次第。
USB Server for Linux i386のインストール
USB Server for Linuxをインストールするには事前にカーネルモジュールをビルドする必要があるらしいので、まずは下準備を行う。
カーネルソースをダウンロードしてコンパイル。
wget http://mirror.centos.org/centos/5/os/SRPMS/kernel-2.6.18-194.el5.src.rpm mkdir /usr/src/redhat rpm -ivh kernel-2.6.18-194.el5.src.rpm cd /usr/src/redhat/SOURCES/ tar xvfl linux-2.6.18.tar.bz2 cd linux-2.6.18 cp /boot/config-2.6.18-194.el5 .config make prepare make modules
次に、USB Serverをインストール
wget http://incentivespro.com/usb-server.tar.gz tar xvfz usb-server.tar.gz cd usb-server ln -s /usr/src/redhat/SOURCES/linux-2.6.18/ linux ./installer.sh install-server
インストールが正常に終了すれば、同時にサービスも起動する。
その後は、オンラインマニュアルにあるとおり、usbsrvコマンドを使って共有設定などを行う。
usbsrv -l
DR.DAC2 DXを共有する場合以下のように入力する。
usbsrv -s 4
USB Redirectorのインストール
次に、クライアントとなるWindows機にUSB Redirectorをインストールする。
インストール後、アイコン類の一番右にある「Add USB Server」ボタンを押して、LinuxサーバのIPアドレスを入力する。
すると、以下のように接続リストに追加され、usbsrvコマンドで共有設定したUSB機器の一覧が表示される。
後は、一覧から機器を選択して「Connect USB device」ボタンを押せば、クライアントPC側で該当の機器がUSB接続された扱いになる。
DR.DAC2 DXを接続したところ
試しにUSB Server経由で接続したDR.DAC2 DXから音楽再生してみたところ、30秒に1度くらい定期的にノイズが入ってとてもではないが聞けたものではなかった。
動画再生の方がよりノイズが顕著で、とても常用には耐えられない。
CPUやメモリやネットワーク帯域を見てみても、サーバ側クライアント側共に余裕の状態であった。
JAVS UDT-1も同様の結果だった。
USB Sound Blaster HDは「Connect USB device」を押しても「Device ・・・ is not plugged now」と表示されてしまい、クライアント側で認識されることは無かった。
最後に、外付けHDDのHD-PE500U2を試したところ、クライアントPCで認識するまでに1分ほど時間がかかり、いざファイルをコピーしてみると1MBpsくらいしか速度が出ない状態だった。
ちなみにUSB Serverを経由せずに直接HD-PE500U2を繋いだ場合は40MBpsほど。