モジュールのロード順序を制御するためにシェルスクリプトまたはsystemd(fedora)サービスを使用しますか?

モジュールのロード順序を制御するためにシェルスクリプトまたはsystemd(fedora)サービスを使用しますか?

systemdでUbuntu 12.04を使用する(デフォルト)「wl」ドライバを必要とするBroadcom 4312ワイヤレスカードと、「b44」「ssb」モジュールを使用するBroadcom NICがあります。これで問題は、起動時にワイヤレスカードが正しく機能しないことです。これを行うには、関連するすべてのモジュールを削除する必要があります。 wl、b44、ssbなど。後でmodprobe wl;modprobe b44を実行すると、両方のデバイス(ワイヤレスカードとネットワークカード)が正しく機能します。それでは、「wl」が最初にロードされ、次に「b44」がロードされるようにカーネルモジュールのロード順序を変更する方法は?モジュールにエイリアスを追加するために/etc/modprobe.d/aliases.confを使用する価値はありますか? または本質的に実行されるシェルスクリプトを実行します。始動が終わると実行コマンド:

modprobe -r wl b44 ssb
wait 5 (to complete)
modprobe wl 
wait 2
modprobe b44 

私はsystemdまたは自動起動スクリプトの作成について知りません。スクリプトがうまくいけば、これが最善の選択です。

ベストアンサー1

私の友達Googleでは、彼は指摘しました。https://bbs.archlinux.org/viewtopic.php?id=148170:

/usr/lib/systemd/system/rc-local.service

[Unit]
Description=/etc/rc.local Compatibility
After=network.target

[Service]
Type=oneshot
ExecStart=-/etc/rc.local
#ExecStart=-/pathtoyour/script1
#ExecStart=-/pathtoyour/script2
TimeoutSec=0
StandardInput=tty
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

有効にするには、次を実行します。

systemctl enable rc-local

実行します(有効にすると自動的には実行されません)。

systemctl start rc-local

ExecStart行を使用して独自のスクリプトを追加できます。 /etc/rc.local または独自のスクリプトで modprobe-magic を実行できます。

おすすめ記事