[d-kernel] update startup?

Alexander Bokovoy a.bokovoy at sam-solutions.net
Sat Feb 7 13:54:01 MSK 2004


On Sat, Feb 07, 2004 at 12:15:38AM +0300, Dmitry V. Levin wrote:
> > Собственно, вопрос к LDV и состоит он вот в чем. Могу ли я обновить
> > startup и залить изменения в Сизиф? Или достаточно перечислить смысл
> > изменений и ты их внесёшь самостоятельно?
> 
> Способ не имеет значения - я "перехвачу" и проверю любое изменение
> "своего" пакета.  Так что можно патч прислать, можно пакет выложить -
> результат по существу будет одинаковый.
Ok. Ну ты же не против дать мне соблюсти формальности и спросить? :-)))
 
> > Список изменений:
> > 
> >  - поддержка определения версии запущенного ядра в /etc/init.d/functions
> 
> Вопрос только в выборе удачного интерфейса.
> Может, стоит обсудить?
Сейчас я просто взял код из vconfig и обернул (init.d/functions):

RegisterKernelVersion()
{
    KV=`/bin/uname -r |/bin/cut -d- -f1`
    [ -n "$KV" ]
    KV_MAJOR=`echo "$KV" |/bin/cut -d. -f1`
    [ -n "$KV_MAJOR" ]
    KV_MINOR=`echo "$KV" |/bin/cut -d. -f2`
    [ -n "$KV_MINOR" ]
}

Обернуто в функцию, чтобы не засорять пространство имен и не выполнять эти
вызовы, когда не требуется.

Далее используется это, скажем, в rc.sysinit вот так:

RegisterKernelVersion

# Mount /proc (done here so volume labels can work with fsck)
action "Mounting proc filesystem" mount -n -t proc /proc /proc
chgrp proc /proc >/dev/null 2>&1 ||:

if [ "$KV_MAJOR" -eq 2 ] && [ "$KV_MINOR" -gt 4 ]; then
    # Mount /sys
    action "Mounting sys filesystem" mount -n -t sysfs /sys /sys
fi

> 
> >  - поддержка монтирования sysfs с автоматическим созданием /sys при её
> >    отсутствии в rc.sysinit. Включается только если загружено ядро серии
> >    2.5 и выше
> 
> Поскольку пакет filesystem >= 2.1.7-alt1 содержит /sys, какой смысл
> создавать этот каталог?  Мы же не создаём /proc и /dev/pts, верно?
Конечно. С требованием установки filesystem >= 2.1.7-alt1 в новом startup
(Requires)
 
> А монтирование sysfs для 2.6, конечно, нужно.
> 
> >  - поддержка двух отдельных /etc/modules и /etc/modules.26 для разных
> >    серий ядер в скрипте /etc/rc.d/scripts/load_modules, поскольку названия
> >    модулей для разных серий отличаются, а сосуществование в рамках
> >    имеющегося формата невозможно.
> 
> Действительно, почему бы и не /etc/modules-2.6?
Я не против. Что важнее здесь -- отказаться от /etc/modules в пользу
переимменования в /etc/modules-2.4 при установке обновления пакета
service.

-- 
/ Alexander Bokovoy
Samba Team                      http://www.samba.org/
ALT Linux Team                  http://www.altlinux.org/
Midgard Project Ry              http://www.midgard-project.org/


More information about the devel-kernel mailing list