![]() |
| | |||||||
| Регистрация | Правила | Блоги | Пользователи | Социальные группы | Поиск | Сообщения за день | Все разделы прочитаны |
| |
![]() |
| |
| | #1 | ||||||||||||||||||||||||||||||||||||
| only# Форумчанин Регистрация: 27.06.2009
Сообщений: 895 Репутация: 2400 (312) |
Сбока и компилирования ядра 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 Последний раз редактировалось only#; 10.10.2009 в 20:13. | ||||||||||||||||||||||||||||||||||||
| | |||||||||||||||||||||||||||||||||||||
| Другие темы раздела | |
| Linux Дистры: чёткие наставления и действия при установке РЕБЯТА, ПОМОГИТЕ ЖЕ! Все компы валяться! Надо ставить линю, но постоянные проблемы!!!!!!!!!!!!!!! мю линукс - скачиваю тгз образ, записываю роурайт из junior lin, вставляю в другой комп. Тот говотит, что нашёл бут, лампа дисковода гаснет, больше никаких изменений. С Колибри хуже: что скачивать,.... Дистры: чёткие наставления и действия при установке | Выбор дистрибутива Linux Нужно поставить Linux на виртуальную машину для изучения и программирования. Не знаю какой дистрибутив выбрать, т.к. плохо знаком с Linux. Какие должны быть предъявляемые требования, для более эффективного использования ?. Выбор дистрибутива |
![]() |
| Похожие темы | |
| Тема | Автор |
| Теория и технологии программирования Создание Linux на основе ядра Linux (kernel.org) Доброго времени суток! Можете подсказать как на основе ядра Linux (kernel.org) создать свою сборку. Я еще никогда не делал ОС'ей , и поэтому мне нужно всё подробно описать. Я хочу начать с создания консольной линукс (терминала/консоли). Помогите пожалуйста, мне это очень интересно. Заранее... | morph-x |
| Ubuntu, Mint Linux Ubuntu 10.04 Сборка ядра. Не работает make config... Ubuntu 10.04 server (2.6.32-24-server) При вводе любой из этих команд: sudo make config, sudo make menuconfig, make xconfig, make gconfig или make oldconfig - выдается ошибка: make: *** Нет правила для сборки цели `oldconfig'. Останов. (в кавычках - понятно слово которое следует после... | denlem |
| Ubuntu, Mint Linux Сборка ядра ОС Ubuntu 9.10 скачал ядро 2.6.32.6 делаю все как FAQ на форуме, разархивировал. дальше cd make mrproper //вот тут ругается пишет "make: *** Нет правила для сборки цели 'mrpropre'. " В чем проблема?:( Добавлено через 15 минут Все разобрался. | BoDRbIi |
| Debian Gnu Linux Сборка ядра. ошибки Всем доброго дня. Установлен Debian Lenny 5 ядро -2.6.26-2-686 У меня вопрос касаемо сборки ядра. Значит я скачал linux-source-2.6.26.tar.bz2, распоковал его и приступил : 1/......установил посоветованные пакеты - kernel-package,libncurses5-dev, fakeroot, wget, bzip2, build-essential... | morozov_s_v |
| Pascal (Паскаль) Linux Ubuntu компилирование через терминал Подскажите плз! В линуксе дебиане скомпилировать из .pas можно с помощью команды gpc -o file file.pas где file это имя файла, а как же в убунту так скомпилировать?? Эта команда не подходит, а других просто не знаю....:help::help::help::help: | Kosiak |
| Опции темы | |
| |
| |