|
2451 / 362 / 9
Регистрация: 27.06.2009
Сообщений: 880
|
||||||||||||||||||||||||||||||||||||||
Сборка и компилирование ядра Linux02.10.2009, 17:21. Показов 24620. Ответов 0
Метки нет (Все метки)
Сборка и компилирования ядра Linux.
1. Приобретение исходников ядра: Исходники нужной версии ядра можно найти найти на ftp://ftp.kernel.org. Для того что бы найти ядро нужной нам версии перейдем в каталог /pub/linux/. Скачав нужное ядро поместим его в директорию /usr/src В той же директории нужно создать каталог для файлов ядра, обычно принято называть данный каталог: linux-2.X.X, где X.X версия ядра. Если каталог предварительно существует то нужно его удалить. 2. Подготовка: После того как успешно завершен этап приобретения исходников, нужно подготовить дерево каталогов для файлов ядра. Если linux-2.X.X.tar.gz:
Для начала компиляции нового ядра нужно команду:
3.Настройка ядра На данном этапе нам нужно выбрать опции ядра которые будут использоваться. Для настройки ядра необходимо выполнить команду make config, которая запускает скрипт настройки, пытающийся в режиме диалога с пользователем настроить конфигурацию будущего ядра. Те, кто работает в системе X Window, могут использовать make xconfig, если у вас установлен интерпретатор Tk. В текстовой консоли можно использовать make menuconfig, обеспечивающий текстовый интерфейс конфигуратора. При ответах на вопросы, задаваемых конфигуратором ядра, обычно используют `y' (да) или `n' (нет). Драйвера устройств могут также иметь опцию `m'. Это означает ``module (модуль)'', предполагая, что система будет компилировать этот драйвер, но не вставит его прямо в ядро, а сделает загружаемым модулем. Загружаемый модель - это часть кода ядра, которая не включена прямо в ядро. Такие модули компилируются отдельно и затем могут быть вставлены в запущенное ядро практически в любое время. Основные параметры настройки ядра: Эмуляция математических функций ядром: Если в Вашем компьютере отсутствует математический сопроцессор (например, у Вас 386 или 486SX), то на этот вопрос необходимо ответить `y'. Если же у Вас есть математический сопроцессор, то он будет использоваться по умолчанию, то есть независимо от ответа эмуляция будет проигнорирована. Единственное следствие использования эмуляции в том, что размер ядра и использование памяти будут больше. Эмуляция существенно отражается на производительности графики в X Window. Поддержка обычных дисков (типа MFM/RLL) и дисков/cdrom IDE: Наличие этой опции означает, что ядро будет поддерживать стандартные жесткие диски для PC, которые устанавливаются в большинстве компьютеров. Соответствующий драйвер не включает поддержку SCSI дисков; для этого существует отдельная опция настройки. Затем необходимо выбрать тип драйвера: ``old disk-only'' (поддержка только старых дисков типа MFM/RLL) и ``new IDE'' (новых дисков типа IDE). Основное отличие в том, что драйвер старых дисков поддерживает только два диска на одном интерфейсе, а драйвер новых - поддерживает вторичный (secondary) интерфейс и накопители IDE/ATAPI cdrom. Новый драйвер на 4k больше старого, и он может существенно улучшить производительность вашего диска, особенно если у вас новое оборудование (типа EIDE). Поддержка сети: Вы должны ответить `y', если ваша машина подключена к локальной сети, или если вы хотите использовать пакеты SLIP, PPP, term и т.п. для доступа к сети internet по dialup. Кроме того, многие пакеты (например, оконная система X Window) требуют наличия поддержки сети, поэтому даже если вы не подключены ни к какой сети, вы должны ответить `y'. Далее будет задан вопрос о включении поддержки TCP/IP; отвечайте `y',если вы абсолютно уверены в своем выборе. Ограничить память размером до 16MB: Существуют контролеры DMA, работающие с ошибками на машинах с процессором 386. Проблема состоит в ошибках адресации ОЗУ больше 16 Мб; вы можете ответить `y', если у вас именно такой контроллер. System V IPC Данная опция включает в ядро средства IPC (Interprocess Communication). Эти средства предоставляют механизм, позволяющий процессу общаться с другими процессами, так что здесь рекомендуется ответить `y'. Тип процессора (386, 486, Pentium, PPro...) Эта опция позволяет внести некоторую оптимизацию ядра для выбранного типа процессора; ядра работают быстрее, но ядро может быть несколько больше. Современные ядра обязательно требуют определения типа процессора, для которого вы компилируете ядро. Ядро для Intel386 будет работать на всех машинах. Поддержка SCSI: Если у вас есть устройства с интерфейсом SCSI, ответьте `y'. Конфигуратор потребует дополнительную информацию о поддержке CD-ROM, дисков, а также о типе Вашего адаптера SCSI. Поддержка сетевых адаптеров: Если у вас есть сетевая карта, или вы хотите использовать SLIP, PPP, или адаптер параллельного порта для подключения к Internet, ответьте `y'. Скрипт настройки запросит у вас тип карты и перечень протоколов, которые вам необходимы. Файловые системы: Конфигуратор спросит у вас, поддержку каких файловых систем вы хотите иметь в своей системе. Поддержка файловой системы позволит Вам монтировать разделы диска с разными файловыми системами в единое дерево/ Поддерживаются следующие основные типы файловых систем:
Современные дистрибутивы не создают файловые системы типа minix, поэтому она не часто встречается, но ее полезно включить. Дело в том, что некоторые программы с ``дисками для восстановления (rescue disk)'' могут использовать ее, поскольку файловая система minix хорошо подходит для использования на гибких дисках.
много важных утилит для Linux зависят от этого выбора.
Кроме этого, в ядро постоянно добавляются драйвера для других файловых систем, так что список может быть расширен. Включайте поддержку только для тех систем, вероятность использования которых достаточно велика. Символьные устройства: В этом разделе вы выбираете драйвера для вашего принтера (параллельного принтера), мыши (многие ноутбуки используют протокол мыши PS/2 для своих встроенных трекболов), некоторых накопителей на магнитной ленте и других ``символьных'' устройств. Ответьте `y', в тех позициях, где это необходимо. Звуковые карты: Если у вас установлена звуковая карта, то ответьте `y', и далее другая программа настройки будет задавать вам вопросы о вашей звуковой карте (ее тип, параметры настройки и т. д.). Количество пунктов в конфигураторе также может меняться в зависимости от версии ядра и наличия драйверов различных устройств в его исходном коде. 4.Очистка и создание зависимостей Когда скрипт конфигурирования закончит свою работу, он сообщит вам, что необходимо выполнить действия:
находятся на месте. Эта процедура завершается достаточно быстро. После ее окончания Вы можете выполнить `make clean'. Эта процедура удаляет все объектные файлы и некоторые другие вещи, оставшиеся от предыдущей компиляции ядра. Не забывайте выполнить этот шаг до начала перекомпиляции ядра. 5. Этап компиляции: После выполнения dep и clean, вы можете выполнять `make zImage' или `make zdisk' (эта часть процесса занимает длительное время). make bzImage скомпилирует ядро и оставит в директории arch/i386/boot файл, названный `bzImage'. Это новое сжатое ядро. make zdisk делает тоже самое, но помещает новый файл zImage на гибкий диск, который вы должны вставить в устройство ``A:''. `zdisk' является довольно удобной опцией для тестирования новых ядер; если новое ядро не загружается (или просто работает неправильно), то просто вытащите дискету из дисковода и загрузитесь со старым ядром. Это может пригодиться и в том случае, если вы случайно удалили ядро. Все ядра обычно являются сжатыми, поэтому они имеют букву `z' в начале имени. Сжатое ядро автоматически разжимается при выполнении. 6.Перемещение ядра: После завершения процесса сборки тебе необходимо инсталлировать как ядро, так и его map-файл в каталог, где они будут постоянно находиться (/boot). Скопируйте файл System.map в каталог /boot, добавив номер версии ядра в конец строки:
7.Обновление конфигурации загрузчика: Если в качестве загрузчика системы был выбран GRUB, вы должны изменить файл /boot/grub/menu.lst: Конфиг старого ядра:
Вот в принципе и все. Теперь можно перезагружать машину и загружать Linux уже с новым ядром. p.s. Все выше описанное происходило в Debian Lenny
29
|
||||||||||||||||||||||||||||||||||||||
| 02.10.2009, 17:21 | |
|
Ответы с готовыми решениями:
0
Сборка ядра с нуля и запись Linux на флешку в виде iso-образа Создание Linux на основе ядра Linux (kernel.org)
|
| 02.10.2009, 17:21 | |
|
Помогаю со студенческими работами здесь
1
Компилирование для arm7 в Linux Linux Ubuntu компилирование через терминал компилирование/установка библиотек под Linux Сборка ядра Сборка ядра Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|