皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

如何修复运行 Linux 的 MacBook 计算机上的虚拟输出/无声音问题

如何修复运行 Linux 的 MacBook 计算机上的虚拟输出/无声音问题

是的,Linux 可以在 MacBook 计算机上安装和运行,尤其是在配备 Intel 处理器的旧型号上,但您很可能没有开箱即用的声音,只有一个虚拟输出,所以以下是修复它的方法。

我最近收到了一台旧的 MacBook Pro 电脑,有人想在上面安装 Linux,因为 Apple 不再支持该设备。我说的是 13 英寸 MacBook Pro 2017,带有两个 Thunderbolt 3 端口和 MacBookPro14,1 型号标识符。

我已经在上面尝试了几个发行版,包括 Ubuntu 25.04 (Plucky Puffin)、Ubuntu 24.04.2 (Noble Numbat)、Fedora Linux 42 和 openSUSE Tumbleweed。Ubuntu 25.04 根本无法工作,因为它无法识别键盘和触摸板,但其余部分工作正常。

但是,它们都遇到了声卡无法正常工作的相同问题。我在网上搜索并尝试了各种解决方案(其中大多数在几年前就过时了——甚至 Google 的 AI 概述也是错误的),但只有一个解决方案有效,所以我为寻找快速解决这个问题的每个人编写本教程。

忘记重新启动 PipeWire 或 PulseAudio 守护进程、修改 ALSA 配置、将内核模块列入黑名单、安装不同的内核等。Linux 上 Dummy Output 的问题在于缺少正确的驱动程序,因此要修复它,您需要首先确定 MacBook 声卡使用的编解码器。

对于 MacBookPro14,1 型号,编解码器为 Cirrus Logic CS8409。通过在终端应用程序中运行以下命令来找出您的计算机使用的声音编解码器。

cat /proc/asound/card*/codec* | grep Codec

这是上述命令在 MacBook Pro 13 英寸 2017 型号上的输出。

如何修复运行 Linux 的 MacBook 计算机上的虚拟输出/无声音问题

由于某种未知原因,当前的 Linux 内核版本不包含 Cirrus Logic CS8409 音频编解码器的驱动程序,但好消息是有人创建了一个驱动程序。感谢 Alexander Egorenkov,您可以通过克隆 snd-had-codec-cs8409 GitHub 存储库,在使用 Cirrus Logic CS8409 音频编解码器的设备上启用音频。

在您的主目录中,打开终端并运行以下命令:

git clone https://github.com/egorenar/snd-hda-codec-cs8409.git
make
sudo make install

现在重新启动您的计算机。就是这样!几秒钟后,您将看到已使用 Cirrus Logic CS8409 音频驱动程序在计算机上启用音频。从特色屏幕截图中可以看出,即使检测到内部麦克风,您也可以配置输出,并且启用了 Fade 选项。

我只能希望这个声音驱动程序将包含在下一个 Linux 内核版本中,因为它将为我们中的许多人节省大量时间和精力来修复这个本来就不应该存在的问题。当然,您可以将本教程用作蓝图,通过安装/启用正确的驱动程序来解决其他 Linux PC 上的 Dummy Output 问题。

转自 How to Fix Dummy Output/No Sound Issue on MacBook Computers Running Linux – 9to5Linux