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

Материал из ALT Linux Wiki
Нет описания правки
м (→‎Ссылки: источник неправильного написания названия дистрибутива (в том числе и в википедии))
(не показано 6 промежуточных версий 3 участников)
Строка 1: Строка 1:
[[Категория:Admin]]
{{crap}}
{{crap}}


Строка 6: Строка 5:
=== Настройка ===
=== Настройка ===


Делал по мотивам письма 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 <nowiki>[d-kernel] Re: Ситуация с поддержкой evms* в ALTLinux</nowiki>]. Дерево для <code>initrd</code> генерил руками (на основании заготовки полученной спомощью <code>mkinitrd</code>).
 
Для моей конкретной системы (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>):
<pre>$ 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:
Для моей конкретной системы (MaxSelect A3 с kernel-2.6.16-std26-smp-alt9.x86_64) делал следующие:
итого 0
drwxr-xr-x 2 root root 328 Авг 22 12:54 2.5.5


initrd.evms/tree/lib/evms/2.5.5:
# Втащил в дерево <code>initrd</code> <code>evms_activate</code> (в <code>/bin</code>) и потребные для неё библиотеки (<div style="display: inline; color: red;">список скорее всего избыточен: оптимизацией ещё не занимался.</div>):
итого 732
$ sudo -H ls -Rl initrd.evms/tree/lib
-rw-r--r-- 1 root root  41456 Авг  6 21:37 bbr-1.1.15.so
initrd.evms/tree/lib:
-rw-r--r-- 1 root root  42096 Авг  6 21:37 bbr_seg-1.1.13.so
итого 1845
-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
drwxr-xr-x 3 root root      72 Авг 22 12:52 evms
-rw-r--r-- 1 root root  60368 Авг  6 21:37 drivelink-3.0.6.so
-rwxr-xr-x 1 root root  111034 Май 26 18:12 ld-2.3.6.so
-rw-r--r-- 1 root root 158856 Авг  6 21:37 lvm-1.1.15.so
lrwxrwxrwx 1 root root      11 Авг 22 13:30 ld-linux-x86-64.so.2 -> ld-2.3.6.so
-rw-r--r-- 1 root root 163688 Авг  6 21:37 lvm2-1.0.5.so
-rwxr-xr-x 1 root root 1188440 Май 26 18:12 libc-2.3.6.so
-rw-r--r-- 1 root root  52552 Авг  6 21:37 snapshot-3.1.11.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
...


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


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


** вызов <tt>evms_activate</tt>
Если всё сделано правельно — evms тома поднимаются в <code>initrd</code>.
** отмонтирование <tt>/dev/evms</tt> и <tt>/var/lock</tt>
 
Если всё сделано правельно — evms тома поднимаются в <tt>initrd</tt>.


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


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


==== Ссылки ====
=== Ссылки ===
* [http://lists.altlinux.org/pipermail/devel-kernel/2005-October/005819.html [d-kernel] Re: Ситуация с поддержкой evms* в ALTLinux]
* [http://lists.altlinux.org/pipermail/devel-kernel/2005-October/005819.html <nowiki>[d-kernel] Re: Ситуация с поддержкой evms* в ALT Linux</nowiki>]
* [[altbug:9958]]
* [[altbug:9958|Поднятие EVMS из initrd]] -- содержит patch на mkinitrd
-- содержит patch на mkinitrd
[[Категория:Admin]]
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}

Версия от 07:32, 31 мая 2019

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/.)

Ссылки