Evms inside initrd: различия между версиями

Материал из ALT Linux Wiki
(Import from freesource.info)
 
Нет описания правки
Строка 1: Строка 1:
[[Category:Admin]]
[[Категория:Admin]]
{{MovedFromFreesourceInfo|AltLinux/Sisyphus/admin/evms/initrd}}
{{crap}}


== Поднятие evms из initrd ==
== Поднятие evms из initrd ==
Строка 8: Строка 8:
Делал по мотивам письма lakostis@ [http://lists.altlinux.org/pipermail/devel-kernel/2005-October/005819.html [d-kernel] Re: Ситуация с поддержкой evms* в ALTLinux]. Дерево для <tt>initrd</tt> генерил руками (на основании заготовки полученной спомощью <tt>mkinitrd</tt>).
Делал по мотивам письма lakostis@ [http://lists.altlinux.org/pipermail/devel-kernel/2005-October/005819.html [d-kernel] Re: Ситуация с поддержкой evms* в ALTLinux]. Дерево для <tt>initrd</tt> генерил руками (на основании заготовки полученной спомощью <tt>mkinitrd</tt>).


Для моей конкретной системы (MaxSelect A3 с kernel-2.6.16-std26-smp-alt9.x86_64) делал следующие:
Для моей конкретной системы (MaxSelect A3 с kernel-2.6.16-std26-smp-alt9.x86_64) делал следующие:


# Втащил в дерево <tt>initrd</tt> <tt>evms_activate</tt> (в <tt>/bin</tt>) и потребные для неё библиотеки (<div style="display: inline; color: red;">список скорее всего избыточен: оптимизацией ещё не занимался.</div>):
# Втащил в дерево <tt>initrd</tt> <tt>evms_activate</tt> (в <tt>/bin</tt>) и потребные для неё библиотеки (<div style="display: inline; color: red;">список скорее всего избыточен: оптимизацией ещё не занимался.</div>):
Строка 48: Строка 48:
...</pre>
...</pre>


# Создал ссылку <tt>lib64 -> lib</tt> (для упрощения, возможно не прав).
# Создал ссылку <tt>lib64 -> lib</tt> (для упрощения, возможно не прав).
# Добавил модуль <tt>dm-mod.ko</tt>.
# Добавил модуль <tt>dm-mod.ko</tt>.
# Создал каталоги <tt>/dev/evms</tt> и <tt>/var/lock</tt>, для монтирования в них <tt>tmpfs</tt>.
# Создал каталоги <tt>/dev/evms</tt> и <tt>/var/lock</tt>, для монтирования в них <tt>tmpfs</tt>.
Строка 60: Строка 60:
** отмонтирование <tt>/dev/evms</tt> и <tt>/var/lock</tt>
** отмонтирование <tt>/dev/evms</tt> и <tt>/var/lock</tt>


Если всё сделано правельно -- evms тома поднимаются в <tt>initrd</tt>.
Если всё сделано правельно — evms тома поднимаются в <tt>initrd</tt>.


=== Проверка ===
=== Проверка ===


Теперь, если отмантирование <tt>/dev/evms</tt> в <tt>linuxrc</tt> не делать и <tt>/initrd</tt> существует -- можно наблюдать evms тома, поднятые при загрузке ядра. (Будут видны в <tt>/initrd/dev/evms/</tt>.)
Теперь, если отмантирование <tt>/dev/evms</tt> в <tt>linuxrc</tt> не делать и <tt>/initrd</tt> существует — можно наблюдать evms тома, поднятые при загрузке ядра. (Будут видны в <tt>/initrd/dev/evms/</tt>.)


==== Ссылки ====
==== Ссылки ====

Версия от 21:28, 30 июля 2008

48px-Mail-mark-junk red.svg.png
Эта статья протухла.
Её нужно существенно доработать или удалить


Поднятие evms из initrd

Настройка

Делал по мотивам письма lakostis@ [d-kernel Re: Ситуация с поддержкой evms* в ALTLinux]. Дерево для initrd генерил руками (на основании заготовки полученной спомощью mkinitrd).

Для моей конкретной системы (MaxSelect A3 с kernel-2.6.16-std26-smp-alt9.x86_64) делал следующие:

  1. Втащил в дерево initrd evms_activate/bin) и потребные для неё библиотеки (
    список скорее всего избыточен: оптимизацией ещё не занимался.
    ):
$ sudo -H ls -Rl initrd.evms/tree/lib
initrd.evms/tree/lib:
итого 1845

drwxr-xr-x 3 root root      72 Авг 22 12:52 evms
-rwxr-xr-x 1 root root  111034 Май 26 18:12 ld-2.3.6.so
lrwxrwxrwx 1 root root      11 Авг 22 13:30 ld-linux-x86-64.so.2 -> ld-2.3.6.so
-rwxr-xr-x 1 root root 1188440 Май 26 18:12 libc-2.3.6.so
lrwxrwxrwx 1 root root      13 Авг 22 13:30 libc.so.6 -> libc-2.3.6.so
-rw-r--r-- 1 root root   10368 Май 26 18:14 libdl-2.3.6.so
lrwxrwxrwx 1 root root      14 Авг 22 13:30 libdl.so.2 -> libdl-2.3.6.so
lrwxrwxrwx 1 root root      18 Авг 22 13:30 libevms-2.5.so.0 -> libevms-2.5.so.0.5
-rw-r--r-- 1 root root  454000 Авг  6 21:37 libevms-2.5.so.0.5
lrwxrwxrwx 1 root root      18 Авг 22 13:30 libevms.so -> libevms-2.5.so.0.5
-rw-r--r-- 1 root root  101260 Май 26 18:14 libpthread-0.10.so
lrwxrwxrwx 1 root root      18 Авг 22 13:30 libpthread.so.0 -> libpthread-0.10.so
lrwxrwxrwx 1 root root      14 Авг 22 13:30 libuuid.so.1 -> libuuid.so.1.2
-rw-r--r-- 1 root root   10696 Июн  6 13:03 libuuid.so.1.2
drwxr-xr-x 3 root root      88 Авг 22 12:10 modules

initrd.evms/tree/lib/evms:
итого 0
drwxr-xr-x 2 root root 328 Авг 22 12:54 2.5.5

initrd.evms/tree/lib/evms/2.5.5:
итого 732
-rw-r--r-- 1 root root  41456 Авг  6 21:37 bbr-1.1.15.so
-rw-r--r-- 1 root root  42096 Авг  6 21:37 bbr_seg-1.1.13.so
-rw-r--r-- 1 root root  45848 Авг  6 21:37 disk-1.2.13.so
-rw-r--r-- 1 root root 167984 Авг  6 21:37 dos-1.1.16.so
-rw-r--r-- 1 root root  60368 Авг  6 21:37 drivelink-3.0.6.so
-rw-r--r-- 1 root root 158856 Авг  6 21:37 lvm-1.1.15.so
-rw-r--r-- 1 root root 163688 Авг  6 21:37 lvm2-1.0.5.so
-rw-r--r-- 1 root root  52552 Авг  6 21:37 snapshot-3.1.11.so

...
  1. Создал ссылку lib64 -> lib (для упрощения, возможно не прав).
  2. Добавил модуль dm-mod.ko.
  3. Создал каталоги /dev/evms и /var/lock, для монтирования в них tmpfs.
  4. В linuxrc добавлены:
    • загрузка dm-mod.ko;
    • монтирование tmpfs
/bin/mount -t tmpfs -o size=64k evms /dev/evms
/bin/mount -t tmpfs -o size=64k tmpfs /var/lock
    • вызов evms_activate
    • отмонтирование /dev/evms и /var/lock

Если всё сделано правельно — evms тома поднимаются в initrd.

Проверка

Теперь, если отмантирование /dev/evms в linuxrc не делать и /initrd существует — можно наблюдать evms тома, поднятые при загрузке ядра. (Будут видны в /initrd/dev/evms/.)

Ссылки

* [d-kernel Re: Ситуация с поддержкой evms* в ALTLinux]
* altbug:9958
-- содержит patch на mkinitrd