web-dev-qa-db-ja.com

LinuxでWindowsデバイスマネージャー/ DevConユーティリティに相当しますか?

Windowsデバイスマネージャーに相当するLinux、またはWindows DevConユーティリティ(ハードウェア管理機能を備えたコマンドラインユーティリティ)があるかどうか疑問に思いました。

Linuxでもドライバーは同じように機能しますか?

8
Russel

Windows devconによって提供される機能は、Linuxのさまざまな機能とコマンドでカバーされています。

Linuxの「プラグアンドプレイ」マネージャーは通常udevです。 udevは、ハードウェアの変更を認識し、(場合によっては)モジュールを自動ロードし、必要に応じて/devにノードを作成します。 LinuxでUSBデバイスの取り外しをシミュレートするなどの操作(devconで実行できる操作)を行う場合は、実行中のudevdと対話するコマンドを使用する必要があると思います。 Linuxではこれを行っていませんが、udevについてさらに学ぶことから始めることができます。

lsmodは、現在ロードされているすべてのカーネルモジュールを表示します。デバイスドライバは、カーネルモジュールの1つの機能です。 insmodは、可能であればモジュールをロードして起動します。ほとんどの場合、デバイスは/devに表示されます。 rmmodはその逆を行います。 lsmodを実行すると、一部のモジュールが他のモジュールに依存していることに気付くでしょう。rmmodでは、何かが依存している場合、モジュールを削除できません。 modprobeとそのオプションは、依存関係を処理します。

Linuxでは、モジュールをカーネルに「組み込む」こともでき、モジュールリストには表示されません。これらは、カーネルがブートローダーによってロードされるとすぐに、いつでも利用できます。別のオプションは、「初期ramdisk」(initrd)内のディレクトリにモジュールを配置することです。これもブートローダーによってロードされ、起動時にカーネルにすぐにアクセスできます。デバイスドライバの「インストール」または「更新」には、モジュールが組み込まれた新しいカーネルまたは更新されたカーネルの作成、またはそれがない場合はinitrdでの追加/更新が含まれる場合があります。ほとんどのディストリビューションは、これを行うためのツールとユーティリティを提供します。

カーネルモジュール(ドライバーを含む)はカーネルの一部であり、サポートされているすべてのデバイスのドライバーであるため、kernel.orgの「公式」カーネルに含まれていない限り、通常、サードパーティのドライバーのインストールや取得について心配する必要はありません。も含まれており、通常はディストリビューションに付属しています。そのため、Linuxで「メーカー提供のドライバー」をインストールする必要があることは、ドライバー開発者が必要とする技術情報に関してまだ多くの法的負担があるビデオドライバーや一部のワイヤレスチップセットを除いて、それほど一般的ではありません。

lshwは、この情報のほとんどをツリーのような形式で提供できます。 lspcilsusblsscsi、およびlscpuも非常に役立ちます。 PCI、SCSI、USBなどのほとんどのバスには、特定のクラスのデバイスの情報を構成および取得するために使用できる、ほとんどのLinuxディストリビューションで利用可能な多くのユーザーランドユーティリティがあります(例:hdparm)。そして、この段落で言及されているほとんどすべて、およびそれ以上は、/procおよび/sysのさまざまなファイルおよびディレクトリへのフロントエンドにすぎません。ほとんどの場合、ユーティリティを使用することをお勧めします。

6
LawrenceC

ドライバーはWindowsやLinuxと同じではありません。ただし、状況によっては、WindowsデバイスドライバーをLinuxカーネルにロードできます。

Linuxデバイスドライバーについて:

ドライバーは、Linuxカーネルにコンパイルすることもモジュールとしてコンパイルすることもできます。モジュールの場合は、オンデマンドで(アン)ロードできます。

次のコマンドを使用して、マシンデバイスに関する情報を見つけることができます。

lspci
lsusb

私のお気に入りは

lspci -nn

名前と番号について。

次のコマンドのマニュアルページをご覧ください。

modprobe
rmmod
lsmod
modinfo

要するに:

modprobeはカーネルモジュールをロードします。 rmmodはカーネルmodileを削除します。 lsmodは、現在ロードされているモジュールを一覧表示します。 modinfoは、特定のモジュールに関する情報を表示します。

GUIアプリもあります。 KDEのコントロールセンターにはkinfocenterと呼ばれるものがあると思います。

お役に立てば幸いです。

4
d-_-b

Linuxで次のコマンドを試してください:lshw-gtk、これはlshwのフロントエンドです。

3
bobofrut

Linuxのほとんどのデバイスドライバーはカーネル拡張です。それらを「lsmod」でリストするか、「rmmod」で削除するか、「modprobe」でロードすることができます。

2
txwikinger

/sysで、lsusb/lspciが単に要約されたタブロイドビューを表示している実際のデバイスツリーを探すことができます。

1
user55078