Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #31, ИЮНЬ 2003 г.

ВЕЛИКИЙ ИСХОД ЮЗЕРОВ.
В помощь решившимся переползти под Linux.

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #031, стр. 031-036-4


ЭКСПЕРИМЕНТЫ С ЯДЕРНОЙ ЭНЕРГИЕЙ

Поставив, настроив и полюбовавшись, нам, естественно, захочется залезть куда-нибудь своими прямыми руками (у кого кривые, срочно переформатировать). Подумаем, куда ты с пользой можешь приложить свою энергию. Чего тянуть, скомпилим-ка мы ядро! Напрягся? А зря, потому что и здесь все довольно просто. Для совершения сего действа нам следует иметь следующие вещи: установленную с любого дистра ОС Linux, исходники ядра (берутся с дистрибутивных дисков или с соответствующих сайтов), компилятор gcc (ставится автоматом при установке исходников ядра с дисков), тулзу automake (ставится автоматом), пароль root'a. А дальше делай раз, делай два-с по следующей мануалке: открывай консоль, если живешь в Х'ах, становись суперюзером (aka root), для чего набивай su, ентер и вводи рутовский пассворд (он не отображается). Затем переходи в каталог /usr/src/linux (для перехода используй MC, который, если установлен, вызывается командой mc, либо набивай cd /usr/src/linux, ентер), набивай на кнопочной тетке великие слова make xconfig (а если у тебя нету иксов, то набей make config или make menuconfig), и перед тобой вывалится менюха конфигурирования ядра. Пример оной ты можешь посмотреть на скрине. Теперь внимательно и осторожно, читая описание функций, переходим от одного пункта к другому, удаляя ненужные опции ядра (например, поддержку делловских лаптопов и SCSI, если, конечно, у тебя нет таких девайсов). Если в чем-то сомневаешься, вынеси в модуль, но тогда на первых вкладках включи опцию модульности ядра. Когда функция вынесена в модуль, она загружается лишь при необходимости и удаляется после выполнения своих черных дел, и посему старайся как можно больше функций вынести в отдельные модули (только не перестарайся, а то все ядро будет состоять из тысячи маленьких модульков, что совсем не есть гуд). При конфигурировании ОБЯЗАТЕЛЬНО включи опцию поддержки сети, даже если у тебя нет ни модема, ни сетевухи. Причина проста: печать в Линухе реализуется с помощью сетевых функций.

Следующим шагом будет настройка зависимостей ядра командой make depend. Когда по экрану закончат скакать буковки и появится приглашение, введи следующую команду: make bzImage, которая скомпилирует и пожмет твое новое ядро. Тут ты успеешь сходить до ларька - компиляция длится около 20-40 минут! Вернувшись, ты можешь продолжать свои великие дела, для чего надо скомпилить функции, вынесенные в модули. Это делается командой make modules. Я хочу тебя поздравить - ты выполнил основную часть работы, направленной на создание хакерской ОС! Дальше остается совсем немного - установить ядро и модули, для чего мы набиваем последние команды: make install, make modules_Install. Все! Теперь у тебя в LILO появился новый пункт, который отвечает за загрузку образа твоего "самодельного" ядра. А сейчас сделай глубокий вдох и дави на ребут. Если твое ядро загрузится с первого раза, не выдав мессаги о panic kernel, то все в полном порядке, иначе грузи старый образ и повторяй все шаги снова, вспоминая, что в прошлый раз сделал не так. Напоследок скажу, что не стоит сразу нервничать, - от начала компиляции до установки своего первого ядра у меня было пять циклов пересборки!

Назад на стр. 031-036-3  Содержание  Вперед на стр. 031-036-5