Вопрос или проблема
После обновления с Linux 5.3 до Linux v5.4.2 на Arch Linux звук на моем компьютере полностью перестал работать. В настройках звука Gnome 3 я вижу только «Dummy Output», а команда aplay --list-pcm
сообщает: «Карты не найдены». Запуск alsactl init
выдает: «alsactl: init:1759: Звуковые карты не найдены».
Я уже попробовал множество решений.
Вот как мне удалось это решить:
sudo vim /etc/default/grub
- Найдите
GRUB_CMDLINE_LINUX_DEFAULT
и добавьтеsnd_hda_intel.dmic_detect=0
в конец. (например:GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 snd_hda_intel.dmic_detect=0"
) sudo grub-mkconfig -o /boot/grub/grub.cfg
- Перезагрузите систему.
Опция snd_hda_intel.dmic_detect=0
устарела в новых ядрах, вместо нее вы можете использовать snd-intel-dspcfg.dsp_driver=1
.
Но будьте осторожны, у этой опции несколько иное значение.
Если вы хотите сохранить параметры ядра (например, на Pop_OS!), вам нужно будет использовать kernelstub для добавления параметра.
Используйте либо sudo kernelstub -a intel-dspcfg.dsp_driver=1
, либо sudo kernelstub -a snd_hda_intel.dmic_detect=0
(в зависимости от версии ядра). Затем вы можете проверить, был ли параметр добавлен, запустив команду sudo cat /boot/efi/loader/entries/Pop_Os-current.conf
.
Если вы добавите параметр напрямую, он будет перезаписан после перезагрузки.
Указанное выше решение hopeseekr, похоже, работает для Dell G3 3590 с Nvidia GTX 1650 на новой установке ubuntu 20.04 в режиме Dual Boot вместе с Windows 10. Сначала звука не было, и не работал контроллер яркости экрана. Я попробовал следующие возможные решения, обновив grub, но ничего не сработало:
- Обновил
/etc/default/grub
, добавивquiet splash
вGRUB_CMDLINE_LINUX_DEFAULT
. - Обновил
/etc/default/grub
, добавивnouveau.nomodeset=0
вGRUB_CMDLINE_LINUX
.
Проверка alsamixer
в терминале также не показывала звуковую карту Intel. Обнаруживалась только звуковая карта Nvidia. Это полностью решило проблему. Я искал это решение в течение месяцев. В установке Ubuntu 18.04 звуковая карта Intel обнаруживалась правильно, но в Ubuntu 20.04 это не работало.
В последних (т.е. после 2020 года) производных от Fedora или RHEL выполните:
- vim /etc/default/grub
- Найдите GRUB_CMDLINE_LINUX и добавьте snd-intel-dspcfg.dsp_driver=1 в качестве еще одной опции внутри “кавычек”
- grub2-mkconfig -o /boot/grub2/grub.cfg
- Перезагрузите систему.
Этот рецепт предполагает, что вы просто не можете обнаружить ваше физическое устройство, поэтому драйверы и/или плагины ALSA, lame, VLC и т. д., а также другие мультимедиа уже установлены, следуя другим инструкциям (если это необходимо), и ваш пользователь является частью группы audio. Название устройства должно появиться, если вы наберете lspci -v | grep -A 7 -i Audio
.
Это, похоже, вызвано тем, что опция конфигурации SND_HDA_INTEL_DETECT_DMIC
была включена в ядре 5.4 (https://bugs.archlinux.org/task/64720).
Предложенное исправление — отменить изменение, передав snd_hda_intel.dmic_detect=0
в качестве параметра ядра, как объясняется в этом ответе.
Текущее решение может быть таковым:
add snd-intel-dspcfg.dsp_driver=0
в параметры ядра (/boot/grub2/grub.cfg
к концу строки linux
или в других местах в зависимости от вашего загрузчика)
Что сработало для меня на Debian unstable с этой звуковой картой:
lspci -nn | grep -i audio
00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d70] (rev 21)
это было
echo "options snd-intel-dspcfg dsp_driver=1" > /etc/modprobe.d/alsa.conf
С этой опцией используется устаревшая snd_hda_intel вместо SOF.
После выполнения этих 3 команд в терминале звук заработал на игровом ноутбуке HP Pavilion
echo "options snd_hda_intel dmic_detect=0" > audiofix.conf
sudo mv audiofix.conf /etc/modprobe.d/
reboot
Для будущих искателей решения аналогичной проблемы: предложенное решение с snd_hda_intel.dmic_detect=0
вероятно неверно.
У меня была аналогичная проблема, и я исправил ее установкой пакета sof-firmware в Archlinux.
Решение описано здесь.
Вот цитата с описанием того, что происходит и почему dmic_detect=0
в некотором смысле помогает:
Пакет прошивки sof не был установлен, и карта, следовательно, не могла работать в режиме dmic, в то время как использование старого dsp-драйвера вызвало отсутствие микрофона, так как старый драйвер не поддерживает цифровой микрофон. Возврат настроек в конфигурации grub к значениям по умолчанию и установка пакета прошивки sof исправила проблему. Можно закрывать.
Ответ или решение
После обновления до Linux 5.4 на Arch Linux некоторые пользователи столкнулись с проблемой отсутствия звука. При этом в настройках "Звук" в Gnome 3 отображалось лишь "Dummy Output", а команда aplay --list-pcm
сообщала: "Устройство(-я) не найдено". Выполнение команды alsactl init
также подтверждало отсутствие звуковых карт. Вот несколько решений, которые помогли решить эту проблему.
Решение 1: Изменение параметров загрузки GRUB
-
Откройте файл конфигурации GRUB для редактирования:
sudo vim /etc/default/grub
-
Найдите строку, начинающуюся с
GRUB_CMDLINE_LINUX_DEFAULT
, и добавьте к ней параметрsnd_hda_intel.dmic_detect=0
. Например:GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 snd_hda_intel.dmic_detect=0"
-
Обновите конфигурацию GRUB:
sudo grub-mkconfig -o /boot/grub/grub.cfg
-
Перезагрузите систему.
Решение 2: Альтернативный параметр загрузки
Если вы используете более новые ядра, параметр snd_hda_intel.dmic_detect=0
можно заменить на snd-intel-dspcfg.dsp_driver=1
. В этом случае шаги будут аналогичны:
-
Откройте файл конфигурации GRUB:
sudo vim /etc/default/grub
-
Добавьте
snd-intel-dspcfg.dsp_driver=1
кGRUB_CMDLINE_LINUX_DEFAULT
. -
Обновите и перезагрузите.
Решение 3: Установка пакета как sof-firmware
Некоторые пользователи решили проблему отсутствия звука, установив пакет sof-firmware
. Это может помочь, если проблема связана с драйверами для цифровых микрофонов. Установите пакет с помощью команды:
sudo pacman -S sof-firmware
И затем перезагрузите систему.
Решение 4: Использование alsamixer
и наладки
Также рекомендуется проверить настройки звуковой карты с помощью alsamixer
. Если ваша карта не отображается, то это может свидетельствовать о том, что драйвера не загружаются должным образом. Приведенные выше шаги должны помочь в устранении таких препятствий.
Заключение
Если ни одно из предложенных решений не помогло, стоит удостовериться, что ваша звуковая карта поддерживается и драйвера установлены корректно. Кроме этого, убедитесь, что ваш пользователь состоит в группе audio
. Ввод следующей команды может помочь проверить наличие аудиоустройств:
lspci -v | grep -A 7 -i Audio
Если вы по-прежнему испытываете трудности, возможно, потребуется обратиться к документации вашего дистрибутива или сообществу пользователей Linux для получения дополнительных советов и рекомендаций.