* Re: [make-initrd] поддержка zfs @ 2022-10-21 7:24 ` Konstantin Lepikhov 2022-10-21 10:50 ` Alexey Gladkov 2022-11-19 16:09 ` Alexey Gladkov 2 siblings, 1 reply; 6+ messages in thread From: Konstantin Lepikhov @ 2022-10-21 7:24 UTC (permalink / raw) To: make-initrd Hi Семён! On 10/20/2022, at 09:23:46 PM you wrote: > > Здравствуйте. С помощью make-initrd возможно создать образ, который загрузит систему с корневым разделом на zfs-пуле? > А что именно требуется в этом случае? Какие-то модули ядра или еще userspace? -- WBR et al. ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <1666365643.675764399@f555.i.mail.ru>]
* Re: [make-initrd] поддержка zfs @ 2022-10-21 17:04 ` Konstantin Lepikhov 0 siblings, 1 reply; 6+ messages in thread From: Konstantin Lepikhov @ 2022-10-21 17:04 UTC (permalink / raw) To: make-initrd Hi Семён! On 10/21/2022, at 06:20:43 PM you wrote: > > Затрудняюсь ответить, перенос системы делаю по официальной документации для дебиана , арча и суси , начало у всех там примерно одинаковое, а вот как доходит до установки загрузчика и сборки initrd — у всех свои костыли. > У меня 3 раздела на устройстве: EFI fat16, boot и root пулы zfs. В initrd-образе присутствуют модули для zfs. grub загружает initrd, вижу сообщения о монтировании dev, sys, run, загрузке модулей ядра, запуске udevd, plymouth, uveentd, polld, поднимается lo-интерфейс, а дальше циклическое сообщение «initramfs: Waiting for root ...». Дистрибутив K10, initramfs 2.27.1 > Насколько я понимаю, в initramfs должны присутствовать утилиты монтирования zfs + необходимые ядерные модули. Для первого необходима соответствующая feature/guess (пусть legion@ поправит), для второго либо обвязка в guess, либо просто MODULES_ADD в конфигурации initrd.mk У вас есть примеры, по которым вы смотрели поддержку? -- WBR et al. ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <1666375817.830054543@f398.i.mail.ru>]
* Re: [make-initrd] поддержка zfs @ 2022-10-22 0:10 ` Alexey Gladkov 0 siblings, 1 reply; 6+ messages in thread From: Alexey Gladkov @ 2022-10-22 0:10 UTC (permalink / raw) To: Семён Шепилов, make-initrd On Fri, Oct 21, 2022 at 09:10:17PM +0300, Семён Шепилов wrote: > > В конфигурацию initrd.mk добавил единственную строку MODULES_ADD += zfs, стандартный альтовский образ initrd стал таким (изменения выделил символом «*»): > Used features: add-modules add-udev-rules buildinfo cleanup compress depmod-image gpu-drm kbd > locales network plymouth rdshell rootfs system-glibc ucode > Packed modules: af_packet amdgpu cec drm drm_kms_helper drm_ttm_helper evdev gpu-sched hid > hid-generic hwmon i2c-algo-bit icp* input-leds intel-agp intel-gtt iommu_v2 rc-core serio_raw > sis-agp spl* ttm via-agp zavl* zcommon* zfs* zlua* znvpair* zunicode* zzstd* > Ядро уже было с поддержкой zfs — у меня не новая установка, а перенос системы с поддержкой zfs на другой носитель. > Во всех инструкциях описывается либо установка из смонтированных репозиториев, либо debootstrap для дебиана; > выжимка для дебиана ( https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/Debian%20Bullseye%20Root%20on%20ZFS.html#step-4-system-configuration ): > apt install dpkg-dev linux-headers-generic linux-image-generic zfs-initramfs > echo REMAKE_INITRD = yes > /etc/dkms/zfs.conf > update-initramfs -c -k all > > для арча ( https://openzfs.github.io/openzfs-docs/Getting%20Started/Arch%20Linux/Root%20on%20ZFS/3-system-configuration.html ): > Configure mkinitcpio: > tee /mnt/etc/mkinitcpio.conf <<EOF > HOOKS=(base udev autodetect modconf block keyboard zfs filesystems) > EOF > > для суси ( https://openzfs.github.io/openzfs-docs/Getting%20Started/openSUSE/openSUSE%20Leap%20Root%20on%20ZFS.html#step-6-kernel-installation ): > Add zfs module into dracut: echo 'zfs' >> /etc/modules-load.d/zfs.conf Поддержки zfs нет в dracut. Модуль для этой файловой системы есть только отдельно[1]. Нужно почитать как они предлагают монтировать zfs. Уж очень много там скриптов. [1] https://github.com/openzfs/zfs/tree/master/contrib/dracut -- Rgrds, legion ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <1666452262.650181596@f452.i.mail.ru>]
* Re: [make-initrd] поддержка zfs @ 2022-10-23 18:47 ` Alexey Gladkov 0 siblings, 0 replies; 6+ messages in thread From: Alexey Gladkov @ 2022-10-23 18:47 UTC (permalink / raw) To: Семён Шепилов Cc: make-initrd On Sat, Oct 22, 2022 at 06:24:22PM +0300, Семён Шепилов wrote: > > https://github.com/openzfs/zfs/blob/master/contrib/dracut/90zfs/mount-zfs.sh.in > > начало с попытки делегировать монтирование маунт-генератору, как понял > только для systemd ( > https://zfsonlinux.org/manpages/0.8.5/man8/zfs-mount-generator.8.html ) > > дальше строки 23-56 что-то про ввод пароля, возможно это для > зашифрованных разделов, никогда таких не использовал > > далее строки 59-79 поиск загрузочных атрибутов у пулов > 66 if [ " ${root} " = " zfs:AUTO " ] ; then # похоже на содержимое грубовского CMDLINE > 67 if ! ZFS_DATASET= " $( zpool get -Ho value bootfs | grep -m1 -vFx - ) " ; then # в chroot результат выполнения этого у меня - пустая строка, без грепа — два прочерка, т.е. оба пула у меня не загрузочные. > Из оракловой справки: > bootfs=pool/dataset > Identifies the default bootable dataset for the root pool. This property is expected to be set mainly by the installation and upgrade programs. > Я ни в одной инструкции на openzfs.github.io/openzfs-docs/Getting > Started не видел никаких действий с этим свойством… > > 69 zpool import -N -a ${ZPOOL_IMPORT_OPTS} # импорт без монтирования (-N) всех пулов (-a) > # после импорта повторно эта же проверка, если не прошли — return 1 досрочно завершает весь блок if? > > строки 80-93 так-же делают импорт пула как и выше, но уже не всех, а > только того, где нашлись загрузочные атрибуты; я теперь еще больше не > понимаю как это должно работать) Не знаю насколько код рабочий, но мне кажется более понятным код initramfs: https://github.com/openzfs/zfs/blob/master/contrib/initramfs/scripts/zfs хотя, признаюсь, по сравнению с btrfs процесс инициализации рута на zfs выглядит дико. -- Rgrds, legion ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [make-initrd] поддержка zfs 2022-10-21 7:24 ` [make-initrd] поддержка zfs Konstantin Lepikhov @ 2022-10-21 10:50 ` Alexey Gladkov 2022-11-19 16:09 ` Alexey Gladkov 2 siblings, 0 replies; 6+ messages in thread From: Alexey Gladkov @ 2022-10-21 10:50 UTC (permalink / raw) To: Семён Шепилов, make-initrd On Thu, Oct 20, 2022 at 09:23:46PM +0300, Семён Шепилов wrote: > > Здравствуйте. С помощью make-initrd возможно создать образ, который > загрузит систему с корневым разделом на zfs-пуле? Сейчас поддержки zfs нет, но при должном желании её можно добавить. -- Rgrds, legion ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [make-initrd] поддержка zfs 2022-10-21 7:24 ` [make-initrd] поддержка zfs Konstantin Lepikhov 2022-10-21 10:50 ` Alexey Gladkov @ 2022-11-19 16:09 ` Alexey Gladkov 2 siblings, 0 replies; 6+ messages in thread From: Alexey Gladkov @ 2022-11-19 16:09 UTC (permalink / raw) To: Семён Шепилов, make-initrd On Thu, Oct 20, 2022 at 09:23:46PM +0300, Семён Шепилов wrote: > > Здравствуйте. С помощью make-initrd возможно создать образ, который загрузит систему с корневым разделом на zfs-пуле? Я завёл список задач, которые нужно реализовать. Потихоньку работаю над этим. Сложность в том, что у zfs всё своё и никакие механизмы определения, которые у меня есть, с zfs не работают. Посмотрим, что получится реализовать. https://github.com/osboot/make-initrd/issues/30 -- Rgrds, legion ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-11-19 16:09 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-10-21 7:24 ` [make-initrd] поддержка zfs Konstantin Lepikhov 2022-10-21 17:04 ` Konstantin Lepikhov 2022-10-22 0:10 ` Alexey Gladkov 2022-10-23 18:47 ` Alexey Gladkov 2022-10-21 10:50 ` Alexey Gladkov 2022-11-19 16:09 ` Alexey Gladkov
Make-initrd development discussion This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/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 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \ make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com public-inbox-index make-initrd Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.make-initrd AGPL code for this site: git clone https://public-inbox.org/public-inbox.git