[d-kernel] Re: kernel order

Michael Shigorin mike at osdn.org.ua
Mon Dec 22 20:45:04 MSK 2003


On Mon, Dec 22, 2003 at 08:09:02PM +0300, Anton Farygin wrote:
> >>ALT Linux - остается старое ядро. 
> >Навеки?
> Да. В качестве аварийного - если новое ядро не сработало.

Оно существует (в т.ч. как аварийное) под лейблом "ALT Linux" или
все же как "ALT Linux (old kernel)", например?

> По схеме с симлинками - проблема заключается в том, что
> установленное ядро перекроет симлинки на vmlinuz-up и
> initrd-up, что приведет к фактически одному ядро, доступному
> через две разные записи lilo

Ой как смертельно.  И опять же -- чего ты хочешь добиться?
Сформулируй, не докапываясь к симлинкам.

Вот, например, если хотим добиться:

- после установки ядра 1 оно доступно как ALTLinux; 
- после накатывания ядра 2 _оно_ доступно как ALTLinux,
  при этом ядро 1 доступно как ALTLinux_old;
- при накатывании ядра 3 оно доступно как ALTLinux,
  ядро 2 доступно как ALTLinux_old,
  ядро 1 доступно по метке вида 2422-alt1-up

Последнее -- самое неприятное, но было бы разумно IMO.

Ставим ядро
  есть линки, соответствующие типу (up/smp)?
  >да
  | есть линки *.old?
  | >да
  | | снести их
  | | изменить соотв. запись в конфиге на "циферки"
  | >нет
  | | ok
  | переименовываем линки в *.old
  | есть запись для ALTLinux_old?
  | >да
  | | ok (линки-то остаются)
  | >нет
  | | делаем (на линках)
  >нет
  | делаем линки (vmlinuz-*, initrd-*.img)
  | есть запись для ALTLinux?
  | >да
  | | ok (линки) (разве проверить)
  | >нет
  | | делаем (на линках)

Сносим ядро
  на него указывают линки "по умолчанию"?
  >да
  | есть *.old, указывающие на существующие файлы?
  | >да
  | | переименовать *.old в vmlinuz-* / initrd-*.img
  | | проверить/создать запись для ALTLinux
  | | снести запись для ALTLinux_old
  | >нет
  | | ой
  | | пытаемся найти наиболее свежее из оставшихся ядер
  | | >да
  | | | создать симлинки на него
  | | | проверить/создать запись для ALTLinux
  | | >нет
  | | | громко орем "это было последнее ядро, аааа!" :-)
  >нет
  | на него указывают линки *.old?
  | >да
  | | (схожие пляски, уже лень писать)
  | >нет
  | | просто сносим запись

При этом линки vmlinuz и initrd.img если и переключаются, то:

1) между up и smp;
2) между flavours;
3) _другой_ фиговиной -- которой интересно только то, пользовать ли
   UP или SMP ядро и какой flavour. (ну и которая проверит
   актуальность и посоветует обновить, если одно из них --
   рассинхронизировано с обновлениями по соотв. flavour/ncpu)

> >>Новое просто добавляется в список.
> >С каким лейблом?
> с лейблом устанавливаемого ядра, естественно.

Каков лейбл устанавливаемого ядра?
(и что должен об этом думать Дорогой Пользователь (tm), если это
не "ALT Linux"?)

> >>sec update должен устанавливать новое ядро и дописывать его в
> >>список, устанавливая дефолтным (но при этом не убирая старое).
> >Как называя?
> например 2420-std-up10

Шикарно.  Пользователь немного удивится, что какая-то бнопня
вылезла, но будет исправно подводить курсор к "ALT Linux" (или
"WinNT" ;-) и говорить "ентер".

> >>Это мы сможем сделать только на новом apt'е (через lua)
> >Да я не о подтягивании подпакетов сейчас.
> >Я к тому, что IMCO логично как раз сохранять лейбу дефолтного
> >ядра -- "ALT Linux".  И при этом проблемы с симлинками -- в
> >упор не вижу, любой другой вариант сильно лучше не будет.
> Читай выше.

Дык читаю.  И то ли крепко торможу, то ли это искание проблем на
филейную часть дистрибутива (вместе с суппортом всех мастей и
рангов).

PS: схемка набросана в полтора прохода, пинайте на здоровье.

-- 
 ---- WBR, Michael Shigorin <mike at altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


More information about the devel-kernel mailing list