「Hwdetect」の版間の差分
ナビゲーションに移動
検索に移動
(序文を更新) |
(→サンプル: 情報を更新) |
||
13行目: | 13行目: | ||
== サンプル == |
== サンプル == |
||
+ | |||
− | 以下の方法で [[rc.conf]] の {{Ic|MOD_AUTOLOAD}} を無効化できます。モジュールを探す手間が省けるので、起動時間が短縮されます。 |
||
+ | 次のメソッドを使用して、[[mkinitcpio.conf]] に {{Ic|MODULES}} を設定できます。 |
||
+ | |||
# hwdetect --modules |
# hwdetect --modules |
||
コマンドを実行すると以下のように出力されます (もちろん出力はシステムによって変わります): |
コマンドを実行すると以下のように出力されます (もちろん出力はシステムによって変わります): |
||
− | MODULES=(ac battery button processor thermal video cdrom ....) |
||
+ | SOUND : pcspkr |
||
− | 上記の出力をコピーして {{ic|/etc/rc.conf}} の {{ic|MODULES}} セクションを置き換えて {{Ic|MOD_AUTOLOAD}} を "yes" から "no" に変更してください。それで自動ロードがスキップされて起動が高速になります。 |
||
+ | OTHER : 8139cp 8139too ac |
||
+ | |||
+ | 使用するものに応じて、モジュール名をコピーして、{{ic|/etc/mkinitcpio.conf}} の {{ic|MODULES}} セクションを置き換えます。ハードウェアの検出とモジュールの依存関係の計算の一部またはすべてがすでに記載されているため、システムはより速く起動するはずです。 |
||
+ | {{Note| |
||
− | {{Note|If any of the module names change (unlikely) or you install new hardware on your computer, you will need to generate the list of modules again and update {{ic|MODULES}}.}} |
||
+ | * このツールには、{{ic|/etc/mkinitcpio.conf}} 内で使用するための専用の出力があります。 |
||
+ | * 新しいカーネルに新しいモジュールが追加された、またはコンピュータに新しいハードウェアをインストールしたためにモジュール名が変更された場合は、モジュールのリストを再度生成し、{{ic|MODULES}} を更新する必要があります。 |
||
+ | }} |
||
== ヒント == |
== ヒント == |
2023年12月28日 (木) 20:17時点における版
hwdetect はハードウェア検出スクリプトで、主に mkinitcpio.conf で使用するモジュールのロードやリストに使用されます。そのため、ハードウェアを駆動するためにどのカーネルモジュールが必要かをユーザーに知らせます。これは他の多くのツールとは対照的で、ハードウェアにクエリを発行し、生の情報を表示するだけで、その情報を必要なドライバに関連付ける作業をユーザーに任せます。このスクリプトは、Linux カーネルで採用されている sysfs サブシステムによってエクスポートされた情報を利用します。
インストール
公式リポジトリから hwdetect パッケージをインストールしてください。
使用方法
最新の使用方法は こちら や hwdetect --help
を実行することで確認できます。
サンプル
次のメソッドを使用して、mkinitcpio.conf に MODULES
を設定できます。
# hwdetect --modules
コマンドを実行すると以下のように出力されます (もちろん出力はシステムによって変わります):
SOUND : pcspkr OTHER : 8139cp 8139too ac
使用するものに応じて、モジュール名をコピーして、/etc/mkinitcpio.conf
の MODULES
セクションを置き換えます。ハードウェアの検出とモジュールの依存関係の計算の一部またはすべてがすでに記載されているため、システムはより速く起動するはずです。
ヒント
現在使われていないモジュールのリストを生成するには、次を実行:
# hwdetect --modules-not-loaded
もしくは以下のスクリプトを使用:
modules-not-loaded
eval $(hwdetect --modules) for m in ${MODULES[*]}; do if ! grep -sq $(echo $m|tr - _) <(lsmod); then echo $m; fi done