Опции сборки ядра (clean, mrproper, oldconfig)
Опять запутался с ними. Моя цель - на базе старого конфига быстренько проскакать по меню, останавиваясь на новшествах, но не вбивая всякий раз свой проц, low-latency desktop и дрова к своему железу, прыгая по lspci, lsmod и cpufreq-info. Из инструкции по обновлению ядра и инструкции по genkernel у меня получиось, что в /etc/genkernel.conf:
OLDCONFIG="no" (если включить, то отменится clean)
MENUCONFIG="yes" (ну это понятно)
CLEAN="yes"
MRPROPER="no" (он стирает конфиг)
Сейчас вот добрался наконец до сборки, однако в menuconfig всё дефолтное, опять на полдня ковыряться. Это из-за неправильных опций, или старый конфиг обязательно надо было вручную копировать в новые сорцы, иначе никак не подхватится? Помню, что раньше он подхватывался как-то автоматом, может, потому что oldconfig был включён, но не уверен, ядро не так часто обновляется, каждый раз успеваю забыть.
- Для комментирования войдите или зарегистрируйтесь
.
Для решения данной задачи genkernel не нужен.
После обновления ядра:
1.
eselect kernel set NEW
или ручками поправить символьную ссылку;2.
zcat /proc/config.gz > .config
3.
make oldconfig
Ну а далее стандартная сборка ядра.
:wq
--
Live free or die
genkernel --menuconfig
Не грусти, товарищ! Всё хорошо, beautiful good!
О, спасибо! А насчёт того,
О, спасибо!
А насчёт того, что oldconfig НЕ нужен, а clean - пригодится, я правильно понял?
.
Подумай сам: зачем тебе clean, когдя ядро новое, чистить ещё нечего?
:wq
--
Live free or die
переход на текущее ядро по
переход на текущее ядро по симлинку
очистка конфигурационных файлов и временных файлов компиляции (в случае необходимости)
редактируем конфигурационный файл
компилируем ядро, модули и устанавливаем (параметр -j3 означает компиляцию в 3 потока)
Далее нужно проверить чтобы в файле /etc/conf.d/modules была правильная версия ядра в переменной, загружающей модули modules_2_6_39_gentoo_r3="acpi-cpufreq mperf cpufreq_conservative cpufreq_powersave cpufreq_userspace"
После этого правим в случае надобности /boot/grub/grub.conf и если ставили другое ядро, то правим (или дублируем и меняем уже дублированный вариант, ежели хотите оставить еще и загрузку ядра другой версии) версию ядра на новую.
По идее все.
Почти все правильно,
Почти все правильно, но
начисто сносит с таким трудом отредактированный конфигурационный файл... :)
Я бы еще заменил "редактируем конфигурационный файл" на "копируем старый" и
Это сделает именно то, что хотел ТС
Да будет... обсуждение
Дык было ж уже рекомендовано.
Лучше скажи почто
silentoldconfig
свели к вышеназванному?:wq
--
Live free or die
Всем спасибо, но речь шла
Всем спасибо, но речь шла немножко не о том.
Когда я собирал ядра вручную, я делал примерно так, как описано в посте glibych, только вместо 1-го mrproper - clean, а вместо 2-го - menuconfig, а предыдущий конфиг копировал ручками. Это всё понятно, с этим нет проблем, так я делал ещё на Слаке в 2006 году. Но когда я открыл для себя genkernel, он мне показался весьма удобным механизмом автоматизации всех этих действий. И мои вопросы именно по genkernel - какие его опции мне нужны. В общем, winterheart ответил, как загнать в genkernel-овский menuconfig старый конфиг для редакции с учётом новшеств следующей версии. Другое дело, чток следующему ядру я опять про это позабуду, и хочется воткнуть это в genkernel.conf.
Я искренне верил, что clean чистит всё ненужное, oldconfig - цапает старый конфиг и передаёт его menuconfig-у для редактирования, и использовал именно эту комбинацию. Но, почитав man genkernel, его официальный хелп и соотв. кусочек хендбука возникли сомнения, почему я и начал эту тему.
Итого:
Надо - почистить всё, кроме старого конфига, взять его поправить с учётом нововведений и затем собрать, используя genkernel.
Вопрос - какие параметры genkernel.conf должны быть для этого включены?