Что мне нужно сделать, чтобы установить соответствующие заголовки Linux для CoreOS, чтобы VirtualBox был счастлив?

Вот как далеко я зашел:

echo "deb http://download.virtualbox.org/virtualbox/debian jessie contrib" | tee -a /etc/apt/sources.list
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | apt-key add -
apt-get update
apt-get install -y linux-headers-amd64 virtualbox-5.1
dpkg-reconfigure virtualbox-5.1

Но я получаю сообщение об ошибке

dpkg-query: no path found matching pattern /lib/modules/4.7.3-coreos-r2/kernel
vboxdrv.sh: failed: Look at /var/log/vbox-install.log to find out what went wrong.
dpkg-query: no path found matching pattern /lib/modules/4.7.3-coreos-r2/kernel
This system is not currently set up to build kernel modules (system extensions).
Running the following commands should set the system up correctly:

  apt-get install -headers-4.7.3-coreos-r2
(The last command may fail if your system is not fully updated.)
  apt-get install -headers-r2

Экранные инструкции не правильно, поскольку -headers-4.7.3-coreos-r2 не существует. Как и linux-headers-4.7.3-coreos-r2 . Я также пробовал linux-headers - $ (uname-r) , который действительно расширяется до linux-headers-4.7.3-coreos-r2 и linux-headers-generic , в котором говорится, что у него нет кандидата на установку.

0
05.12.2016, 07:05
2 ответа

Я думаю, что требования предъявляются не к заголовкам ядра, а к пакету kernel-devel. Пакет kernel-devel предоставит вам модули .ko. Посмотрите, поможет ли вам выполнение apt-get install для пакета ядра devel?

0
28.01.2020, 04:49

Я понял основную проблему, но на другом ядре.

  • Основная проблема заключается в том, что kernel-develop на RHEL или linux-headers-generic на debian полезны только в том случае, если у вас есть общее ядро. CoreOS здесь использует собственное ядро.

  • Мне не удалось выяснить, как получить рабочий эквивалент linux-headers-generic в CoreOS. Я уверен, что это возможно при достаточном количестве археологических раскопок в Интернете, так как это распространяется под лицензией GPL.

  • Также было бессмысленно пытаться сделать это на GitLabs CoreOS в Docker в первую очередь, потому что VirtualBox потребовалось бы, чтобы модуль ядра был загружен на хост Docker, к которому у меня нет доступа. (насколько я понимаю)

  • Переключение ядра на универсальное также не всегда возможно.

Вместо этого я пошел и получил выделенного ведущего. У которого, в свою очередь, было собственное ядро, которое имеет ту же основную проблему.

На самом деле ответ - найти изменения, внесенные в ядро, и подготовить их в / usr / src , как здесь:

https://github.com/scaleway/kernel-tools#how -to-build-a-custom-kernel-module

0
28.01.2020, 04:49

Теги

Похожие вопросы