* [devel] IA: mkinitrd-3.0.0-alt1 - initramfs by default
@ 2007-02-08 20:24 Sergey Vlasov
0 siblings, 0 replies; only message in thread
From: Sergey Vlasov @ 2007-02-08 20:24 UTC (permalink / raw)
To: sisyphus; +Cc: devel
[-- Attachment #1: Type: text/plain, Size: 4134 bytes --]
Hello!
В новой версии mkinitrd-3.0.0-alt1 произошло существенное изменение -
добавлена поддержка создания образов в формате initramfs, причём этот
формат теперь используется по умолчанию.
В создаваемом образе initramfs теперь используется udevd, что даёт
следующие возможности, отсутствовавшие в предыдущих версиях mkinitrd:
- В параметре root=... можно указывать не только имя устройства,
используемое ядром (/dev/hda1, /dev/sda5 и т.п.), но и любое из
дополнительных имён, создаваемых udev - /dev/disk/by-uuid/<UUID>,
/dev/disk/by-label/<LABEL>, и даже варианты by-id и by-path.
Впрочем, такой синтаксис не работает при использовании lilo,
поскольку нет способа отключить выполняемое lilo преобразование
имени устройства в major:minor (скрипты в initramfs вместо
оригинального имени получают только номер устройства).
- Для обхода проблем с lilo можно использовать синтаксис вида:
root="UUID=00000000-0000-0000-0000-000000000000"
root="LABEL=/"
(кавычки нужны при записи этих значений в lilo.conf; в других
загрузчиках они могут не требоваться).
Вариант с LABEL=... не вполне эквивалентен /dev/disk/by-label/...,
поскольку в последнем случае некоторые символы в имени удаляются
или модифицируются по сравнению с настоящим именем (например, метку
"/" нельзя представить в виде /dev/disk/by-label/...).
- Параметр resume=..., используемый для указания swap-раздела для
swsusp, также может записываться в одной из описанных выше форм.
Для параметра resume2=..., используемого патчем suspend2, эта
возможность недоступна (допускаются только варианты, поддерживаемые
кодом suspend2 в ядре).
- При использовании udevd возможно создание образа initramfs,
содержащего более широкий набор модулей, чем необходимый для
конкретной системы - в этом случае udevd может автоматически
загрузить модули, необходимые для поддержки присутствующих
устройств (с помощью того же механизма modalias, который теперь
используется в системном udevd). Впрочем, в mkinitrd-3.0.0-alt1
создание таких образов пока ещё не реализовано - все модули,
указанные в опциях --with, --preload или определённые
автоматически, будут загружены принудительно.
Прочие изменения в mkinitrd-3.0.0-alt1:
- При определении используемых уровней RAID (что нужно для
определения списка модулей, помещаемых в initramfs) используется не
только устаревший файл /etc/raidtab, но и вывод команды
/usr/sbin/mdadm --detail --scan (если установлен пакет mdadm).
- Код для поддержки автозапуска RAID-массивов (md), используемый в
initramfs, теперь поддерживает параметры md=... и raid=...,
описанные в документации ядра (в частности, можно отключить
автозапуск RAID параметром raid=noautodetect, или запустить все
RAID-массивы как устройства с возможностью разбиения на разделы,
указав параметр raid=part; последний вариант не вполне совместим с
текущими скриптами в пакете startup).
- Добавлена опция "-a INITRAMFS_FILE=FILE", предназначенная для
добавления в initramfs дополнительных файлов. Например, для замены
таблицы DSDT (патч для поддержки этой возможности входит как
минимум в сборки ядер 2.6.18-std) можно при вызове mkinitrd указать
опцию вида:
-a DSDT.aml=/boot/dsdt.aml
(DSDT.aml - фиксированное имя, используемое в патче; имя файла,
который будет скопирован в образ, не обязано совпадать с тем, под
которым он будет помещён в initramfs).
Для автоматического добавления опций mkinitrd при установке ядра
можно указать нужные опции в переменной MKINITRD_OPTIONS в файле
/etc/sysconfig/installkernel.
Формат initramfs теперь используется по умолчанию для всех ядер,
начиная с версии 2.6.15 (с более ранними версиями ядер текущая версия
udev несовместима). Если необходимо создать образ initrd в старом
формате, можно указать опцию --type=romfs (или --type=ext2, если
создаётся образ для самостоятельно собранного варианта ядра -
имеющиеся в Сизифе ядра уже давно не имеют встроенной поддержки ext2).
--
Sergey Vlasov
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2007-02-08 20:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-08 20:24 [devel] IA: mkinitrd-3.0.0-alt1 - initramfs by default Sergey Vlasov
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git