Убунтариум

индекс
253,47

Kernel check. Освежаем ядро по всем правилам без лишних хлопот

Про сборку ядра, кажется, не писал только ленивый. Мануалов о том, как правильно скомпилировать ядро и собрать его в установочный пакет, в интернете навалом.
Не так давно статья про сборку ядра для Debian based систем пробегала и на Хабре. И все в принципе отлично, если учесть, что
ядро требуется собирать не так часто.
Тем, кому по воле случая требуется регулярно заниматься сборкой ядра, может надоесть этот весьма длительный процесс компиляции и сборки пакета и захочется некоторой автоматизации.
Я не против консоли, bash скриптов, но иногда нет смысла изобретать велосипед, когда за Вас уже все сделали хоть и на питоне.
И так, представляю Вашему вниманию набор python скриптов Kernel Check, позволяющих сделать свежий debian package ядра, включая необходимые патчи, всего за пару кликов.

Домашняя страница проекта — тут.
Вот, что пишет автор проекта об утилите (перевод с английского):
KernelCheck представляет собой gui программу, предназначенную сделать процесс копиляции ядра таким же простым, как нажать кнопку.
KernelCheck получает самую свежую информацию с www.kernel.org, которая хранит исходные пакеты ядра Linux,
и спрашивает пользователя, какое ядро они хотели бы скомпилировать и собрать в deb пакет (с возможностью установки его после компиляции).
Этот автоматизированный процесс является ответвлением проекта AutoKernel Robert Wolterman (xtacocorex),Timothy Janssen (mentok) и Kristof Verbeken (PingunZ).

Текущие возможности:
  • Возможность скачивания, компиляции и установки последний версии ядра в автоматическом режиме
  • Возможность сравнения информации о последней версии ядра с информацией о вашем текущем ядре
  • Пользовательский интерфейс, разработанный с помощью Glade, доступен для пользователя любого уровня


Поддерживаемые платформы:
На текущий момент, KernelCheck поддерживает только Debian-Based платформы. Поддержка RPM and Slackware based планируется в будущем.


Текущая версия 1.2.5, но к сожалению версия на официальном сайте содержит ошибку в скрипте проверки текущей версии ядра на kernel.org, поэтому рекомендую скачать готовый deb
пакет для установки отсюда.
Теперь немного о моих личных впечатлениях о работе с утилитой. Работа с ней напоминает работу с обычным wirzard'ом — отвечаем на вопросы, отмечаем нужные галочки,
кликаем Next, в результате получая готовый пакет с ядром.



Пользователю предлагается выбрать режим компиляции ядра: Typical и Custom.

Typical вариант достаточно примитивный, с kernel.org скачивается последнее стабильное ядро, далее происходит его настройка (скрипт сам запускает xconfig, в которым Вы
сможете выбрать необходимые опции) и установка. По умолчанию в качестве конфиг файла копируется конфиг для текущего ядра системы.

Вариант Custom предоставляет больше свободы для творчества, позволяя выбрать dev версию ядра для компиляции, установить необходимые сторонние патчи для ядра,
выбрать количество потоков компиляции вручную, а также при проблемах со свободным местом на диске можно удалить исходники скачанные после компиляции, оставив только deb пакеты.
Хочу заметить, что при сохранении исходников KernelCheck скачает только необходимый патч при обновлении ядра в следующий раз.



Кроме того KernelCheck автоматически скачает необходимые и отсутствующие пакеты для построения deb пакетов ядра.

Когда процесс сборки, за которым можно наблюдать, поглядывая на вывод консоли, запущен, остается только пойти пить чай на кухню или заниматься другими делами.



Выводы после месяца использования:
утилита имеет право существовать, очень удобна, позволяет запускать без проблем сборку свежего ядра на ночь.
Повторюсь, я не против консоли и скриптов на bash, но такой вариант для desktop систем очень удобен. А ядро я предпочитаю собирать самостоятельно, так как
не вижу смысла в поддержке лишнего оборудования на своем нетбуке.

P.S. Для пользователей Ubuntu, решивших самим собрать ядро. Во время конфигурации ядра в xconfig не забудьте снять галочку с Complie kernel with debug info в разделе Kernel hacking,
иначе получите deb пакеты ужасных размеров.
+23
8 февраля 2010, 17:01
58

комментарии (24)

+4
rdolgov #
«когда за Вас уже все сделали хоть и на питоне.» — а чем он плох?
+2
eeexception #
Думаю, не все его одинаково любят. Для серверных систем, если нет в этом необходимости, я, например, не стал бы устанавливать python только ради автоматизации сборки пакетов с ядром.
+1
Antigluk #
Я питон знаю лишь в общих чертах, но как язык уважаю — достаточно широкие возможности при легком синтаксисе.
Так за что его можно не любить?))
+1
eeexception #
Для решения несложных задач иногда не имеет смысла использовать сложный инструмент (стрельба по воробьям из пушки). Если есть возможность использовать встроенные средства системы, то решение будет более изящным.

