必须先确认声卡是否被内核识别:执行lspci | grep -i audio,若无输出则检查bios中hd audio controller是否启用;若仍无效,尝试sudo modprobe snd_hda_intel,并用cat /proc/asound/cards验证alsa是否初始化。

麒麟OS系统完全无声且音量图标灰显、控制中心无输出设备选项,极可能是主板音频芯片驱动根本未被内核加载——此时ALSA层尚未初始化,alsamixer、pactl、声音设置全部失效,必须从硬件识别与内核模块层面切入。
确认声卡是否被PCI总线识别
这一步是所有排查的起点,若此处失败,后续操作全部无效。打开终端执行:
lspci | grep -i audio
若返回空行,说明主板音频控制器未被PCI子系统发现。此时需立即重启进入BIOS,检查“HD Audio Controller”“Azalia Audio”或“Onboard Audio”是否设为Enabled;若该选项根本不存在或灰显,【基本可判定音频芯片供电电路或芯片本体已物理损坏】。
若BIOS中已启用但lspci仍无输出,尝试强制重扫描总线:
sudo modprobe -r snd_hda_intel && sudo modprobe snd_hda_intel
验证ALSA是否完成声卡注册
仅识别PCI设备还不够,必须确认ALSA已将声卡纳入音频子系统。执行:
cat /proc/asound/cards
正常应显示类似“0 [PCH] : HDA-Intel …”的条目。若返回“no soundcards found”或完全空白,【ALSA层彻底未启动,alsamixer打开即报错,必须停止后续所有软件层操作】。
此时不要急着调音量或换输出设备——那些界面控件根本没数据源。请直接跳转至驱动加载环节。
检查并加载声卡内核模块
银河麒麟主流版本依赖snd_hda_intel模块支持Intel/AMD平台板载HDA声卡。执行:
lsmod | grep snd_hda
若无任何输出,说明模块未加载。尝试手动载入:
sudo modprobe snd_hda_intel
若提示“Module snd_hda_intel not found”,说明该模块未随当前内核安装。先确认内核版本:
uname -r
再安装配套驱动包:
sudo apt install linux-modules-extra-$(uname -r)
安装完成后立即重试modprobe命令。成功后lsmod应出现snd_hda_intel及其依赖模块(如snd_hda_codec_realtek)。注意:部分新主板可能使用sof-audio-pci模块,可一并尝试加载:
sudo modprobe sof-audio-pci
查看内核音频初始化日志
定位驱动加载失败的具体原因。执行:
dmesg | grep -i -E "audio|snd|sof|hdmi" | tail -20
重点查找含“failed to load”“firmware request failed”“no codec”“probe error”的行。若出现firmware缺失提示(如sof-hda-generic.bin),需单独下载对应固件文件放入/lib/firmware/intel/目录并刷新initramfs。
若日志中反复出现“snd_hda_intel: probe of 0000:00:1f.3 failed with error -22”,说明声卡硬件响应异常,【大概率是BIOS设置错误或芯片虚焊/损坏】,此时需回退至BIOS检查或考虑更换主板。











