简述:
随着 Linux kernel 5.4 稳定版的发布,各个主流的 Linux 发行版也都将最新发行版的默认内核都设置为了 5.4 ,往往内核一升级就会带来各种问题.这不这个最近在物理机上尝试了几个自己喜欢的发行版 (标题所列) 均出现了声卡无法正常识别的问题.
我这里问题的原因就是最新的 linux 5.4 内核的默认启动配置策略发生了变化导致,只需修改启动默认配置策略即可.
操作前确认
1. 确认你的电脑是不是真的无法识别声卡
有些没有声音的情况是,电脑可以识别声卡,但是在选择输出设备的时候没有选择正确
这里以 Deepin V20 的声音配置界面为例,其他 Linux 操作系统类似.
2. 系统是否能够读取声卡信息
主要是确认声卡是否出现物理损坏导致的物理信息无法被系统读取,如果声卡硬件没有损坏往往就可以得到类似如下信息.
3. 确认系统内核版本
存在问题的内核版本为 5.4,我这里是 5.4.50,应该是所有的 5.4 都存在这个问题.
完成上述确认之后,你就可以进行如下操作了.
具体操作如下:
1. 修改grub 配置文件
文件所在位置 /etc/default/grub,在GRUB_CMDLINE_LINUX_DEFAULT 后面添加如图所示内容
GRUB_CMDLINE_LINUX_DEFAULT="${这里你的原有配置不要动} snd_hda_intel.dmic_detect=0"
2. 更新 grub 配置,
由于以前 grub 的配置是很麻烦,所以现在的 Grub2 只需要修改上述文件,然后执行配置重新生成策略即可.
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
# 也可是使用简写
$ sudo update-grub
3. 重启生效
$ reboot
补充
由上述分析可知,解决问题的方式适合所有的基于 Linux kernel 5.4 的发行版, 故 manjaro 之类的其他发行版均可以尝试.
参考
https://askubuntu.com/questions/1175052/after-ubuntu-19-04-update-sound-card-cannot-be-detected