ドキュメントによると、手動で開始する必要があるイーサネットカードのインストールについて(全文 ここ )を成功させました:
# modprobe e1000bp
このドライバの起動をブート時間に実行したい。
これを達成するための適切な方法とは何ですか?
コマンドを/etc/rc.local
に追加することを考えましたが、PPTPまたはOpenVPN接続の場合、よりクリーンであるはずの別の方法があるので、同じことが伝えられるかどうか疑問に思いましたドライバーの起動用。
Debianおよび派生物(Ubuntu、Mint、elementary、…)では、 /etc/modules
(1行に1つ、引数を指定できます)にリストされているモジュールが起動時にロードされます。
Systemdベースのシステムでは、 /etc/modules-load.d/*.conf
(1行に1つ)にリストされているモジュールが起動時にロードされます。
ただし、通常は明示的にモジュールをロードする必要はありません。ほとんどのハードウェアでは、Linuxはハードウェアを自動的に検出し、適切なモジュールをロードします。 Linuxは、モジュールのソースコードの宣言から入力された/lib/modules/VERSION/modules.alias
に格納されているデータベースから適切なモジュールを見つけます。 この回答 プロセス全体を説明しています。
コンパイルした.ko
ファイルを/lib/modules/VERSION/
の下のどこかに置き(それを見つけるためにmodprobe
を取得するには、とにかくそれを行う必要があります)、ルートとしてdepmod -a
を実行します。これにより、modules.aliases
データベースが更新されます。その後、カーネルがハードウェアを検出したとき(または、ハードウェアは起動時間の早い段階で検出されるため、モジュールのロードプロセスが開始されたとき)に、モジュールが自動的にロードされます。
ハードウェアがディストリビューションによって提供されるモジュールによってもサポートされているが、ディストリビューションのドライバーにバグがある場合、モジュールの1つを強制的に使用する簡単な方法はないと思います。この場合、コンパイルしたモジュールを/etc/modules
に追加し、blacklist MODULE_NAME
行を /etc/modprobe.conf
に追加して、標準モジュールをブラックリストに登録する必要があります。
ドライバーを/etc/modules
(Debian、Ubuntu、Mintなど)または/etc/modules.conf
(Fedora、RHEL、CentOS、Arch Linuxなど)ファイルに入れます。