Переход к ядрам Linux 2.2.x

Ядро Linux 2.2.0 вышло 25 января 1999, принеся много новых свойств, улучшение эффективности и аппаратной поддержки. Любая существующая Linux-система может быть обновлена до одного из этих новых ядер, как описано в разделе Обновление ядра Linux.

Этот раздел описывает, как обновить Вашу систему до новых версий ядра. Так как Red Hat 6.0 (и выше) поставляется уже с новым ядром и пакетами обеспечения, этот раздел будет полезен только для тех, кто работет со старыми версиями, например 5.2. Я, вероятно, удалю этот раздел из будущих версий этого документа, как только я приду к выводу, что большинство пользователей мигрировало к версии 6.0 и выше.

Warning

Предупреждение! Имейте в виду, что обновлять надо не только ядро, но и ряд других пакетов, так что возможно, что кое-что будет идти ужасно неправильно. Как всегда, имейте резервные копии на случай, если что-то пойдет не так. Если Вы не имеете опыта обновления файлов с RPM или компиляции ядра, возможно, имеет смысл обновить систему до Red Hat 6.1.

Вы можете обновляться на подготовленное Red Hat ядро или построить свое собственное. Я рекомендовал бы сначала перейти на подготовленное ядро, а уж потом формировать свое настроенное ядро (см. раздел Обновление Red Hat Stock Kernel.).

Чтобы использовать последнее ядро, необходимо обновить утилиты и системные библиотеки. Red Hat выявила, какие пакеты должны быть обновлены, чтобы поддерживать самое новое ядро и поместила соответствующие файлы RPM на свой FTP сайт ftp://ftp.redhat.com/redhat/updates/5.2/kernel-2.2/i386/ (для Red Hat 5.2 на платформе i386).

Очень хорошая web-страница, детализирующая инструментальные средства которые необходимы для перехода к версии ядра 2.2.x доступна на http://www-stu.calvin.edu/clug/users/jnieho38/goto22.html; ниже я буду пытаться суммировать информацию (элементы, отмеченные ``**'' показывают, что их надо обновить для Red Hat 5.2; элементы, не обозначенные так, возможно не нужно обновлять, но стоит их проверить).

  • ** initscripts-3.78-2.4 или выше (введите ``rpm -q initscripts'' для проверки версии)

  • ** modutils-2.1.121 или выше (введите ``rpm -q modutils'' для проверки версии)

  • ** mount-2.9-0 или выше (введите ``rpm -q mount'' для проверки версии)

  • gcc-2.7.2.3 или выше (`` rpm -q gcc'')

  • binutils-2.8.1.0.23 или выше (``rpm -q binutils'')

  • libc-5.4.46 или выше (Red Hat использует новую ``glibc''. Не нужно.)

  • glibc-2.0.7-6 или выше (`` rpm -q glibc'')

  • ld.so 1.9.9 или выше (`` ls -l /lib/ld.so.*'')

  • libg++-2.7.2.8 или выше (``rpm -q libg++'')

  • procps-1.2.9 или выше (`` rpm -q procps'')

  • ** procinfo-15 или выше (``rpm -q procinfo'')

  • psmisc-17 или выше (`` rpm -q psmisc'')

  • ** net-tools-1.50 или выше (``rpm -q net-tools'')

  • loadlin-1.6 или выше (Нужно только если Вы загружаете Linux из DOS, используя Loadlin. Не уверен, как вычислять номер версии; загрузите последнюю версию, чтобы быьт уверенным.)

  • sh-utils-1.16 или выше (`` rpm -q sh-utils'')

  • autofs-3.1.1 или выше (`` rpm -q autofs'')

  • nfs-server2.2beta37 или выше (``rpm -q nfs-server''; нужен только если Вы используете NFS-сервер.)

  • bash-1.14.7 или выше (`` rpm -q bash'')

  • ncpfs-2.2.0 или выше (`` rpm -q ncpfs''; нужен только если Вы используете файловые системы Novell.)

  • kernel-pcmcia-cs-3.0.6 или выше (``rpm -q kernel-pcmcia-cs''; нужен только если Вы используете laptop с поддержкой PCMCIA card.)

  • ppp-2.3.5 или выше (`` rpm -q ppp''; нужен только если Вы работаете с Internet через модем и PPP.)

  • dhcpcd-1.3.16-0 или выше (`` rpm -q dhcpcd''; нужен только если Вы работаете с клиентом DHCP для связи с Internet, например с cable modem).

  • ** util-linux-2.9.0 (``rpm -q util-linux'')

  • setserial-2.1 или выше (`` rpm -q setserial'')

  • ipfwadmin/ipchains (нужен только если Вы работаете с брандмауэром; см. ``IPCHAINS-HOWTO'' по адресу: http://isunix.it.iltu.edu/resources/ldp/HOWTO/IPCHAINS-HOWTO.html.)

Вы должны скачать и обновить нужные пакеты, используя RPM как требуется (см. раздел Использование Red Hat Package Manager (RPM)).

Caution

Внимание: Обновление пакета ``modutils'' не работает с модулями ядер 2.0.x! Не обновляйте данный пакет пока не поставите новое ядро в ``/usr/src/linux ''.

Послеобновления инструментальных средств системы, Вы можете устанавливать исходные тексты ядра. Их можно найти на Red Hat FTP; я рекомендую загрузить одно из обновлений для Red Hat 6.1 с ftp://ftp.redhat.com/redhat/updates/6.1/i386/. Чтобы поставить нужный пакет, введите:


rpm -Uvh kernel-source*.rpm kernel-headers*.rpm

Когда исходники нового ядра будут установлены, можно спокойно обновить пакет modutils. Однако, новое ядро больше не использует модуль ``kerneld'' для работы с модулями ядра, так что отключите его перед обновлением modutils. Для выключения kerneld и обновления modutils введите от имени “root”:


/sbin/chkconfig kerneld off
/etc/rc.d/init.d/kerneld stop
rpm -Uvh modutils*.rpm

Теперь надо сконфигурировать, откомпилировать и установить ядро 2.2 как Вы обычно строили свои ядра (см. подробности в разделе Построение специального ядра. Вы можете быть удивлены, увидев количество новых параметров настройки конфигурации. Что ж, читайте справку по всем незнакомым параметрам...

Зато при следующей загрузке Вы будете работать с последней и самой большой версией ядра Linux!

Много полезной информации можно найти на Red Hat web-сайте http://www.redhat.com/corp/support/docs/kernel-2.2/kernel2.2-upgrade.html.