しま★りん.blog @ayurina

そこはかとない日常を綴るブログです。主にはゲーム、ガジェットレビュー、ドライブ記録です。

MacのUSBシリアルケーブルにiBUFFALO BSUSRC0605BS購入

time 2015/09/09

ちょっと困ったことがあって、至急でUSBシリアルケーブルを新調しました。BSUSRC0605BS。とりあえず良い感じです。

そもそも、USBシリアルが必要な人種がこの世界にどれほど居るのか、という話題はさておき。一定数の需要は確実に存在し続ける、USBシリアルケーブル。サーバー・ルーターのコンソールを掴まなければならない人たちには必需品ですよね。まぁ最近は高機能な管理用Web UIを備えた製品が多いので、あまり困らないかもしれませんが、本当に緊急時、迅速にコンソールを掴むにはやはり有用なソリューションなわけです。

某日。事件は突然起こります。

th_2015-09-09 00.36.43

ちとルーターを現地で設定する羽目に会いまして、で、いつもの通り、IODATAのUSB-RSAQ2を使って作業をしようと思ったら、なんと動かない。そういえば、MacをYosemiteにアップデートして以来、使うのは初めてだったような・・・。とりあえず作業は別手段で切り抜けましたが、USBシリアルが使えないのは困った。

そこで、調査開始。USB-RSAQ2をMacで使う方法を検索すると、どうやらチップベンダーのドライバがあるらしい。でもUSB-RSAQ2のデバイスIDは書いてないため、反応しない。そこで、リスト編集することになるんだけど、Yosemiteではドライバパッケージのベンダー署名を精査してくれるため、無理やりInfo.plistを書き換えると読んでくれなくなる。カーネルパラメータで精査をやめるオプション(開発者モード)があるので、これで動かすこともできるけど、それは美しくない。というわけで、手詰まりです。

ここに至るまで、osx-pl2303とProlificUsbSerialを何度もインストール、削除を繰り返してみましたが、やはり動きませんでした。動いた、という報告もありますが、私のところではダメです。リビジョン・ロットやPC側の環境もあるかもしれません。正直、ここまでかけた手間と時間があまりに勿体無く感じたため、もう新調することに決定。

さて、じゃぁ何にするか、というところです。

USBシリアルって、殆ど製品も無いので、選択肢は限られますが、チップベンダーで言うと、ProlificかFTDIか、というところが選択のポイントになりそうです。今回、USB-RSAQ2で苦労したのがProlificだったということ、またMacでのベンダードライバでの動作実績はFTDIのほうが多いようでしたので、ここはFTDI一択としてみました。

じゃぁ具体的な製品は何にしようと探してみたら、iBUFFALOのUSBシリアルケーブルが、FTDI純正ドライバで動くという情報が。メーカーとしてもメジャーで入手性にも問題無く、何しろ価格も安いので、これを指名買いしてきました。

閉店間際のヨドバシカメラに駆け込んで購入。いやマジで、シリアルコンソールが掴めないのは困るんですよ・・・。

というわけで、ゲットしました。BSUSRC0605BS。

th_2015-09-09 00.37.10

税込み1700円。十分安いと思います。基本、Windowsでの利用を前提としており、MacやLinuxでの動作については、一切記載は見当たりません。まぁそんなもんでしょう。パッケージには、ケーブル本体とドライバCD、あとは取説が付いていましたが、ドライバと取説はさらっと投げ捨てました(苦笑)。

th_2015-09-09 00.38.49

長さは50cm。携帯するのが基本なので、短いほうが嬉しい。延長については、シリアル側の延長ケーブルを持っているので(シスコの平ケーブルといえば、分かる人は分かる)、特に困りません。

早速、Macに刺してみます・・・。まぁ当然ですが、さらっと認識。通電すると電源インジケータが光ります。RXとTXのインジケータもあり、これは信号が流れると個別に光ります。

Mac側ではまずは普通にttyデバイスも見えて、使える感じです。どやらApple純正のドライバで動いているようですが、念のため、メーカーサイトからダウンロードしたドライバもインストールしておきました。kextstat等で見る限り、これが効いているようには見えませんが、念のため。

