У меня 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 ответа2

2

Чтобы сконфигурировать, собрать и установить новое ядро в Ubuntu 10.04, выполните следующие действия:

  1. Перейдите в каталог с исходным деревом ядра (при условии, что это ~/linux):

    cd ~/linux
    
  2. Скопируйте текущую конфигурацию ядра в исходное дерево:

    cp /boot/config-2.6.32-32-generic .config
    
  3. Настройте дополнительные параметры (здесь я просто принимаю значения по умолчанию):

    yes '' | make oldconfig
    

    Теперь вы можете изменить некоторые параметры, если вы не хотите значения по умолчанию. На моей машине я выбрал « Processor family » = « Core 2 » и « Preemption model » = « Preemptible kernel ». Для этого запустите:

    make menuconfig
    

    и выбрал варианты, которые вам нравятся. Вы можете нажать ? на любой вариант и там будет краткое описание.

  4. Сборка ядра:

    make -j4 > /dev/null
    

    измените 4 на (number_of_physical_cores_on_your_machine * 2), это сделает сборку ядра намного быстрее. Не бойтесь > /dev/null так как все предупреждения и ошибки все равно будут выводиться.

  5. Установите новое ядро:

    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

0

Я рекомендую Gentoo. Немного сложнее установить и использовать Ubuntu, но вы знакомитесь с системой с самого начала. Даже если вы новичок, инструкции по установке проведут вас через весь процесс, и компиляция вашего собственного ядра является его частью.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .