論理的に切断されたUSBデバイスをどのように再接続しますか?

論理的に切断されたUSBデバイスをどのように再接続しますか?

USBストレージデバイスが論理的に切断される可能性があります。デバイスはまだ接続されていますが、オペレーティングシステムには表示されません(たとえば、下のリストには表示されません/proc/bus/usb)。他の種類のUSBやその他のリムーバブルデバイスでもこれが発生する可能性があります。たとえば、次のようなことが発生する可能性があります。

ドライバやハードウェアで何が起こっているのか、最も重要なのは(物理的にデバイスを抜いて再接続せずに)デバイスを論理的に再接続する方法ですか?

この問題はインストールとは関係がないことに注意してください。 「論理的に切断された」状態で、カーネルはUSBバスに何もないと思います(もちろん項目もありません/dev)。

答え1

デバイスが接続されているUSBバスレッグで電源サイクルを実行することが時々可能です。

# echo suspend > /sys/bus/usb/devices/1-1/power/level
# echo auto > /sys/bus/usb/devices/1-1/power/level

1-1構成に合わせて調整する必要があります。lsusb -tデバイスを取り出す前に実行すると、デバイスがUSBツリーのどの部分に接続されているかを確認できます。

linux-usbメーリングリストで詳細を見つけることができます。このスレッド例えば。

答え2

udevadm info -a -n /dev/sdb

それではカーネルをチェックしてみてください。たとえば、Front UIPのポート2に接続すると1-1.2になり、Front UIPのポート1に接続すると1-1.1になります。

ポート2の場合:USB接続を切断します。

echo '1-1.2' | tee /sys/bus/usb/drivers/usb/unbind

USB接続:

echo '1-1.2' | tee /sys/bus/usb/drivers/usb/bind

答え3

接続されているデバイスまたはハブをリセットすると、デバイスが再び表示されます。これを行う小さなプログラムは次のとおりです。

http://marc.info/?l=linux-usb-users&m=116827193506484

私が試したほとんどのUSBドライブで動作しますが、Kingston DT 101 II 4GBのような例外があります。この場合、リセット後にINQUIRYおよびREAD CAPACITYコマンドは失敗し、再起動するまで使用できなくなります。

デバイスがポートから電源を切り、USBハブがポート固有の電源制御をサポートしている場合は、デバイスを切断せずにデバイスを再起動できます。これは電源を制御する小さなプログラムです。

http://marc.info/?l=linux-usb-devel&m=113724451205634

残念ながら、この機能をサポートするUSB​​ハブはほとんどなく、サポートするハブを見つけることも困難です。メーカーは広告を行いません。多くのハーブもこれについて嘘をついています。たとえば、「lsusb -v」を実行すると、「wHubCharacteristic」で宣伝された「ポート固有の電源スイッチ」が表示されますが、実際には機能しません。チップセットはこれをサポートすることもできますが、製造業者はチップセットを介さずにポート電源ピンを電源に直接接続する方が簡単で安価です。

答え4

以下はUSBデバイスの接続を切断します。

sudo eject /dev/sde

以下はUSBデバイスを再接続します。

sudo eject -t /dev/sde

上記は私のLinux Mintで動作します。

関連情報