Питон для решения этой задачи выбран весьма удачно, хотя, если отказаться от gui, то тоже самое можно реализовать bash скриптом.
0
rdolgov #
Дак, ведь и ездить можно на самосвале(крепки, здоровый, вместительный, редко ломается, поворотники и стоп-сигналы не нужны(тут доля юмора) ), только не все это делают, я бы сказал меньшенство.

ЗЫЖ кстати как и вы не любил питон буквально полгода назад, зато когда садишься и пишешь на нём и понимаешь что он прост, легок и читабелен… но всё на любителя.
0
icCE #
bash+ncurses
python+gtk

в общем где то так.
+3
Absolute_Unix #
Всегда брал готовые ядра от сюда kernel.ubuntu.com/~kernel-ppa/mainline/, ну если нужно собрать ядро без ненужных вам драйверов и других компонентов ядра, то самое оно.
0
eeexception #
Для нетбука как раз гораздо предпочтительней собирать собственное ядро, так как многие вещи, входящие в состав ядра никогда использоваться не будут.
0
SerGold #
Сейчас в ядре почти все в модули собирается — не надо не грузится… или места пару мегабайт жалко?
–3
Sap_ru #
Господи, но до чего же весь этот самопальный софт коряв…
0
Ferroman #
В чём именно заключается «корявость»?
+1
Sap_ru #
Ну, интерфейс — страшен и не интуитивен. И не сильно-то и удобен. Самопальный такой интерфейс. И текущая версия
Текущая версия 1.2.5, но к сожалению версия на официальном сайте содержит ошибку в скрипте проверки текущей версии ядра на kernel.org, поэтому рекомендую скачать готовый deb — А это уже вообще бардак.
Это под впечатлением от одной опен-сорс утилиты пишу. Которая огорошила меня тем, что после долгого уродования и неравной борьбы с её пользовательским интерфейсом заявила, что «К сожалению, в текущей версии программы содержится ошибка и результаты работы будут недостоверны.» Феерично.
–1
Gorthauer87 #
Пользуюсь genkernelом и он меня почти во всём устраивает. А вообще самосборные ядра это ССЗБ в общем
0
usr #
Смотря кто собирал :)
0
mrded #
перепробовал 1.2.5 и 1.1.4 версии. обе вылетаю при попытке проверки текущей версии ядра.
+2
eeexception #
Я поэтому ссылку и дал на готовый deb. В нем уже фикс есть.
0
mrded #
а. понятно, ща попробую.

а зачем на оф сайте не рабочии версии они выкладывают? по приколу чтоли?
типа раз народ gui средствами ядро собирает, то пусть сам в этих средствах ошибку ищет, и патчит ее:)
+1
eeexception #
Изменения на сайте kernel.org были в плане некоторых тегов, поэтому версия с оф сайта перестала быть актуальной, у нее дата релиза июль прошлого года.
0
mrded #
а там вообще никак не выбрать версию ядра, которую я хочу поставить? он тока самую последнюю скачивать умеет?
+2
moscow_beast #
Скорость скачивания ядра 21 K/s. Вы и kernel.org уморите хабараэффектом?
0
mrded #
у меня 225K/s
у тебя понты видимо:)
0
ZogG #
не вижу смысла обновлять ядро так часто. я на генту, потому всегда есть свежие версии (не генты, так ванилы точно). но зачем обновлять ядро так часто, да еще и автоматом? я обновляю либо, когда новая версия уже стабильна(берёт время пока сделают патчи и проверят, это скорее всего будет -r5 или выше), либо когда есть важные для меня изменения(дрова, которые ждал, или интересующие меня новшества). в обоих случаях обновления автоматом не нужно. в первом — не нужно, так как не так часто. во втором — так как надо знать какие модули собирать, и что менять.
кстати раньше обновлял часто, потом накопилось так много мелких, не нужных новых модулей, я кстати юзал make oldconfig.
0
arinoki #
спасибо. почти магическим образом система сразу после загрузки стала кушать аж на 600 метров меньше оперативной памяти. (было 1.6гб, стало гиг).
Я, конечно, вдумчиво просмотрел конфигуратор (он же xconfig), но всё равно впечатляет. По сравнению с этим мои жалкие потуги оптимизировать win7 кажутся детскими забавами. Ещё раз большое спасибо.
0
roller #
ubuntu 10.10 x64

sudo dpkg -i kernelcheck_1.2.5-3_all.deb
dpkg: error processing kernelcheck_1.2.5-3_all.deb (--install):
parse error, in file '/var/lib/dpkg/tmp.ci/control' near line 17 package 'kernelcheck':
duplicate value for `Architecture' field
Errors were encountered while processing:
kernelcheck_1.2.5-3_all.deb

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