Компиляция и установка нового ядра в Ubuntu 10.04
У меня Ubuntu 10.04 работает на VMware на хосте Windows. Я изучаю программирование драйверов устройств Linux. В процессе я пытался настроить дерево исходных кодов Linux, а также собрать и загрузить собственное ядро. Я сделал два пакета.deb (собственное ядро) и установил их с помощью dpkg ( http://www.howtoforge.com/kernel_compilation_ubuntu_p2). Затем, когда я перезагружаюсь, он говорит: паника ядра, неспособность смонтировать root fs на unknown-block(0,0). Пожалуйста, руководство, что я должен делать?
Моя система имеет GRUB2.
Также, пожалуйста, расскажите, какой дистрибутив Linux лучше всего подходит для изучения программирования драйверов устройств Linux. Я нахожу Ubuntu несколько сложным, так как большинство учебников, которые я нахожу в интернете для сборки ядер, написаны для универсального linux, но в Ubuntu есть другой путь. Там не так много помощи, доступной.
2 ответа
Чтобы сконфигурировать, собрать и установить новое ядро в Ubuntu 10.04, выполните следующие действия:
перейдите в каталог с исходным деревом ядра (при условии, что это
~/linux):cd ~/linuxСкопируйте текущую конфигурацию ядра в исходное дерево:
cp /boot/config-2.6.32-32-generic .configНастройте дополнительные параметры (здесь я просто принимаю значения по умолчанию):
yes '' | make oldconfigТеперь вы можете изменить некоторые параметры, если вы не хотите значения по умолчанию. На моей машине я выбрал '
Processor familyзнак равноCore 2' а также 'Preemption modelзнак равноPreemptible kernel". Для этого запустите:make menuconfigи выбрал варианты, которые вам нравятся. Вы можете нажать
?на любой вариант и там будет краткое описание.Сборка ядра:
make -j4 > /dev/nullменять
4к (number_of_physical_cores_on_your_machine * 2) это сделает сборку ядра намного быстрее. Не бойся> /dev/nullтак как все предупреждения и ошибки все равно будут выводиться.Установите новое ядро:
sudo -s make INSTALL_MOD_STRIP=1 modules_installты можешь просто
make modules_installесли вы планируете отлаживать ядроmake install update-initramfs -c -k `make kernelrelease` update-grub exit
Это руководство основано на новом ядре на Ubuntu 10.04
Я рекомендую Gentoo. Немного сложнее установить и использовать Ubuntu из коробки, но вы знакомитесь с системой с самого начала. Даже если вы новичок, инструкции по установке проведут вас через весь процесс, и компиляция вашего собственного ядра является его частью.