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 を実行できます。