Hwdetect

提供: ArchWiki
2023年12月28日 (木) 20:13時点におけるKgx (トーク | 投稿記録)による版 (序文を更新)
ナビゲーションに移動 検索に移動

hwdetect はハードウェア検出スクリプトで、主に mkinitcpio.conf で使用するモジュールのロードやリストに使用されます。そのため、ハードウェアを駆動するためにどのカーネルモジュールが必要かをユーザーに知らせます。これは他の多くのツールとは対照的で、ハードウェアにクエリを発行し、生の情報を表示するだけで、その情報を必要なドライバに関連付ける作業をユーザーに任せます。このスクリプトは、Linux カーネルで採用されている sysfs サブシステムによってエクスポートされた情報を利用します。

インストール

公式リポジトリから hwdetect パッケージをインストールしてください。

使用方法

最新の使用方法は こちらhwdetect --help を実行することで確認できます。

サンプル

以下の方法で rc.confMOD_AUTOLOAD を無効化できます。モジュールを探す手間が省けるので、起動時間が短縮されます。

# hwdetect --modules

コマンドを実行すると以下のように出力されます (もちろん出力はシステムによって変わります):

MODULES=(ac battery button processor thermal video cdrom ....) 

上記の出力をコピーして /etc/rc.confMODULES セクションを置き換えて MOD_AUTOLOAD を "yes" から "no" に変更してください。それで自動ロードがスキップされて起動が高速になります。

ノート: 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 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