Как обновить ведро и при этом не лезть в настройки и новые опции?
sysambar 4 ноября, 2012 - 18:22
gentoo_work alexey # uname -a
Linux gentoo_work 3.1.5-gentoo #2 SMP Tue Dec 20 17:32:06 YEKT 2011 i686 Celeron(R) Dual-Core CPU T3100 @ 1.90GHz GenuineIntel GNU/Linux
gentoo_work alexey #
»
- Для комментирования войдите или зарегистрируйтесь
в целом, когда только
в целом, когда только запустил make xconfig или make menuconfig, впрочем - не важно, он взял старый конфиг, и теперь, если просто сохранить, то что было в старом - останется, а то что новой - по умолчанию будет включено, или выключено. Как-то так.
Скрипты
У меня написаны спец. скрипты для этого дела, которые возятся с конфигами, копируют из старого ядра в новое и автоматом пересобирают и + делают module-rebuild rebuild. Хотя иногда необходимо бывает вмешательство, когда версия ведра уж слишком новая и автоматом оно не собирается, требуется выбор новых опций - тогда вручную доставляешь те опции, которые спрашиваются make'ом. Было такое пока только один раз при обновлении вроде бы до 3.6.
Собсна, главное, сохраняй конфиг .config куда-нибудь, а потом копируй его в новое ведро и запускай сборку. Дальше остаётся закинуть образ/initrd в загрузочный раздел. У меня это опять же делает сам скрипт.
он в /boot и так, для каждого
он в /boot и так, для каждого ядра свой, хранится
?
Не знаю, у меня ничего не сохраняется автоматом. Может это genkernel закидывает сам в /boot, но я им не пользуюсь.
Zharptah написал(а): Не знаю,
Я не юзаю genkernel. make && make modules && make modules_install && make install && module-rebuild rebuild как-то так
У меня попроще
Ммм. А у меня попроще: make && make modules_install. А с версиями ядер у меня скрипт ковыряется и забрасывает куда надо, то есть нету у меня make install. К тому же если так сделать, то будет новая версия у каждого ядра в имени и придётся это имя прописывать в menu.lst руками или каким-нибудь навороченным скриптом. Проще имя образа ядра всегда делать одинаковым, тогда не нужно и конфиг загрузчика менять. Или make install такой умный, что и конфиг сам переписывает?
уже ведь grub2... по крайней
уже ведь grub2... по крайней мере у меня
У меня старый стоит. Но сути
У меня старый стоит. Но сути дела это же не меняет, там тоже есть конфиг и тоже нужно указывать ядро. Или grub2 автоматом подхватывает? Я им почти не пользовался.
В пакете с grub2 теперь куча
В пакете с grub2 теперь куча всяких скриптов. grub2-mkconfig -o /boot/grub2/grub.cfg такая хрень найдет все что надо, и сделает конфиг. А собственно конфиги Grub2, а не самой "загрузки", или как там это назвать, в /etc
в стабильной ветке уже grub2?
в стабильной ветке уже grub2?
lilo уже ни кто не юзает?
lilo уже ни кто не юзает?
Zharptah написал(а): К тому
make install копирует новый конфиг, ядро и system map в boot, если там было старое с таким же названием - переименовывает в *old, и также делает symlink c vmlinuz на на новое ядро. Хотя, это похоже зависит от установленного загрузчика. Lilo он емнип сам запускает. Так что, нечего изобретать велосипед - он давно есть, да ещё и навороченный.
evadim написал(а): Так что,
+256
Genkernel прекрасно справляется. Даже если вы привыкли сами конфигурировать ядро. Главное выставить все предпочтения в /etc/genkernel.conf
(выполнять ли чистку, что и куда копировать, во сколько потоков компилировать и даже /boot при необходимости будет сам монтировать)
Велосипед
Мне мой велик тоже нравится. Я сам его создал и знаю, где, что и как работает.
3.1
Судя по версии вашего текущего ведра, в опции залезть придётся по-любому, потому что много изменений с тех пор должно быть.
А если просто конфиг
А если просто конфиг скопировать, компилироваться будет?
Скорее всего задаст сперва
Скорее всего задаст сперва кучу вопросов по новым опциям - включать/не включать. Попробуй ;-) Ничем не рискуешь.
emerge gentoo-sources cp
emerge gentoo-sources
cp /etc/kernels/kernel... /etc/kernels/kernel...
genkernel --menuconfig all
make help
Я обновляю как-то так:
zcat /proc/config.gz. > .config
make oldnoconfig
make -j5 all
make modules_install
и т.д.
Червон00кий.
я делаю так
rm /usr/src/linux
emerge --sync -q
USE="symlink" emerge -q gentoo-sources
cd /usr/src/linux
cp /usr/src/linux-3.1.5-gentoo/.config /usr/src/linux/
make && make modules_install
cp arch/[x86 | x86_64 | etc... ]/boot/bzImage /boot/[любое имя на твой выбор]
как grub настроить думаю разберешься сам, можешь просто старый образ заменить, но не советую.
P.S. И данный способ гарантированно рабочий тока если предыдущее ядро тоже собиралось вручную.
А чего про `make
А чего про `make silentoldconfig` никто не вспомнил?
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
/
Некоторое время тому назад отметил (и видел как интересовались в трекере), что оно работало совсем не как 'silent', а просто как 'oldconfig'.
Позже случился прецедент, указавший на правильность такого подхода (в смысле: что вывод oldconfig'а полезно читать, а иногда бывает необходимо и подправить).
С тех пор и не вспоминаю...
:wq
--
Live free or die