Новичок, спрашивающий о перекомпиляции ядра [duplicate]

для создания Live USB на любой дистрибутив Linux скачать здесь помощи unetbootin форма:

http://unetbootin.github.io/

скачать дистрибутив при помощи unetbootin или скачать ISO с сайта дистрибутива. Ты уже скачал Ubuntu 14.04, так что вы можете использовать.

следуйте инструкциям по ссылке и создания загрузочных USB.

39
задан 10 August 2012 в 16:16

6 ответов

[D0] 1. Используйте apt-get source, чтобы загрузить версию ядра Ubuntu apt-get source linux-image-$(uname -r)

, в которой содержится папка, которая содержит, например:

linux-3.2.0 linux_3.2.0-26.41.dsc linux_3.2.0-26.41.diff.gz linux_3.2.0.orig.tar.gz

Жирный шрифт включает все Ubuntu / Debian настройки.

2. Чтобы создать ядро ​​с вашим собственным .config, используйте «старомодный» метод Debian make-kpkg

Это альтернативный старомодный способ, описанный в вики:

sudo apt-get install kernel-package

Если вы скомпилируете ядро ​​в первый раз:

sudo apt-get build-dep linux-image-$(uname -r)

Затем cd в исходный каталог (здесь linux-3.2.0) и либо запустите make oldconfig, чтобы создать .config с установленной конфигурацией вашего запуска или скопировать третью часть .config в этот каталог.

В зависимости от того, хотите ли вы текст или графическую конфигурацию, установите:

( Текст)

sudo apt-get install libncurses5 libncurses5-dev

(Графический)

sudo apt-get install qt3-dev-tools libqt3-mt-dev

И затем запустите:

(Текст)

make menuconfig

( Графический)

make xconfig

Когда закончите, просто запустите:

fakeroot make-kpkg -j N --initrd --append-to-version=my-very-own-kernel kernel-image kernel-headers

, где N - сколько заданий запускается параллельно (как правило, количество процессоров у вас есть), и my-very-own-kernel является пользовательской строкой для идентификации этой сборки.

Когда все будет готово, файлы образа ядра и заголовочные файлы будут готовы как дебы в родительском каталоге; вы можете установить их с помощью sudo dpkg -i, который также позаботится о добавлении записей GRUB и т. д.

36
ответ дан 18 July 2018 в 06:40
[D0] 1. Используйте apt-get source, чтобы загрузить версию ядра Ubuntu apt-get source linux-image-$(uname -r)

, в которой содержится папка, которая содержит, например:

linux-3.2.0 linux_3.2.0-26.41.dsc linux_3.2.0-26.41.diff.gz linux_3.2.0.orig.tar.gz

Жирный шрифт включает все Ubuntu / Debian настройки.

2. Чтобы создать ядро ​​с вашим собственным .config, используйте «старомодный» метод Debian make-kpkg

Это альтернативный старомодный способ, описанный в вики:

sudo apt-get install kernel-package

Если вы скомпилируете ядро ​​в первый раз:

sudo apt-get build-dep linux-image-$(uname -r)

Затем cd в исходный каталог (здесь linux-3.2.0) и либо запустите make oldconfig, чтобы создать .config с установленной конфигурацией вашего запуска или скопировать третью часть .config в этот каталог.

В зависимости от того, хотите ли вы текст или графическую конфигурацию, установите:

( Текст)

sudo apt-get install libncurses5 libncurses5-dev

(Графический)

sudo apt-get install qt3-dev-tools libqt3-mt-dev

И затем запустите:

(Текст)

make menuconfig

( Графический)

make xconfig

Когда закончите, просто запустите:

fakeroot make-kpkg -j N --initrd --append-to-version=my-very-own-kernel kernel-image kernel-headers

, где N - сколько заданий запускается параллельно (как правило, количество процессоров у вас есть), и my-very-own-kernel является пользовательской строкой для идентификации этой сборки.

