削除した/dev/ttyUSB##デバイスをどのように再生成しますか?

削除した/dev/ttyUSB##デバイスをどのように再生成しますか?

背景

私はLinuxの問題に陥るのに十分な知識がないようです。

私はLinuxを実行する複数の組み込みシステム(2つの異なるモデル)を開発しています。私は私が使用している2つのモデムのうち、最新のモデムのモデムサポートコードの問題を解決してきました。コードを停止してusbserialドライバを手動でロードしてみました。最新のデバイスからusbserialドライバをロードすると、4つのデバイスが現れる存在する/dev/ttyUSB#

私がしたこと

知ってみると実際には16個でした。ttyUSB##古いデバイスに常に表示されるデバイスです。彼らは決して消えません。私は[今]これは以前のカーネルが異なる動作をするためだと思います。残念ながら、16個をすべて削除しました。ttyUSB##装備。今、彼らは去り、再び戻ってこないでしょう。キャラクターデバイスの作り方がわかりません。このデバイスをどのように返しますか?

カーネルバージョン:

uname -r返品2.6.17.9-ep93xx-pxa-ads5

追加情報

重要な情報が欠落している場合は、コメントとして残してください。追加します。よろしくお願いします!

答え1

以下を使用して/ devエントリを手動で作成できます。

    mknod /dev/ttyUSBn c 188 n
  • パラメータ:
    • mknodは/ devエントリを生成するためのよく知られたツールです。
    • /dev/ttyUSBn: デバイス名
    • c: キャラクターデバイス
    • 188: 主装置番号
    • n:補助装置番号、ttyUSB0、ttyUSB1など

ただし、デバイスはudevルールに従って自動的に作成する必要があります。

答え2

/dev伝統的に、Unixシステムにはエントリを作成し、呼び出してMAKEDEV場所を指定するスクリプトがありました/dev。このスクリプトは通常Linuxにありますが、設計者がすべてのデバイスを持っていると仮定する組み込みデバイスやデバイスエントリが通常自動的に生成されるudevを実行しているシステムにはない可能性があります。エントリはMAKEDEV通常現在のディレクトリに作成されるため、まずこのディレクトリを実行してくださいcd /dev

渡すパラメータの標準はありません/dev/MAKEDEV。通常、パラメーターは生成されるデバイス項目のセットを表します。 Debianでは、いくつかの他のものも/dev/MAKEDEV usb作成されました。スクリプト内で実行するコマンドラインを見つけることもttyUSB*できます。デバイス項目を生成する下位レベルのコマンドは次のとおりです。ttyUSBMAKEDEVmknod

システムがudevを使用している場合は、以下を実行します。udevadm trigger -s usb-serial/devエントリを再生成し、デバイスの検索に関連するコマンドを実行します。 (この場合、デバイスはシリアルポートであり、ポートに接続されているデバイスではありません。)

関連情報