LinuxでキャッシュされたUSBデバイス署名を消去する方法

LinuxでキャッシュされたUSBデバイス署名を消去する方法

LinuxでUSBデバイスのすべてのメモリを消去する方法は?

複数のUSBデバイスを接続すると、Linuxはそのデバイスを「記憶」します/dev

/dev/ttyACM0たとえば、接続されていると、とマークさ/dev/ttyACM1れたArduinoがあります/dev/ttyACM2。すべてを切断して2番目のデバイスを再接続すると、現在接続されている唯一のデバイスであるにもかかわらず再表示/dev/ttyACM1されます。/dev/ttyACM0

2番目のデバイスが取り付けられていることを覚えるメカニズムをどのように消去できますか/dev/ttyACM1?この問題を解決するために私が見つけた唯一の方法は、再起動することです。ただし、これを行うとシステムが損傷しすぎます。再起動しようとしましたが、udev動作しませんでした。

Arduinoのシリアル接続がUSBホストに再接続された後、時々中断または切断される問題をデバッグしようとしています。再起動後にArduinoのシリアル接続が正常に動作するため、私のコンピュータのUSBドライバに古い接続のいくつかの側面を覚えていて、新しい接続に再利用しようとするとエラーが発生するバグがあるという理論があります.

ベストアンサー1

USBシリアルドライバモジュールをアンロードして再ロードできます。これはcdc-acmまたはですftdi-sio

すべてのArduinoのプラグを抜き、以下を実行してください。

sudo modprobe -r cdc-acm
sudo modprobe -r ftdi-sio

Arduinoを再接続すると、カーネルはそれを自動的に再ロードします(Arduinoモデルに適しています)、ドライバをアンインストールすると、どのデバイスであるかについての「メモリ」が削除されます。

おすすめ記事