AppleUSBFTDI: fInBufPool,kMaxInBufPool 8,64
AppleUSBFTDI: Version number - 1.0.1b16, Input buffers 8, Output buffers 16

USB-RSAQ2では接続後バラバラとエラーメッセージが出ていた状況だったので、すんなりと刺さって良かった、と。

・・・

・・・

ちょっと待て。動作確認のしようが無い。ウチにはもはやシリアルIFの付いているPCなんて存在しないし、じゃぁCISCOのルーターでも持ってきますか、というわけにも行かない。

そこではたと考えました。確かに、USB-RSAQ2はMacでは動きませんでしたが、これをLinuxサーバーに挿したら、普通にシリアルデバイスになるので、シリアルコンソールに使えるのではないか?と。

で、挿してみたら、案の定、普通に動いてくれました。

usbserial: USB Serial Driver core
USB Serial support registered for pl2303
pl2303 1-1.4:1.0: pl2303 converter detected
usb 1-1.4: pl2303 converter now attached to ttyUSB0
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver

流石にこちらも実績あるチップですので、スルッとttyUSB0に繋がってくれました。

で、Mac側のBSUSRC0605BSと、Linux側のUSB-RSAQ2をクロスケーブルで繋いで、ログインしてみることに。当初、スピードをあわせるというあまりに当たり前のことを忘れていて、繋がらない、と悩んだことは内緒。

ここからはむしろMac側にはあまり関係の無い話ですが・・・

さて、シリアルログインといえばgettyなので、まずは普通にサーバー側でgettyを起動して、Macから接続してみました。

on Linux
/sbin/agetty /dev/ttyUSB0 57600 vt100

on Mac
screen /dev/cu.usbserial-XXXXXXXX 57600

ログインプロンプトが出ました。行けそうです。が、ユーザー名を打つと、なんとgettyを起動したターミナルが切れて(ログアウトして)しまう。しばらく悩みましたが、何の事はない、gettyはログインしているttyではなくて、ログイン対象となるttyで動かさないといけないので、普通に起動しても機能しないということです。考えてみれば当たり前なんですが、いや普段そんなこと気にしないし(ps auxww|grep gettyとかすると、どうなっていないとダメかは想像が付きます)。

ちょっと考えて、initに起動させることにしました。CentOS 6.7なので、initctlです。

initctl start serial DEV=ttyUSB0 SPEED=57600

これで普通にログインできるようになりました。完全にシリアルコンソールです。

紆余曲折ありましたが、BSUSRC0605BSで、サーバーにシリアルコンソールログインできるところまで確認できました。機能的にも問題ないし、満足です。副産物として、LinuxサーバーにUSBシリアルコンソールが追加されたと。これもなかなかに助かります(ネットワークが繋がらないときとか、ネットワークの設定を詰めたいときとか、ディスプレイ・キーボードを繋ぐのはなかなかに面倒なので)。

さて、USBシリアルケーブルのほうは、これで機能的に問題無いのですが、USBシリアルを得たLinuxサーバー側では、まだできることがありそうです。

  • console=ttyUSB0が出来るとか・・・。とりあえずgrub.confで指定してみましたが、コンソールにはならないし、gettyも起動されません。何かが足りないらしい。
  • udevで、USBシリアルが繋がったときに、initctl start serialを自動実行するだけでも、保守性は確保できるので良いかなぁと。

まずは、比較的安い買い物で、USBシリアル問題が解決できて良かったと。あまり古いデバイスを手間をかけて使い続けるのも、どこかで踏ん切りが必要だなぁというのが反省点です。ただ、LinuxサーバーでのUSBシリアルコンソールの可能性が発見できたのはちょっと嬉しい誤算でした。これはちょっと調べてみたいかな、というところです。

という訳で、Mac使いでUSBシリアルが必要な人には、iBUFFALOのBSUSRC0605BS(BSUSRC06シリーズ)はお勧めです。ただ、これも2015/9時点の情報なので、OSがアップデートされたりしたら、状況は当然、変わっていくと思いますが、FTDIドライバはApple純正になっていることもあり、比較的堅いかなぁと期待しています。

sponsored link

down

コメントする




このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください



sponsored link

アーカイブ