Я не считаю себя новичком в Linux, но, полагаю, я еще многого не знаю. У меня было несколько старых систем (12.04 и 14.04), в течение многих лет выполняющих различные проекты, однако мне трудно работать с недавно созданным рабочим столом с установленной Ubuntu 21.10. Я уверен, что будут рекомендации для новой установки, но я хотел бы избежать этого, если это возможно, учитывая, что мне нужно было выполнить довольно много модификаций, чтобы система работала так, как сейчас. Теперь к вопросу...
У меня проблемы с установкой сторонних модулей. Сюда входят драйверы VirtualBox, видеокарты Nvidia и драйверы сетевой карты Infiniband.
Последними изменениями, которые я внес в свою систему, было обновление с использованием ядра 5.13, а не 5.11 из-за проблем, связанных с драйверами CH341 для программирования микропроцессоров ESP (что устранило эту проблему с драйверами). Чуть позже обновился с 21.04 до 21.10
После обновления Ubuntu я установил Virtualbox 6.1 (deb с веб-сайта) и драйверы Nvidia 470 для своей видеокарты (через интерфейс дополнительных драйверов). После перезагрузки я заметил, что видеодрайвер вернулся к драйверу nouveau. Когда я попытался запустить виртуальную машину через VirtualBox, я получил ошибку «Драйвер ядра не установлен (rc=-1908)». Посмотрев в dmesg, я нашел...
[14.654818] vboxdrv: загрузка модуля вне дерева портит ядро.
[14.654918] vboxdrv: проверка модуля не удалась: подпись и/или требуемый ключ отсутствуют - заражение ядра
[14.655148] модуль: x86/modules: пропуск недопустимой цели перемещения, существующее значение не равно нулю для типа 1, loc 000000005ac6aed5, val ffffffffc0dab16f
и аналогично для других драйверов.
-- Настройка системы --
Процессор: AMD Райзен 7 5800Х
Оперативная память: Corsair Vengeance Pro 32 ГБ DDR4 3200 C16
Материнская плата: Gigabyte X570 AORUS Elite
Графический процессор: GIGABYTE GTX 750 Ti OC 2 ГБ
Жесткий диск: SAMSUNG 980 M.2 SSD 1 ТБ
Сетевая карта № 1: Материнская плата 1 Гб Ethernet
Сетевая карта № 2: сетевой адаптер Mellanox ConnectX 2 (MHQH19B-XTR) в режиме Ethernet 10 ГБ
ОС: Убунту 21.10 64бит
Ядро (используя uname -r
): 5.13.0-051300-общий
-- Шаги, выполненные при попытке исправить --
Подтверждено соответствие между текущим работающим ядром и модулями с использованием uname -r
и модинфо
команды. Оба показали ядро, указанное выше.
Отключите безопасную загрузку, включив CSM в биосе. Никаких изменений в dmesg. Инструкции, которым я следовал, описаны здесь...
https://forum.gigabyte.us/thread/6997/gigabyte-b450m-ds3h-disable-secure
- Отключите безопасную загрузку, установив mokutil + с помощью команды --disable-validation, после перезагрузки увидел «Загрузка в небезопасном режиме». Никаких изменений в dmesg или загрузке модуля. Инструкции, которым я следовал, описаны здесь...
Почему я получаю сообщение «Необходимый ключ недоступен» при установке сторонних модулей ядра или после обновления ядра?
- Когда отключение безопасной загрузки не сработало, я попытался подписать модули, используя метод, также описанный в ссылке выше. Никаких изменений в dmesg или загрузке модуля.
-- Другая важная информация --
При выполнении следующей команды кажется, что в системе довольно много ядер, может ли это быть потенциальной проблемой?
dpkg --список | grep -i -E --color 'linux-image|linux-kernel' | grep '^ii'
ii linux-image-5.11.0-37-generic 5.11.0-37.41 amd64 Общий образ ядра с подписью
ii linux-image-5.13.0-28-generic 5.13.0-28.31 amd64 Общий образ ядра с подписью
ii linux-image-5.13.0-30-generic 5.13.0-30.33 amd64 Общий образ ядра с подписью
ii linux-image-generic 5.13.0.30.40 amd64 Общий образ ядра Linux
ii linux-image-unsigned-5.13.0-051300-generic 5.13.0-051300.202106272333 amd64 Образ ядра Linux для версии 5.13.0 на 64-разрядной платформе x86 SMP
Я попытался загрузить ядро 5.13.0.30.40 из меню grub и переустановить / подписать модуль vboxdrv. Это не изменило вывод dmesg и не загрузило модуль.
Заранее спасибо за любую помощь. Пожалуйста, дайте мне знать, если потребуется какая-либо дополнительная информация.
Добавлено для уточнения...
Что может быть причиной того, что модули не загружаются, если я уже подтвердил, что они не в безопасной загрузке, пробовал подписи модулей и проверенную версию ядра?