Intel MacBook Pro 全系安装 Ubuntu/Linux 完整配置指南
-
Intel MacBook Pro 全系安装 Ubuntu/Linux 完整配置指南
目录- 机型速查
- 第一代:2016–2017(无 T2 芯片)
- 第二代:2018–2020(带 T2 安全芯片)
- 硬件兼容性总表
- 第一章:2016–2017 款(无 T2 芯片)
- 1.1 安装概述
- 1.2 音频修复(Cirrus Logic CS8409)
- 1.3 Touch Bar 配置(13,2 / 13,3 / 14,2 / 14,3)
- 1.4 Wi-Fi 信号优化(BCM43602)
- 1.5 键盘 & 触控板
- 1.6 屏幕 HiDPI
- 第二章:2018–2020 款(T2 安全芯片)
- 2.1 T2 芯片简介
- 2.2 安装方式
- 2.3 键盘 & 触控板(T2 款)
- 2.4 音频(T2 款)
- 2.5 Touch Bar(T2 款)
- 2.6 风扇控制
- 2.7 已知问题(T2 款)
- 第三章:通用配置与优化
- 3.1 Bluetooth BLE 延迟优化
- 3.2 挂起修复
- 3.3 AMD 独显功耗控制(15"/16" 双显卡机型)
- 3.4 省电设置
- 3.5 查看电池状态
- 第四章:内核选择建议
- 第五章:已知无法解决的问题
- 第六章:卸载指南
- 2016-2017 款
- T2 款
- 第七章:快速上手脚本
- 2016-2017 款一键脚本
- T2 款一键脚本
- 参考链接
涵盖 2016–2020 年所有 Intel 版 MacBook Pro(13" / 15" / 16"), 包括无 Touch Bar 款、Touch Bar 款,以及 T2 安全芯片款。
系统版本:Ubuntu 24.04 LTS / 24.10 / 25.04 及衍生发行版(Pop!_OS、Linux Mint、Zorin OS 等)
机型速查
第一代:2016–2017(无 T2 芯片)
型号标识 年份 尺寸 Touch Bar Touch ID 独显 声卡芯片 MacBookPro13,1 2016 13" ❌ ❌ ❌ Cirrus CS8409 MacBookPro13,2 2016 13" ✅ ✅ ❌ Cirrus CS8409 MacBookPro13,3 2016 15" ✅ ✅ ✅ AMD Cirrus CS8409 MacBookPro14,1 2017 13" ❌ ❌ ❌ Cirrus CS8409 MacBookPro14,2 2017 13" ✅ ✅ ❌ Cirrus CS8409 MacBookPro14,3 2017 15" ✅ ✅ ✅ AMD Cirrus CS8409 第二代:2018–2020(带 T2 安全芯片)
型号标识 年份 尺寸 Touch Bar Touch ID 独显 声卡 MacBookPro15,1 2018-19 15" ✅ ✅ ✅ AMD T2 (apple-bce) MacBookPro15,2 2018-20 13" ✅ ✅ ❌ T2 (apple-bce) MacBookPro15,3 2019 15" ✅ ✅ ✅ AMD Vega T2 (apple-bce) MacBookPro15,4 2019-20 13" ✅ ✅ ❌ T2 (apple-bce) MacBookPro16,1 2019 16" ✅ ✅ ✅ AMD 5000M T2 (apple-bce) MacBookPro16,2 2020 13" ✅ ✅ ❌ T2 (apple-bce) MacBookPro16,3 2020 13" ✅ ✅ ❌ T2 (apple-bce) MacBookPro16,4 2020 16" ✅ ✅ ✅ AMD 5000M T2 (apple-bce) Apple Silicon(M1/M2/M3/M4)不在此文范围,请参考 Asahi Linux。
硬件兼容性总表
组件 2016–2017(无 T2) 2018–2020(有 T2) Intel 显卡 ✅ 内核 i915免驱✅ 内核 i915免驱AMD 独显 ✅ 内核 amdgpu免驱✅ 内核 amdgpu免驱键盘 & 触控板 ✅ 内核 applespi✅ apple-bceVHCI(需 T2 内核)内置扬声器 ✅ 需第三方驱动 ✅ 需 T2 内核 + apple-bce麦克风 ⚠️ 部分正常 ⚠️ 部分正常 Wi-Fi ⚠️ BCM43602 信号弱 ✅ BCM43602 同,16寸款需额外固件 蓝牙 ✅ 免驱 ✅ 免驱 摄像头 ✅ uvcvideo免驱✅ 通过 apple-bce暴露为 USB屏幕 HiDPI ✅ ✅ Touch Bar ⚠️ 需 SPI 驱动 ⚠️ 需 T2 内核 + tiny-dfrTouch ID ❌ 不支持 ❌ 不支持 电池 ✅ ✅ NVMe SSD ✅ ✅ Thunderbolt ✅ ⚠️ 可能需禁用 IOMMU 挂起/休眠 ⚠️ 可能有问题 ⚠️ 部分修复 风扇控制 ✅ 内核自带 ✅ t2fanrd守护进程第一章:2016–2017 款(无 T2 芯片)
1.1 安装概述
这些机型不需要特殊内核。标准 Ubuntu ISO 即可安装。安装后需要额外配置音频和 Touch Bar。
1.2 音频修复(Cirrus Logic CS8409)
所有六款 2016-2017 MacBook Pro 均使用 Cirrus Logic CS8409 HDA 编解码器,主线内核未包含完整驱动。
# 安装依赖 sudo apt install wget make gcc linux-headers-$(uname -r) git # 克隆驱动 git clone https://github.com/davidjo/snd_hda_macbookpro.git cd snd_hda_macbookpro # 如果使用 HWE 内核(6.11+),需手动安装 linux-source # 确认所需版本: uname -r | cut -d- -f1 # 例:6.14.0 # 从 Ubuntu 新版仓库下载对应版本: wget http://archive.ubuntu.com/ubuntu/pool/main/l/linux/linux-source-$(uname -r | cut -d- -f1)_*.deb sudo dpkg -i linux-source-*.deb # 编译安装(脚本会自动检测内核版本选择合适的分支) sudo ./install.cirrus.driver.sh # 重启 sudo reboot内核版本与脚本对应:
内核 脚本 说明 < 6.17 install.cirrus.driver.pre617.sh旧流程,提取 sound/pci/hda编译≥ 6.17 install.cirrus.driver.sh新流程,适配重构后的内核源码树 注意事项:
- 每次内核更新后需重新运行安装脚本
- 耳机接口通常不受影响
- 如果
pavucontrol有跳动条但喇叭无声,检查是否静音或输出设备选错
1.3 Touch Bar 配置(13,2 / 13,3 / 14,2 / 14,3)
# 克隆 SPI 驱动 git clone https://github.com/almas/macbook12-spi-driver cd macbook12-spi-driver git checkout touchbar-driver-hid-driver sudo ln -s "$(pwd)" /usr/src/applespi-0.1 sudo dkms install applespi/0.1 --force # 添加模块到 initramfs sudo tee -a /etc/initramfs-tools/modules >/dev/null <<'EOF' applespi apple_ib_tb intel_lpss_pci spi_pxa2xx_platform EOF echo -e "apple-ibridge\napple-ib-tb" | sudo tee -a /etc/modules # 配置 Touch Bar 行为(fnmode=2 默认显示媒体键) sudo tee /etc/modprobe.d/apple_ib_tb.conf >/dev/null <<'EOF' options apple_ib_tb fnmode=2 options apple_ib_tb idle_timeout=60 EOF # 修复 hid-sensor-hub 抢占总线 sudo tee /etc/udev/rules.d/90-apple-ibridge.rules >/dev/null <<'EOF' ACTION=="add", SUBSYSTEM=="hid", ATTRS{idVendor}=="05ac", ATTRS{idProduct}=="8600", ENV{HID_PHYS}=="*/input3", RUN+="/bin/sh -c 'echo %k > /sys/bus/hid/drivers/hid-sensor-hub/unbind 2>/dev/null; sleep 1; echo %k > /sys/bus/hid/drivers/apple-ibridge-hid/bind 2>/dev/null'" EOF sudo udevadm control --reload-rules sudo update-initramfs -u -k $(uname -r) sudo reboot1.4 Wi-Fi 信号优化(BCM43602)
所有 2016-2017 款以及部分 2018+ 款均使用 BCM43602。开源驱动
brcmfmac信号偏弱。# 部署调优 NVRAM 固件 sudo apt install iw curl -L -o /tmp/brcmfmac43602-pcie.txt \ "https://gist.githubusercontent.com/cristianmiranda/ba9d64b4324f0803d9422d765de62252/raw/fa8c3db4ece70e21b9619d918a5e5bfb6a28d72b/brcmfmac43602-pcie.txt" sudo cp /lib/firmware/brcm/brcmfmac43602-pcie.txt \ /lib/firmware/brcm/brcmfmac43602-pcie.txt.bak 2>/dev/null || true sudo cp /tmp/brcmfmac43602-pcie.txt /lib/firmware/brcm/ sudo modprobe -r brcmfmac && sudo modprobe brcmfmac # 关闭 Wi-Fi 省电模式 sudo tee /etc/NetworkManager/conf.d/wifi-powersave-off.conf >/dev/null <<'EOF' [connection] wifi.powersave = 2 EOF sudo systemctl restart NetworkManager1.5 键盘 & 触控板
# 键盘重复延迟(蝶式键盘手感偏硬,调低延迟可改善) gsettings set org.gnome.desktop.peripherals.keyboard delay 250 gsettings set org.gnome.desktop.peripherals.keyboard repeat-interval 25 # 触控板 gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true1.6 屏幕 HiDPI
# 开启分数缩放 gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"- 13英寸(2560×1600)建议 175%–200%
- 15英寸(2880×1800)建议 150%–175%
第二章:2018–2020 款(T2 安全芯片)
2.1 T2 芯片简介
T2 是 Apple 自研安全芯片,负责:
- 键盘、触控板输入(通过 VHCI 虚拟 USB 控制器)
- 内置扬声器、耳机接口(通过 apple-bce 音频驱动)
- 摄像头(通过 apple-bce 暴露为 USB 设备)
- 风扇控制、SMC 系统管理
- 启动安全、加密存储
因此,T2 Mac 需要特制内核才能驱动这些设备。
2.2 安装方式
方式 A:使用 T2 定制 ISO(推荐)
t2linux 项目 提供预集成的 Ubuntu/Debian ISO,开箱支持键盘、触控板、音频。
# 下载 T2 Ubuntu ISO # https://github.com/t2linux/T2-Ubuntu/releases # 写盘启动,安装过程与标准 Ubuntu 一致方式 B:标准 ISO + 后装 T2 内核
如果已用标准 ISO 安装,手动替换内核:
# 添加 T2 APT 源 curl -fsSL https://raw.githubusercontent.com/AdityaGarg8/t2-ubuntu-repo/main/add repo.sh | sudo bash # 安装 T2 内核(会自动拉入 apple-bce 等依赖) sudo apt update sudo apt install linux-t2 # 主线内核 # 或 sudo apt install linux-t2-lts # LTS 内核 # 添加必要内核参数 sudo tee /etc/default/grub.d/t2-params.conf >/dev/null <<'EOF' GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT intel_iommu=on iommu=pt pm_async=off" EOF sudo update-grub # 配置音频 sudo apt install apple-t2-audio-config # 重启 sudo reboot方式 C:手动安装 T2 内核 deb
从 T2-Ubuntu-Kernel Releases 下载
linux-image-*t2*.deb和linux-headers-*t2*.deb:sudo dpkg -i linux-headers-*.deb linux-image-*.deb sudo update-grub sudo reboot2.3 键盘 & 触控板(T2 款)
T2 款不需要
applespi。键盘、触控板通过apple-bce模块暴露为 USB HID 设备。安装 T2 内核后自动生效。如果键位映射不对(Ctrl / Option / Command 错位),可配置
hid_apple模块:# 交换 Option 和 Command 键(PC 键盘布局习惯) sudo tee /etc/modprobe.d/hid_apple.conf >/dev/null <<'EOF' options hid_apple swap_opt_cmd=1 options hid_apple fnmode=2 EOF2.4 音频(T2 款)
T2 款音频通过
apple-bce驱动,安装 T2 内核后需额外配置:sudo apt install apple-t2-audio-config # PipeWire 用户(Ubuntu 24.04+ 默认)还需: sudo apt install pipewire-audio16寸机型(MacBookPro16,1 / 16,4)低音增强:
sudo apt install t2-apple-audio-dsp-speakers161麦克风修复(T2 款麦克风音量普遍偏低):
sudo apt install t2-apple-audio-dsp-mic2.5 Touch Bar(T2 款)
T2 款 Touch Bar 通过
tiny-dfr驱动,可自定义显示内容:sudo apt install tiny-dfr sudo systemctl enable --now tiny-dfr2.6 风扇控制
T2 款没有传统 SMC,需用
t2fanrd控制风扇:sudo apt install t2fanrd sudo systemctl enable --now t2fanrd配置文件
/etc/t2fanrd/config.toml:# 温度阈值(摄氏度) [[temperature_zones]] name = "CPU" high = 75 critical = 95 [[temperature_zones]] name = "GPU" high = 70 critical = 90 # 风扇转速映射 [fans] min_speed = 2000 max_speed = 62002.7 已知问题(T2 款)
问题 说明 Thunderbolt 热插拔 IOMMU 配置不当可导致内核崩溃 音频输入/输出切换 插入耳机时自动切换偶有不灵 挂起恢复 部分内核版本有问题 Touch ID 完全无解 内置麦克风 音量低,需 DSP 配置 首次启动键盘不响应 偶发,重启 apple-bce 模块即可 第三章:通用配置与优化
3.1 Bluetooth BLE 延迟优化
sudo tee -a /etc/bluetooth/main.conf >/dev/null <<'EOF' [LE] MinConnectionInterval=6 MaxConnectionInterval=9 ConnectionLatency=0 ConnectionSupervisionTimeout=200 EOF sudo systemctl restart bluetooth3.2 挂起修复
# 2016-2017 款 sudo tee /etc/default/grub.d/mbp-suspend-fix.conf >/dev/null <<'EOF' GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT acpi_sleep=nonvs s2idle" EOF # T2 款需要不同的参数(已在 T2 内核安装时配置) # 检查现有参数: grep GRUB_CMDLINE_LINUX_DEFAULT /etc/default/grub sudo update-grub3.3 AMD 独显功耗控制(15"/16" 双显卡机型)
sudo tee /usr/local/bin/gpu-mode >/dev/null <<'SCRIPT' #!/bin/bash [ "$1" != "low" ] && [ "$1" != "high" ] && [ "$1" != "auto" ] && { echo "Usage: gpu-mode [low|high|auto]"; exit 1 } echo "$1" > /sys/class/drm/card1/device/power_dpm_force_performance_level notify-send "GPU 模式" "已切换至: $1" SCRIPT sudo chmod +x /usr/local/bin/gpu-mode3.4 省电设置
sudo apt install tlp tlp-rdw sudo systemctl enable tlp # Intel 显卡省电 sudo tee /etc/modprobe.d/i915-power.conf >/dev/null <<'EOF' options i915 enable_psr=1 enable_fbc=1 EOF3.5 查看电池状态
upower -i /org/freedesktop/UPower/devices/battery_BAT0第四章:内核选择建议
策略 2016–2017(无 T2) 2018–2020(有 T2) 标准内核 ✅ 可用 ❌ 键盘/触控板/音频均失效 T2 内核 — ✅ 必需 Ubuntu GA(6.8) ✅ 最稳定 ⚠️ 需降级或使用 LTS T2 内核 Ubuntu HWE(6.11+) ⚠️ 需手动 linux-source ⚠️ 需 T2 主线内核 主线最新(6.x+) ⚠️ 可能引入回归 ⚠️ 关注 t2linux 发布页 第五章:已知无法解决的问题
功能 所有 Intel MacBook Pro Touch ID T1/T2 安全芯片协议未公开 硬件加密引擎 Apple 专属 macOS 独有功能(Handoff、Universal Clipboard) Apple 生态封闭 原生 Thunderbolt 热插拔(T2 款) IOMMU 兼容性问题 原装充电器快充信息 SMC 协议未公开 第六章:卸载指南
2016-2017 款
# 音频驱动 cd ~/snd_hda_macbookpro sudo ./install.cirrus.driver.sh -r # Touch Bar sudo dkms remove applespi/0.1 --all sudo rm -rf /usr/src/applespi-0.1T2 款
# 移除 T2 内核,回到默认内核 sudo apt remove linux-t2 linux-t2-lts sudo update-grub # 移除 T2 工具 sudo apt remove apple-bce apple-t2-audio-config t2fanrd tiny-dfr第七章:快速上手脚本
2016-2017 款一键脚本
#!/bin/bash set -e echo "=== MacBook Pro 2016-2017 Ubuntu 配置 ===" # 音频 git clone https://github.com/davidjo/snd_hda_macbookpro.git /tmp/snd cd /tmp/snd sudo ./install.cirrus.driver.sh # Wi-Fi 省电关闭 sudo tee /etc/NetworkManager/conf.d/wifi-powersave-off.conf >/dev/null <<'EOF' [connection] wifi.powersave = 2 EOF # 键盘/触控板 gsettings set org.gnome.desktop.peripherals.keyboard delay 250 gsettings set org.gnome.desktop.peripherals.keyboard repeat-interval 25 gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true # HiDPI gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']" echo "=== 完成,重启后生效 ==="T2 款一键脚本
#!/bin/bash set -e echo "=== MacBook Pro T2 Ubuntu 配置 ===" # 添加 T2 源 curl -fsSL https://raw.githubusercontent.com/AdityaGarg8/t2-ubuntu-repo/main/add_repo.sh | sudo bash sudo apt update # 安装 T2 内核 sudo apt install -y linux-t2 apple-t2-audio-config t2fanrd tiny-dfr # 内核参数 sudo tee /etc/default/grub.d/t2-params.conf >/dev/null <<'EOF' GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT intel_iommu=on iommu=pt pm_async=off" EOF sudo update-grub # Wi-Fi 省电关闭 sudo tee /etc/NetworkManager/conf.d/wifi-powersave-off.conf >/dev/null <<'EOF' [connection] wifi.powersave = 2 EOF # 风扇守护 sudo systemctl enable t2fanrd # 键盘映射(交换 Option/Cmd) sudo tee /etc/modprobe.d/hid_apple.conf >/dev/null <<'EOF' options hid_apple swap_opt_cmd=1 EOF echo "=== 完成,重启进入 T2 内核 ==="参考链接
- t2linux.org — T2 Mac Linux 项目官网
- t2linux/T2-Ubuntu — T2 Ubuntu 定制 ISO
- t2linux/T2-Ubuntu-Kernel — T2 内核 deb 包
- AdityaGarg8/t2-ubuntu-repo — T2 APT 软件源
- davidjo/snd_hda_macbookpro — Cirrus CS8409 音频驱动(2016-2017 款)
- almas/macbook12-spi-driver — Touch Bar SPI 驱动(2016-2017 款)
- Dunedan/mbp-2016-linux — MacBook Pro 2016/2017 Linux 兼容性清单
- t2linux/apple-bce-drv — T2 芯片 BCE 驱动
歡迎留言回复交流。
Log in to reply.