Когда все будет готово, файлы образа ядра и заголовочные файлы будут готовы как дебы в родительском каталоге; вы можете установить их с помощью sudo dpkg -i, который также позаботится о добавлении записей GRUB и т. д.

36
ответ дан 24 July 2018 в 18:39

Быстрые инструкции по созданию ядра Ubuntu (в отличие от ванили) можно найти здесь: https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel.

Я не буду копировать весь wiki, но я перечислю минимальные шаги для компиляции версии ядра Ubuntu, которую вы в настоящее время установили. (Чтобы получить самую последнюю версию, клонируйте ядро ​​git-репозитория предстоящей версии Ubuntu.) Протестировано на Ubuntu 16.04.

# Get source code apt-get source linux-image-$(uname -r) # Install dependencies sudo apt-get build-dep linux-image-$(uname -r) # Compile cd linux-4.4.0 fakeroot debian/rules clean fakeroot debian/rules binary # Install (obviously the versions will be different) cd .. sudo dpkg -i linux-image-4.4.0-38-generic_4.4.0-38.57_amd64.deb linux-headers-4.4.0-38_4.4.0-38.57_all.deb linux-headers-4.4.0-38-generic_4.4.0-38.57_amd64.deb
2
ответ дан 18 July 2018 в 06:40

Вот шаги.

Загрузите и извлеките исходный код ядра, которое вы хотите построить.

Вы можете получить информацию о том, как это сделать: Скомпилировать Linux 2.6, но значительно модернизироваться. исходный исходный код ядра на kernel.org. Здесь будет использоваться версия 3.16.1 (последнее стабильное ядро ​​на момент написания этой статьи). Таким образом, вам может потребоваться изменить эти команды, если вы используете другую версию.

Исходный код ядра в настоящее время предоставляется. [D6] upstream .xz archives, поэтому нажмите «tar». xz "по любой желаемой версии:

После xz в каталог, в который вы загрузили архив, вы можете извлечь его с помощью kernel.org :

tar xf linux-3.16.1.tar.xz

Установите необходимые инструменты сборки и выполните конфигурацию ядра.

Чтобы получить инструментальную цепочку Ubuntu (gcc, make и т. д. вперед) установите метатеку сборки:

sudo apt-get update sudo apt-get install build-essential

Два разумных способа настройки того, что входит в ваше ядро, предоставляются целевыми make xconfig и menuconfig.

xconfig запускает графическую конфигурационную утилиту, тогда как menuconfig является текстовым (т. е. его интерфейс полностью отображается в вашем терминале). Для каждого из них требуется некоторое дополнительное программное обеспечение . Эта процедура основана на «Практическое руководство для Linux Linux 2.6» nixCraft: но значительно модернизирована. предоставлена ​​ toolchain .

To сконфигурировать графически, установить libqt4-dev и build-essential и запустить make xconfig:

sudo apt-get install libqt4-dev pkg-config make xconfig

Чтобы настроить графически , установите libncurses5-dev ( благодаря libqt4-dev для этой информации) и запустите make menuconfig:

sudo apt-get install libncurses5-dev make menuconfig

Создайте сконфигурированное ядро.

Сначала запустите это, чтобы скомпилировать kernel и create vmlinuz:

make

vmlinuz - это «ядро». В частности, это изображение ядра будет несжато и загружено в память с помощью vmlinuz или любого другого загрузчика, который вы используете.

Затем создайте загрузчик ! d43]:

make modules

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

Предполагая, что эти команды make выполнены успешно, пришло время установить новое ядро. Сначала Чтобы настроить графически

sudo make modules_install

Затем Чтобы настроить графически :

sudo make install

Это ставит vmlinuz-3.16.1 (копия vmlinuz), config-3.16.1 (текстовый файл, сохраняющий параметры конфигурации ядра) и System.map-3.16.1 (таблица поиска символов ядра) в /boot. Более подробную информацию см. В этом сообщении comp.os.linux.misc от Hadron и 3.16.1 .

