В этой теме можно обсуждать все, что связано с ядрами Линукс: перекомпиляция/версии/вопросы. Кратко опишу процесс перекомпиляции:
1) записать исходники в /usr/src
2) make xconfig (make menuconfig или make config)
3) make depend (для ядер версий 2.4)
4) make
5) make install
6) make modules_install
После этого образ появится в загрузчике. Добавлено спустя 3 минуты, 24 секунды Ну и первый вопрос. При попытке сделать make install скрипт заканчивается ошибкой с записью: "all of your loopback devices are in use". Что это значит и как с этим бороться?
Ну вариантов тут может быть много, например у тебя в ядре не разрешен CONFIG_BLK_DEV_LOOP. А нужно это, в данном случае для того, чтобы создать образ initrd.
Member
Статус: Не в сети Регистрация: 21.06.2004 Откуда: Санкт-Петербург
В данном случае - это устройства /dev/loop, представляющие содержимое файла в виде устройства. Нужны для монтирования образа fs в файле, т.к. mount (2) работает только с устройствами. Используют их mount (8) и losetup (8). man losetup.
Member
Статус: Не в сети Регистрация: 21.06.2004 Откуда: Санкт-Петербург
SniPeRXXIcentury Нет. Раздел на диске - и так устройство, loop используется, когда есть просто файл, а нужно устройство. Типичный пример - монтирование образа iso9660 из .iso-файла.
mount /dev/sda2 /mnt/tmp # так loop не нужен
dd if=/dev/sda2 of=/tmp/sda2 bs=1048576
mount /tmp/sda2 /mnt/tmp -o loop # тут без loop никак
или эквивалент
losetup /dev/loop0 /tmp/sda2
mount /dev/loop0 /mnt/tmp
В любом случае, loop'ов по умолчанию 8 штук, так что даже несколько примонтированных образов не изменят картины. Если в текущем ядре нет поддержки loop, initrd, нужный для загрузки ядра создать невозможно. Нужно загрузиться с дистрибутивным.
А вообще, не советую связываться с пересборкой ядер без четкого понимания, зачем оно нужно. Лет тринадцать назад это было необходимо, лет десять лет назад - очень желательно, лет семь - уже не особо, лет пять назад - имело смысл в редких случаях, когда был нужен редкий драйвер или хитрая особенность, предоставляемая только отдельным патчам, а сейчас и таких ситуация почти не осталось.. При ответе "просто поиграться" стоит подумать, а не поиграться ли в менее опасные игрушки, при ответе "хочу научиться собирать ядро" понять, что в современном мире это знание, в общем-то, бесполезно и не ценится.
Делать "make install" при сборке ядра без 100% понимания, что конкретно оно будет делать в данной конкретной системе - верная гарантия сломать загрузчик или как минимум потерять возможность грузить старое ядро.
Ну и, в дистрибутивах, основанных на rpm и dpkg пытаться пересобрать программы вообще и ядро в особенности стандартным циклом make/make install - способ создать себе совершенно идиотские проблемы.
Member
Статус: Не в сети Регистрация: 21.06.2004 Откуда: Санкт-Петербург
SniPeRXXIcentury писал(а):
Новый образ ДОБАВЛЯЕТСЯ в загрузчик и отнюдь не удаляет старый (по крайней мере, у меня Smile)
Если ты это понимаешь и уверен, проблем нет Просто загрузчики бывают разные, настройки тоже могут весьма различаться, а ядерный make install довольно тупой.
Вот у меня в системе стоят пакеты grub, lilo и aspldr. В бут-секторе, конечно, установлен только один, а вот конфиги в системе есть от всех. Ну и откуда make install узнает, что делать, и кто мне даст гарантию, что будет использоваться актуальный конфиг правильного загрузчика?
Если make install в данной системе проверен и работает, отлично, но все-таки нужно после него проверить, или руками делать. В конце концов, делов-то - скопировать ядро, создать initrd, прописать строчку в конфиг загрузчика и обновить его.
Member
Статус: Не в сети Регистрация: 09.04.2004 Откуда: Москва
Mosga писал(а):
SniPeRXXIcentury
отдельным патчам, а сейчас и таких ситуация почти не осталось.. При ответе "просто поиграться" стоит подумать, а не поиграться ли в менее опасные игрушки, при ответе "хочу научиться собирать ядро" понять, что в современном мире это знание, в общем-то, бесполезно и не ценится.
Ты в этом уверен? Например у кого Атлоны ХР на втором инфорсе пересборка ядра необходима или крайне желательна, так как не включено изменение частоты системной шины.
По работе приходилось не раз пересобирать ядра для включения разных драйверов, особенно для железяк рейд масивоф и внешних накопителей.
На шлюзах и сетевых экранах для отключения протоколов IPX и IPv6.
И для чего тебе такая куча загрузчиков??? В том что make install не разберётся что делать виноват только ты и не кто другой!!!
Member
Статус: Не в сети Регистрация: 21.06.2004 Откуда: Санкт-Петербург
Dima-1 писал(а):
Например у кого Атлоны ХР на втором инфорсе пересборка ядра необходима или крайне желательна, так как не включено изменение частоты системной шины.
Эээ.. Что-то я не понял. Изменение системной шины в процессе работы - а зачем это нужно? Даже представить себе не могу..
Dima-1 писал(а):
По работе приходилось не раз пересобирать ядра для включения разных драйверов, особенно для железяк рейд масивоф и внешних накопителей.
Надо пользовать правильные дистрибутивы, и все необходимые драйверы уже будут в ядре. В случае же, когда драйвер не поставляется из-за лицензии (но с рейдами я такого уже давно не встречал - adaptec в ядре, LSI megaraid в ядре, кто там еще остался-то?), докомпиляция его к работающему ядру - наиболее правильный и безпроблемный способ. Драйверы, которые нельзя просто докомпилить во времена ядра 2.6 уже, в общем-то, изжили себя.
Dima-1 писал(а):
На шлюзах и сетевых экранах для отключения протоколов IPX и IPv6.
А смысл? На кой их выкидывать поддержку стека из ядра - если интерфейсы не настроены, оно все равно никаким образом использоваться не может! Пакеты будут игнорироваться и все.
Dima-1 писал(а):
И для чего тебе такая куча загрузчиков???
Загрузчик у меня один. Но в системе стоят пакеты и с другими. Зачем? Да вот так просто - плохо, что ли? Например в документацию к ним глянуть, когда кто что спросит. Ведь почти в всех в системе установлено по несколько программ для каждой цели, хотя каждый конкретно пользуется одной. Но, мало ли что, вдруг может пригодится. Потому вот и стоит.. Добавлено спустя 7 минут, 23 секунды
Dima-1 писал(а):
В том что make install не разберётся что делать виноват только ты и не кто другой!!!
А я и не буду никогда делать make install. Если бы мне нужно было пересобрать ядро, я бы сделал патч к .config и пересобрал ядерный src.rpm с ним. А загрузчик бы модифицировался системой во время реальной установки пакета с ядром. Впрочем, как я писал, последние несколько лет ни на десктопах, ни на серверах я не находил серьезной причины для пересборки ядра. То, как (и с какими дополнительными патчами и драйверами) его собирают в моем дистрибутиве, полностью устраивает меня в плане поддержки железа и безопасности.
Member
Статус: Не в сети Регистрация: 06.05.2004 Откуда: Подмосковье
Брошу и я свои пять копеек. Начну с того что
# make install
работает только если установлен LiLo. У меня установлен GRUB, поэтому процесс конфигурирования и сборки выглядит так:
Код:
[$make mrproper] $ make menuconfig $ make # make install $ cp arch/i386/boot/bzImage /boot/linux-2.6.15 //кладем ядро куда следует $ cp System.map /boot/System.map-2.6.15 $ cp .config /boot/config-2.6.15 $ vim /boot/grub/menu.lst //добавляем новый пункт в меню загрузки
Mosga писал(а):
Ну и, в дистрибутивах, основанных на rpm и dpkg пытаться пересобрать программы вообще и ядро в особенности стандартным циклом make/make install - способ создать себе совершенно идиотские проблемы.
Mosga, полностью согласен с тобой. Я немного занимался этим на Debian Woody (Sarge тогда ещё не было), так и не достиг успеха. Сейчас у меня стоит Linux from Scratch, поэтому выбора нет, как нет и проблем со сборкой ядер.
Dima-1 писал(а):
И для чего тебе такая куча загрузчиков??? В том что make install не разберётся что делать виноват только ты и не кто другой!!!
Так что ты в корне не прав!
Dima-1, ты сам не прав. В том что make install работает только с LiLo виноваты его создатели, в том что у Mosga make install не работает действительно виноват он, но сделал он это намеренно прекрасно понимая что творит и зачем. Твой довод сродни "В том что у тебя Internet Explorer не работает виноват только ты и никто другой. Так что ты в корне не прав!" Каждый волен сам выбирать как конфигурировать загрузчик, тем более что Mosga в этом разбирается.
Member
Статус: Не в сети Регистрация: 09.04.2004 Откуда: Москва
Camel писал(а):
Брошу и я свои пять копеек. Начну с того что # make install работает только если установлен LiLo. У меня установлен GRUB, поэтому процесс
Чушь!!! У меня GRUB и всё работает хоть с rpm хоть с make install Добавлено спустя 4 минуты, 22 секунды
Camel писал(а):
Dima-1, ты сам не прав. В том что make install работает только с LiLo виноваты его создатели
Ещё одна чушь!!! Для начала надо самому хоть что то попробывать прежде чем говорить.
Camel писал(а):
Твой довод сродни "В том что у тебя Internet Explorer не работает виноват только ты и никто другой. Так что ты в корне не прав!" Каждый волен сам выбирать как конфигурировать загрузчик, тем более что Mosga в этом разбирается.
Ты путаешь вещи, я не кому не говрю как и что ему конфигурировать! Где ты увидел что я сказал что Mosga не разбирается в чём то?
Member
Статус: Не в сети Регистрация: 06.05.2004 Откуда: Подмосковье
А кто-нибудь использует сторонние патчи, или всем хватает функциональности ванильных ядер от kernel.org? Вот ссылка на LOR-FAQ
http://ru.wikibooks.org/wiki/LOR-FAQ-Admin , там вначале несколько абзацев о ветках ядер. Кто-нибудь эксперементировал с tiny?
Member
Статус: Не в сети Регистрация: 23.12.2004 Откуда: Беларусь, Минск
Хотелось бы спросить...
Могу ли я свой Мадрейк 10.1 как-нибудь усовершенствовать под свою систему (в подписи), и можно ли ядро по-чуть-чуть пересобрать на новое?
И будет ли шанс что заработает мой ВинМодем 9не Люцент а Конексант)?
_________________ ASUS A4M88T-M, Athlon II X3 425, 2GB NCP, video - internal ATI 4250, 200GB Samsung HDD, Win7 x64
Member
Статус: Не в сети Регистрация: 06.05.2004 Откуда: Подмосковье
AzaZeo, что ты подразумеваешь говоря "усовершенствовать под свою систему" и "ядро по-чуть-чуть пересобрать"?
Усовершенствовать можно, ядро пересобрать тоже можно, но вот как делать это по-чуть-чуть я не представляю. Момед заработать должен, не новинка и не экзотика.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения