Mac mini 2018にLinux(Ubuntu)をインストールして、WIFIを有効にする
どうしてもWIFIを使いたい
Mac Pro 2013を中古で購入し、元々メインで使っていたMac mini 2018からのデータ移行が完了したので、Mac mini 2018をLinux化することにした。
当初、Ubuntu Serverをインストールして、自宅サーバとして使用する予定だったが、有線LANの取り回しが面倒だったのと、自宅の有線環境が古く最大100Mbpsでしか使用できないこともあり、デフォルトでWIFIのドライバが認識することを期待して、Desktop版をインストールすることにした。
通常のインストールではドライバが認識しない
インストール後WIFIの表示がデスクトップの右上に出ないので、ドライバが認識していないと思いログを確認したところ、以下のようなメッセージが表示されていた。
1月 03 00:52:28 tshpaper-Macmini kernel: usbcore: registered new interface driver brcmfmac
1月 03 00:52:28 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: enabling device (0000 -> 0002)
1月 03 00:52:28 tshpaper-Macmini kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4364b2-pcie for chip BCM4364/3
1月 03 00:52:28 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.Apple Inc.-Macmini8,1.bin failed with err>
1月 03 00:52:28 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.bin failed with error -2
1月 03 00:52:28 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: brcmf_pcie_setup: Dongle setup failed
色々と調べてKernelの変更とドライバの追加で正常動作した
refs: https://wiki.t2linux.org/guides/wifi-bluetooth/
- Mac mini 2018上で必要なファイルを外部メディアにコピーしておく(私はUSBにコピーした)
cp -rp /usr/share/firmware/wifi/C-4364__s-B* /Volumes/WIFI-FIRM
- Kernelの変更が必要かどうかを確認する
modinfo brcmfmac | grep 4387
- 私の場合は上記の実行の結果、何も表示されなかったので、kernelの変更を行う
resf: https://github.com/t2linux/T2-Ubuntu-Kernel#installation
sudo apt install curl
curl -s --compressed "https://adityagarg8.github.io/t2-ubuntu-repo/KEY.gpg" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/t2-ubuntu-repo.gpg >/dev/null
sudo curl -s --compressed -o /etc/apt/sources.list.d/t2.list "https://adityagarg8.github.io/t2-ubuntu-repo/t2.list"
sudo apt update
sudo apt install t2-kernel-script
sudo apt install t2-kernel-script-lts
update_t2_kernel
sudo reboot
これだと、再起動してもインストールしたkernelが適用されなかった。
おそらく、変更前のkernelのバージョンが変更後のkernelのバージョンよりも新しいものだったからなのでは?と思うが、詳細までは調べていない。
そのため、手動で/boot/grub/grub.cfg
を修正した。
- ドライバを追加する
Mac mini 2018 で取得したドライバを追加する
cd /media/tshpaper/WIFI-FIRM/C-4364__s-B2
sudo cp -v lanai.txcb /lib/firmware/brcm/brcmfmac4364b2-pcie.txcap_blob
sudo cp -v lanai.trx /lib/firmware/brcm/brcmfmac4364b2-pcie.bin
sudo cp -v lanai.clmb /lib/firmware/brcm/brcmfmac4364b2-pcie.clm_blob
sudo cp -v P-lanai-X3_M-HRPN_V-u__m-7.5.txt /lib/firmware/brcm/brcmfmac4364b2-pcie.txt
- ドライバを再読み込みする
sudo modprobe -r brcmfmac
sudo modprobe brcmfmac
- ログの確認
- モジュール再読み込み後のログ
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4364b2-pcie for chip BCM4364/3
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u-7.5-X3.bin failed with>
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u-7.5.bin failed with er>
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u.bin failed with error >
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN.bin failed with error -2
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-X3.bin failed with error -2
1月 03 02:36:33 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai.bin failed with error -2
1月 03 02:36:34 tshpaper-Macmini kernel: brcmfmac: brcmf_c_process_txcap_blob: TxCap blob found, loading
1月 03 02:36:34 tshpaper-Macmini kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4364/3 wl0: Jul 12 2021 19:26:30 version 9.30.464.0.32.5.76 FWID 01->
一部エラーが出ているが、この状態でWIFIが正常に動作した。
夜遅かったので、ここでシャットダウンし、翌朝起動してみたが、同じ状態だった。
動作的には特に問題ないが、気持ち悪いので、余裕がある時に見てみる。
- 停止⇨起動後のログ
1月 03 12:28:27 tshpaper-Macmini kernel: usbcore: registered new interface driver brcmfmac
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: enabling device (0000 -> 0002)
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac4364b2-pcie for chip BCM4364/3
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u-7.5-X3.bin failed with>
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u-7.5.bin failed with er>
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN-u.bin failed with error >
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-HRPN.bin failed with error -2
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai-X3.bin failed with error -2
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4364b2-pcie.apple,lanai.bin failed with error -2
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac: brcmf_c_process_txcap_blob: TxCap blob found, loading
1月 03 12:28:27 tshpaper-Macmini kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4364/3 wl0: Jul 12 2021 19:26:30 version 9.30.464.0.32.5.76 FWID 01->
Linux化の目的は、k8sの検証環境を作ること
きっかけは、Mac mini 2018の役割がなくなったので、活用しなければ!というモチベーション。
なぜ、k8sの検証環境を作るのかというと、k8sの運用経験はあるものの、だいぶ忘れているのと、自社でのk8sの動きが加速していくので、流石にマネジメントの立場でも触っておかないとまずいと思ったからです。
Discussion