Окончательная настройка, поэтому ядро ​​можно запустить и загрузить систему: [ ! d57]

Этот раздел частично основан на информации в nixCraft .

С ядром теперь, где это необходимо, ему необходимо:

запись в конфигурации загрузчика, поэтому вы можете выбрать и загрузить с нее. исходную файловую систему RAM, среду, из которой ядро ​​загружает драйверы и монтирует файловую систему /. (Если вы устанавливаете старое ядро ​​или настроили свое ядро ​​на использование devfs вместо нового udev, вам может понадобиться или вы хотите установить исходный ramdisk. Если вы знаете, что вам это нужно, см. [F33].)

Создайте свои initramfs с помощью таблицы поиска символов ядра :

cd /boot sudo mkinitramfs -ko initrd.img-3.16.1 3.16.1

Когда вы обновляете конфигурацию загрузчика GRUB2, который был по умолчанию в Ubuntu с 9.10 - это сообщение comp.os.linux.misc от Hadron и добавьте возможность его загрузки.

sudo update-grub

Попробуйте свое ядро.

Теперь вы можете перезагрузиться, чтобы протестировать новое ядро. Вам может потребоваться удерживать Shift во время загрузки, чтобы увидеть меню загрузки GRUB, где вы можете выбрать между различными установленными ядрами.

Чтобы сделать ваше ядро ​​(или другое) по умолчанию, см. [D79] по умолчанию в Ubuntu

16
ответ дан 18 July 2018 в 06:40

Быстрые инструкции по созданию ядра Ubuntu (в отличие от ванили) можно найти здесь: https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel.

Я не буду копировать весь wiki, но я перечислю минимальные шаги для компиляции версии ядра Ubuntu, которую вы в настоящее время установили. (Чтобы получить самую последнюю версию, клонируйте ядро ​​git-репозитория предстоящей версии Ubuntu.) Протестировано на Ubuntu 16.04.

# Get source code apt-get source linux-image-$(uname -r) # Install dependencies sudo apt-get build-dep linux-image-$(uname -r) # Compile cd linux-4.4.0 fakeroot debian/rules clean fakeroot debian/rules binary # Install (obviously the versions will be different) cd .. sudo dpkg -i linux-image-4.4.0-38-generic_4.4.0-38.57_amd64.deb linux-headers-4.4.0-38_4.4.0-38.57_all.deb linux-headers-4.4.0-38-generic_4.4.0-38.57_amd64.deb
2
ответ дан 24 July 2018 в 18:39

Вот шаги.

Загрузите и извлеките исходный код ядра, которое вы хотите построить.

Вы можете получить информацию о том, как это сделать: Скомпилировать Linux 2.6, но значительно модернизироваться. исходный исходный код ядра на kernel.org. Здесь будет использоваться версия 3.16.1 (последнее стабильное ядро ​​на момент написания этой статьи). Таким образом, вам может потребоваться изменить эти команды, если вы используете другую версию.

Исходный код ядра в настоящее время предоставляется. [D6] upstream .xz archives, поэтому нажмите «tar». xz "по любой желаемой версии:

После xz в каталог, в который вы загрузили архив, вы можете извлечь его с помощью kernel.org :

tar xf linux-3.16.1.tar.xz

Установите необходимые инструменты сборки и выполните конфигурацию ядра.

Чтобы получить инструментальную цепочку Ubuntu (gcc, make и т. д. вперед) установите метатеку сборки:

sudo apt-get update sudo apt-get install build-essential

Два разумных способа настройки того, что входит в ваше ядро, предоставляются целевыми make xconfig и menuconfig.

