Вопрос или проблема
Я недавно установил Ubuntu 6.11.0-17-generic на мой MacBookPro14,1, и, как и у многих других, у меня были проблемы со звуком, поэтому я попробовал общее решение https://github.com/davidjo/snd_hda_macbookpro.git
, предложенное во многих темах, например Ubuntu 20.04 LTS без звука на MacbookPro, но когда я пытаюсь запустить ./install.cirrus.driver.sh
, я получаю следующую ошибку:
Исходные файлы ядра Ubuntu linux не найдены в /usr/src: /usr/src/linux-source-6.11.0.tar.bz2
предполагается, что пакет исходных файлов ядра linux не установлен
пожалуйста, установите пакет исходных файлов ядра linux:
sudo apt install linux-source-6.11.0
NOTE - Это не работает для ядер HWE
И когда я выполняю sudo apt install linux-source-6.11.0
, я получаю эту ошибку:
Чтение списков пакетов... Готово
Построение дерева зависимостей... Готово
Чтение информации о состоянии... Готово
E: Не удалось найти пакет linux-source-6.11.0
E: Не удалось найти какой-либо пакет по шаблону 'linux-source-6.11.0'
Мой каталог /usr/src
содержит следующее:
linux-headers-6.11.0-17-generic linux-headers-6.8.0-53-generic
linux-headers-6.8.0-53 linux-hwe-6.11-headers-6.11.0-17
Я не знаю, что такое “HWE kernels”, упомянутое в первой ошибке, но, основываясь на наличии linux-hwe-6.11-headers-6.11.0-17
, возможно, мое ядро — это HWE. Есть идеи, как это исправить?
Мое плохое решение: Я нашел это очень сложным и понизил свою версию ядра Linux в Ubuntu, как предложил @robert rozee, я вместо этого переключился на Fedora, и это решение исправило мой звук с первой попытки
привет noahlb123 и добро пожаловать на Ask Ubuntu 🙂
ты говоришь, что только что установил ядро 6.11, которое является очень новой версией. хотя это не слишком важно, ты используешь Ubuntu 24.04 или Ubuntu 24.10? я спрашиваю это, чтобы уменьшить фоновый шум.
поскольку ядро 6.11 такое новое, ты, возможно, обнаружишь, что некоторые вещи с ним работают не совсем правильно – это особенно верно для оборудования Apple, поскольку у разработчиков ядра (не связанных с Ubuntu) меньше доступа к документации Apple.
будет гораздо лучше вернуться к ядру 6.8, которое существует уже несколько дольше и гораздо более стабильно. по мере его развития, 6.11 в конечном итоге догонит, и только тогда будет советоваться обновление до него; есть старая присказка в Linux, “используй самое старое ядро, которое работает для тебя”.
надеюсь, у тебя будет хороший день, и, пожалуйста, сообщи, помогло ли вышеизложенное.
.
Ответ или решение
Когда возникает ошибка при установке драйвера snd_hda_macbookpro
на компьютере MacBookPro14,1 c использованием Ubuntu 6.11.0-17-generic, в большинстве случаев проблема связана с отсутствием необходимых исходных кодов ядра в системе. Давайте разберем, что означает это сообщение и как можно исправить ситуацию.
Теория
Ошибочное сообщение о том, что исходные коды ядра Linux не найдены в директории /usr/src
, указывает на то, что скрипт установки драйвера не может получить доступ к необходимым компонентам ядра, чтобы правильно скомпилировать и интегрировать модули. Это частая проблема, с которой сталкиваются пользователи, пытающиеся установить или скомпилировать драйверы в Linux.
HWE kernels
(Hardware Enablement Kernels) — это ядра, которые обновляются более часто в сравнении с LTS-релизами, чтобы обеспечивать поддержку новейшего оборудования. Это может быть причиной различий в необходимых пакетах исходного кода.
Пример
Ваша система явно показывает наличие linux-hwe-6.11-headers-6.11.0-17
в директории /usr/src
, что подтверждает использование HWE ядра. Когда вы пытаетесь установить исходные коды ядра через команду sudo apt install linux-source-6.11.0
, система сообщает об отсутствии такого пакета. Это связано с тем, что пакет linux-source
для точной версии вашего ядра может быть не доступен через стандартные репозитории Ubuntu.
Применение
Шаг 1. Установите необходимые пакеты
Чтобы решить эту проблему, вы можете попробовать установить более общий пакет исходников для вашей версии HWE ядра:
sudo apt update
sudo apt install linux-headers-$(uname -r) linux-generic-hwe-$(lsb_release -rs)
Эти команды установят заголовки текущего ядра и помогут в решении проблемы с отсутствующими исходными кодами.
Шаг 2. Используйте DKMS
Если установка заголовков не решает проблему, может быть полезно использовать DKMS (Dynamic Kernel Module Support), чтобы упростить процесс компиляции и установки модулей:
sudo apt install dkms
git clone https://github.com/davidjo/snd_hda_macbookpro.git
cd snd_hda_macbookpro
sudo dkms add .
sudo dkms build -m snd_hda_macbookpro -v 0.1
sudo dkms install -m snd_hda_macbookpro -v 0.1
Шаг 3. Обратитесь к более стабильной версии ядра
Если вы все еще сталкиваетесь с проблемами, рекомендуется вернуться к более стабильной версии ядра, например, версии 6.8, которая, как известно, лучше поддерживается и может иметь меньше проблем с совместимостью оборудования:
sudo apt install linux-image-6.8.0-53-generic linux-headers-6.8.0-53-generic
sudo reboot
После перезагрузки выберите нужную версию ядра через GRUB, чтобы загрузить систему с этой, более стабильной, версией.
Заключение
Работа с новейшими версиями ядра в Ubuntu, особенно на специфическом оборудовании Apple, может привести к подобным проблемам. Рекомендуется избегать обновления до самых новых версий ядра, если стабильность и совместимость с оборудованием являются приоритетом. Следуя этим шагам, вы сможете установить требуемые модули и исправить проблему со звуком на вашем устройстве.
Надеюсь, приведенные выше рекомендации помогут вам решить проблемы с установкой драйвера snd_hda_macbookpro
, и ваш звуковой адаптер начнет работать должным образом.