[CentOS6.7] コマンドでUSB接続モジュールを抜き差し


経緯

  • とあるサーバからUSB変換シリアルコンソール経由でルーターへアクセスしたい
  • screenコマンドで接続するもなんか挙動が変だぞ
  • USBの抜き差ししたいけどデータセンター遠い・・・\(^o^)/
  • コマンドでUSBリセットかければUSBの抜き差しに相当するみたいなのでやってみよう!

概要

  1. USB ID を調べる
  2. UNBIND実施
  3. BIND実施
  4. 接続確認

現象

[root@centos6 ~]# screen /dev/ttyUSB0
24aes.i elervrdCo7hnsori8T pet t9ed Cp88-1i t 20o2Al0c4m5s

謎の文字列が表示され操作不可

手順

1. USB ID を調べる

[root@centos6 ~]# udevadm info --query=path --name=/dev/ttyUSB0
/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.0/ttyUSB0/tty/ttyUSB0
  • USB ID は上記から 2-1 と確認できる
    • 最初の 2 がUSBバスID
    • 後ろの 2 がデバイスID

2. UNBIND

  • USB接続解除
[root@centos6 ~]# echo -n "2-1" > /sys/bus/usb/drivers/usb/unbind
  • 確認
[root@centos6 ~]# udevadm info --query=path --name=/dev/ttyUSB0
device node not found

3. BIND

  • USB再接続
[root@centos6 ~]# echo -n "2-1" > /sys/bus/usb/drivers/usb/bind
  • 確認
[root@centos6 ~]# udevadm info --query=path --name=/dev/ttyUSB0
/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.0/ttyUSB0/tty/ttyUSB0

4. 接続確認

  • screenコマンドにて接続確認
[root@centos6 ~]# screen /dev/ttyUSB0
Password:

正常に接続できることを確認!

参考

こちらを参考にさせて頂きました!ありがとうございます!