xconfig запускает графическую конфигурационную утилиту, тогда как menuconfig является текстовым (т. е. его интерфейс полностью отображается в вашем терминале). Для каждого из них требуется некоторое дополнительное программное обеспечение . Эта процедура основана на «Практическое руководство для Linux Linux 2.6» nixCraft: но значительно модернизирована. предоставлена ​​ toolchain .

To сконфигурировать графически, установить libqt4-dev и build-essential и запустить make xconfig:

sudo apt-get install libqt4-dev pkg-config make xconfig

Чтобы настроить графически , установите libncurses5-dev ( благодаря libqt4-dev для этой информации) и запустите make menuconfig:

sudo apt-get install libncurses5-dev make menuconfig

Создайте сконфигурированное ядро.

Сначала запустите это, чтобы скомпилировать kernel и create vmlinuz:

make

vmlinuz - это «ядро». В частности, это изображение ядра будет несжато и загружено в память с помощью vmlinuz или любого другого загрузчика, который вы используете.

Затем создайте загрузчик ! d43]:

make modules

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

Предполагая, что эти команды make выполнены успешно, пришло время установить новое ядро. Сначала Чтобы настроить графически

sudo make modules_install

Затем Чтобы настроить графически :

sudo make install

Это ставит vmlinuz-3.16.1 (копия vmlinuz), config-3.16.1 (текстовый файл, сохраняющий параметры конфигурации ядра) и System.map-3.16.1 (таблица поиска символов ядра) в /boot. Более подробную информацию см. В этом сообщении comp.os.linux.misc от Hadron и 3.16.1 .

Окончательная настройка, поэтому ядро ​​можно запустить и загрузить систему: [ ! d57]

Этот раздел частично основан на информации в nixCraft .

С ядром теперь, где это необходимо, ему необходимо:

запись в конфигурации загрузчика, поэтому вы можете выбрать и загрузить с нее. исходную файловую систему RAM, среду, из которой ядро ​​загружает драйверы и монтирует файловую систему /. (Если вы устанавливаете старое ядро ​​или настроили свое ядро ​​на использование devfs вместо нового udev, вам может понадобиться или вы хотите установить исходный ramdisk. Если вы знаете, что вам это нужно, см. [F33].)

Создайте свои initramfs с помощью таблицы поиска символов ядра :

cd /boot sudo mkinitramfs -ko initrd.img-3.16.1 3.16.1

Когда вы обновляете конфигурацию загрузчика GRUB2, который был по умолчанию в Ubuntu с 9.10 - это сообщение comp.os.linux.misc от Hadron и добавьте возможность его загрузки.

sudo update-grub

Попробуйте свое ядро.

Теперь вы можете перезагрузиться, чтобы протестировать новое ядро. Вам может потребоваться удерживать Shift во время загрузки, чтобы увидеть меню загрузки GRUB, где вы можете выбрать между различными установленными ядрами.

Чтобы сделать ваше ядро ​​(или другое) по умолчанию, см. [D79] по умолчанию в Ubuntu

16
ответ дан 24 July 2018 в 18:39
  • 1
    Шаг 3, make menuconfig требует apt get install libncurses5-dev – Hannu 19 August 2014 в 15:03
  • 2
    @ Ханну спасибо, я просто совсем забыл упомянуть об этом. 64-битным пользователям системы может потребоваться «ia32-libs». также для поддержки 32-разрядных программ для запуска. – Novice 19 August 2014 в 15:37
  • 3
    Может быть, лучше найти и независимый от версии пакет ... Я не уверен, что есть хоть что. – Hannu 19 August 2014 в 15:47
  • 4
    @EliahKagan Спасибо. Теперь все в порядке или я должен удалить его полностью? У меня нет проблем в этом. – Novice 19 August 2014 в 17:05
  • 5
    -1 Это не создает ядро ​​ Ubuntu . Он даже не создает файлы .deb. Это рецепт проблем. – Aleksandr Dubinsky 28 September 2016 в 15:11

Другие вопросы по тегам:

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