cnyx: RH AS3 kernel upgrade 2.4.21 - 2.6.20 (2.6.9) проблемы

8 сообщений / 0 new
Последнее сообщение
Гость
cnyx: RH AS3 kernel upgrade 2.4.21 - 2.6.20 (2.6.9) проблемы

Здравствуйте.
В общем возникла необходимость проапгрейдить ядро до 2.6.х (нужен параметр HZ, которого в 2.4.х нет). Зашел на kernel.org, скачал последнюю стабильную версию 2.6.20. Распаковал, взял конфиг из /usr/src/linux-2.4.21-4.EL, скопировал в папку с 2.6.20. Выполняю команду make oldconfig, отмечаю необходимые мне опции. Далее пытаясь руководствоваться мануалом по установке ядра с http://linuxcenter.ru/lib/articles/system/kernel26_install.phtml пытаюсь выполнить пошагово:
make bzImage
make modules
make modules_install
make install, уже на первом этапе происходит ошибка
<div class='indent'> AS arch/i386/boot/bootsect.o
LD arch/i386/boot/bootsect
AS arch/i386/boot/setup.o
LD arch/i386/boot/setup
AS arch/i386/boot/compressed/head.o
CC arch/i386/boot/compressed/misc.o
OBJCOPY arch/i386/boot/compressed/vmlinux.bin
BFD: Warning: Writing section `.bss' to huge (ie negative) file offset 0xc02a0000.
objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated
make[2]: *** [arch/i386/boot/compressed/vmlinux.bin] ÏÛÉÂËÁ 1
make[1]: *** [arch/i386/boot/compressed/vmlinux] ÏÛÉÂËÁ 2
make: *** [bzImage] ÏÛÉÂËÁ 2</div>
Далее читаю readme, там упоминания о make bzImage нет, говорят мол сделайте только make. Если есть модули, то make modules, а далее make install. Чищу make mrproper, копирую конфиг, пытаюсь выполнить make, выдает следующую ошибку (конец лога)
<div class='indent'> AS arch/i386/boot/bootsect.o
LD arch/i386/boot/bootsect
AS arch/i386/boot/setup.o
LD arch/i386/boot/setup
AS arch/i386/boot/compressed/head.o
CC arch/i386/boot/compressed/misc.o
OBJCOPY arch/i386/boot/compressed/vmlinux.bin
BFD: Warning: Writing section `.bss' to huge (ie negative) file offset 0xc02a0000.
objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated
make[2]: *** [arch/i386/boot/compressed/vmlinux.bin] ÏÛÉÂËÁ 1
make[1]: *** [arch/i386/boot/compressed/vmlinux] ÏÛÉÂËÁ 2
make: *** [bzImage] ÏÛÉÂËÁ 2</div>
Т.е. тоже самое.
Далее решаю пойти другим путем - скачать src.rpm с ftp.redhat.com. В апгрейдах для 3го AS SRPM'ов ядра 2.6.х нет, иду в раздел для 4го AS, скачиваю файл kernel-2.6.9-42.0.8.EL.src.rpm, устанавливаю его, захожу в /usr/src/redhat/specs/ и выполняю rpmbuild -bi kernel-2.6.spec, выдает
<div class='indent'>ïÛÉÂËÁ: áÒÈÉÔÅËÔÕÒÁ i386 ÎÅ ×ËÌÀÞÅÎÁ</div>
Меняю в spec файле строку %define all_x86 i686 на %define all_x86 i386 и пытаюсь запустить снова
требует: module-init-tools нужен для kernel-2.6.9-42.0.8.EL
Лезу на ftp, для RH 3AS нет такого модуля, качаю rpm для FC4, ругается на libc.so.6(GLIBC_2.3.4), качаю для FC3, начинает конфликтовать с файлами из modutils-2.4.25-9.EL. Все, тупик, что дальше делать не знаю =(. Ставить с --nodeps не хотелось. Помогите подскажите, что делать в такой ситуации.

edge (не проверено)

Для 2.6 нужен module-init-tools, который собой заменяет modutils, плюс я думаю для RH это не все, что нужно сделать, для перехода с 2.4 на 2.6. В Gentoo по этому случаю есть мануал, наверное кто-то написал подобное и для RH: http://www.gentoo.org/doc/en/migration-to-2.6.xml

cnyx (не проверено)

Нашел миниFAQ как ставить
<div class='indent'>
õÓÔÁÎÏ×ËÁ module-init-tools(ÚÁÍÅÎÁ modutils)

1. wget -c ftp://ftp.kernel.org/pub/linux/utils/kernel/module-init-tools/module-ini...
2. tar -jxvf module-init-tools-0.9.14.tar.bz2
3. cd module-init-tools-0.9.14
4. less INSTALL
5. ./configure --prefix=/
6. make moveold -ÜÔÏ ÄÁÅÔ ×ÏÚÍÏÖÎÏÓÔØ ÓÏÈÒÁÎÉÔØ ÐÒÅÖÎÉÅ modutils ÄÌÑ
ÒÁÂÏÔÙ ÓÏ ÓÔÁÒÙÍÉ ÑÄÒÁÍÉ
7. make
8. make install
9. ./generate-modprobe.conf /etc/modprobe.conf
10. depmod -a
</div>
Вроде все прошло без ошибок, пытаюсь rpmbuild -bb kernel-2.6.spec, а все-равно ругается, что нет module-init-tools. Скачал module-init-toolsюsrc.rpm, пытался поставить, выдает
<div class='indent'>
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i386-redhat-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for i686-pc-linux-gnu-gcc... gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
îÅ×ÅÒÎÙÊ ËÏÄ ×ÏÚ×ÒÁÔÁ /var/tmp/rpm-tmp.215 (%build)

ïÛÉÂËÉ ÓÂÏÒËÉ ÐÁËÅÔÏ×:
îÅ×ÅÒÎÙÊ ËÏÄ ×ÏÚ×ÒÁÔÁ ÉÚ /var/tmp/rpm-tmp.215 (%build)

</div>

Может gcc старый?

<div class='indent'> rpm -qa | grep gcc
gcc-g77-3.2.3-20
gcc-objc-ssa-3.5ssa-0.20030801.41
gcc-objc-3.2.3-20
libgcc-3.2.3-20
gcc-3.2.3-20
gcc-java-3.2.3-20
gcc-g77-ssa-3.5ssa-0.20030801.41
compat-gcc-c++-7.3-2.96.122
libgcc-ssa-3.5ssa-0.20030801.41
gcc-gnat-3.2.3-20
gcc-c++-ssa-3.5ssa-0.20030801.41
compat-gcc-7.3-2.96.122
gcc-ssa-3.5ssa-0.20030801.41
gcc-c++-3.2.3-20
gcc-java-ssa-3.5ssa-0.20030801.41
</div>

И чего он каракули вместо русских букв подставляет? Форум в смысле. Пытаюсь вручную исправить, а все-равно не получается.
<span class='smallblacktext'>[ Редактирование 06.02.2007 - 18:43:56 ]</span>

cnyx (не проверено)

А насколько можно допустим довериться утилите apt-get, запустив ее apt-get upgrade gcc и apt-get upgrade glibc ?

Dumus
Аватар пользователя Dumus
Не в сети
Зарегистрирован: 17/09/2010

[quote=cnyx]А насколько можно допустим довериться утилите apt-get, запустив ее apt-get upgrade gcc и apt-get upgrade glibc ?[/quote]
Смотря откуда будешь апгрейтится, если с "родных" источников, то проблем не должно возникнуть.

Мой микроблог: http://juick.com/Dumus/

cnyx (не проверено)

Не хочет gcc апгрейдить, говорит стоит последняя версия =(
А как на rpm based дистрибутив поставить пакет из исходников так, чтобы он был виден? Просто вроде module-init-tools устанавливается из исходников, а при попытке собрать rpm ядра, говорит что нет такого. И вообще для RH 3AS искать rpm и srpm от RH9 или от fedora4-5-6? От каких версий?
з.ы.
Был бы это не сервак, я бы поставил новый дистрибутив и не парился бы, а так зависимости это кошмар какой-то =(

Vitls
Аватар пользователя Vitls
Не в сети
Зарегистрирован: 21/09/2010

1. Я бы не стал на боевом сервере эксперементировать с ядрами.
2. Разве в AS есть apt-get. по моему там дело ограничивалось up2date и yum. Хотя конечно прикрутить можно всё, что угодно.
3. gcc у вас не делает выполняемые файлы скорее всего из-за того, что не полностью установлен. Линковщика нет, например или libtools.
4. И неужто Вы думаете, что сможете ядро собрать лучше, чем это делают в Red Hat? Поищите готовые сборки.

Дело не в том как болезнь вылечить.
Дело в том как других заразить.

cnyx (не проверено)

1. А что такого? Будет падать, вернусь к старому и буду сидеть на 2.4
2. Нет, просто установил. yum почему-то не работает, выдает ошибку. Пробовал разные версии от 1, 2, 2.2 и 3.
Traceback (most recent call last):
File "/usr/bin/yum", line 22, in ?
import yummain
ImportError: Bad magic number in /usr/share/yum/yummain.pyc
3. Дело в том, что некоторые пакеты из spec файлов собирает, а на некоторых именно эта ошибка вылезает. Как проверить есть ли линковщик и его версию?
libtool-libs-1.4.3-6
libtool-1.4.3-6
4. Дак я же не спорю, что RH неплохо собирают, я с их сайта и брал, но там srpm, чистой готовой rpm'ки нет. А ядро нужно с поддержкой параметра HZ, которого в 2.4 нет.

RSS-материал