ZFS Как обновить boot code после zpool upgrade

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
SuddenUser
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение SuddenUser » 2020-11-08 21:20:59

Доброго времени суток.
я в теме Freebsd совсем новичок, а тут у меня еще и система установлена на ZFS. Устанавливал не я.
Вопрос у меня как я понимаю больше по ZFS.
После обновления до Freebsd 12.2 было предложено обновить zpool (zpool upgrade). После выполнения команды появилось следующие:

Код: Выделить всё

If you boot from pool 'zroot', don't forget to update boot code.
Assuming you use GPT partitioning and da0 is your boot disk
the following command will do it:

  gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0
Freebsd handbook говорит следующее:

Код: Выделить всё

Warning: The boot code on systems that boot from a pool must be updated to support the new pool version. Use gpart bootcode on the partition that contains the boot code. There are two types of bootcode available, depending on way the system boots: GPT (the most common option) and EFI (for more modern systems).
For legacy boot using GPT, use the following command:

# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada1
For systems using EFI to boot, execute the following command:

# gpart bootcode -p /boot/boot1.efifat -i 1 ada1
Apply the bootcode to all bootable disks in the pool. See gpart(8) for more information.
Но как я понимаю у меня система установлена без использования GPT.
Как я понял система устанавливалась с параметрами по умолчанию как Root-on-ZFS с MBR схемой.
Массив Raidz2 из 12 дисков.

Код: Выделить всё

# zpool status zroot
  pool: zroot
 state: ONLINE
  scan: scrub repaired 0 in 0 days 03:01:50 with 0 errors on Sat Oct  3 23:11:27 2020
config:

        NAME         STATE     READ WRITE CKSUM
        zroot        ONLINE       0     0     0
          raidz2-0   ONLINE       0     0     0
            da0s1d   ONLINE       0     0     0
            da1s1d   ONLINE       0     0     0
            da10s1d  ONLINE       0     0     0
            da11s1d  ONLINE       0     0     0
            da2s1d   ONLINE       0     0     0
            da3s1d   ONLINE       0     0     0
            da4s1d   ONLINE       0     0     0
            da5s1d   ONLINE       0     0     0
            da6s1d   ONLINE       0     0     0
            da7s1d   ONLINE       0     0     0
            da8s1d   ONLINE       0     0     0
            da9s1d   ONLINE       0     0     0

Код: Выделить всё

# gpart show da0
=>        63  1953525105  da0  MBR  (932G)
          63           1       - free -  (512B)
          64  1953525104    1  freebsd  [active]  (932G)

# gpart show da0s1
=>         0  1953525104  da0s1  BSD  (932G)
           0     4194304      1  freebsd-zfs  (2.0G)
     4194304     4194304      2  freebsd-swap  (2.0G)
     8388608  1945136496      4  freebsd-zfs  (928G)
Подскажите, как мне обновить этот boot code в моем случае?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Neus
капитан
Сообщения: 1977
Зарегистрирован: 2008-09-08 21:59:56

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение Neus » 2020-11-08 22:29:16

Ищи там https://wiki.freebsd.org/RootOnZFS свой вариант
Physics is mathematics with the constraint of reality.
Engineering is physics with the constraint of money.

LOR захватили ситхи.
Добро пожаловать на светлую сторону!

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-08 22:52:18

Подскажите, как мне обновить этот boot code в моем случае?
# man zfsboot

Cоветую переустановить и настроить самостоятельно:
- будете знать что к чему
- хотя бы пул создадите нормально, с несколькими vdev'ами (сейчас это медленная байда)

Потренируйтесь в виртуалке.

SuddenUser
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение SuddenUser » 2020-11-08 22:54:16

Neus писал(а):
2020-11-08 22:29:16
Ищи там https://wiki.freebsd.org/RootOnZFS свой вариант
Я уже на это натыкался. Вроде на мое похоже вот это - https://wiki.freebsd.org/RootOnZFS/ZFSBootPartition
Но как я уже говорил, я в этом всем совсем новичок, и понимания не хватает, чтобы прийти к решению (начиная с 7 пункта понимание пропадает).
Можете конкретнее подсказать, что я должен сделать?

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-09 19:32:42

Но как я уже говорил, я в этом всем совсем новичок, и понимания не хватает, чтобы прийти к решению (начиная с 7 пункта понимание пропадает).
Можете конкретнее подсказать, что я должен сделать?
могу, что Вы дальше будете делать?

Совет, man zfsboot и попробовать повторить вашу инсталляцию под виртуалкой.

SuddenUser
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение SuddenUser » 2020-11-10 19:29:17

guest писал(а):
2020-11-09 19:32:42
Совет, man zfsboot и попробовать повторить вашу инсталляцию под виртуалкой.
Повторил свою инсталяцию в виртуалке, bootcode не обновлял. Никаких проблем после перезагрузки не выявлено.
Выходит ничего и не надо обновлять!?

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-11 11:53:04

Повторил свою инсталяцию в виртуалке, bootcode не обновлял. Никаких проблем после перезагрузки не выявлено.
Выходит ничего и не надо обновлять!?
в этом, конкретном случае 12.1 -> 12.2 - "да", но при серьезных изменениях в zfs, надо:

# man zfsboot

zfsboot – загрузочный код ZFS на BIOS-based компьютерах

zfsboot устанавливается в виде двух частей на диск или партицию используемую
ZFS пулом.
Первая часть - односектроный стартовый загрузочный блок, устанавливается
в начало диска или партиции.
Вторая часть, основной загрузочный блок, устанавливается на диск или
партицию с заданным смещением.
Обе области диска являются зарезервированными по спецификации ZFS
для использования загрузки.
Если zfsboot установлен на партицию, эта партиция должна быть
загрузочной в соответствии с описанием boot(8). ( # man 8 boot )

Код: Выделить всё

EXAMPLES
zfsboot обычно устанавливается с использованием dd(1). 
Для установки zfsboot на диск ada0, необходимо выполнить:
     
           dd if=/boot/zfsboot of=/dev/ada0 count=1
           dd if=/boot/zfsboot of=/dev/ada0 iseek=1 oseek=1024

Есди диск уже используется в системе, GEOM постарается защитить его
от прямой записи в специальные области, чтобы избежать этого
необходимо выполнить:

# sysctl kern.geom.debugflags=0x10

Ваш случай:
zfsboot может быть установлен на партицию MBR:

- создаем таблицу партиций MBR на диске ada0
# gpart create -s mbr ada0
- создаем партицию с типом freebsd на весь диск
# gpart add -t freebsd ada0
- записываем загрузчик первой стадии на диск ada0
# gpart bootcode -b /boot/boot0 ada0
- помечаем партицию как активную (все это в традиционных терминах старой MBR)
# gpart set -a active -i 1 ada0
- на всякий случай затираем 2'а сектора на ПЕРВОЙ партиции ada0s1 (это наша партиция с типом freebsd)
#  dd if=/dev/zero of=/dev/ada0s1 count=2
- пишем в первый сектор партиции ada0s1 -> zfsboot - первая часть загрузки (см выше описание: zfsboot пишется в виде двух частей)
# dd if=/boot/zfsboot of=/dev/ada0s1 count=1
- iseek - пропускает первый блок в zfsboot, остальное пишет на первую партицию ada0s1 со смещением в 1024 блока
# dd if=/boot/zfsboot of=/dev/ada0s1 iseek=1 oseek=1024
Теперь касательно верхнего примера для Вас:
mbr у вас уже есть - диск размечен, соответственно: gpart create -s mbr ada0 / НЕ НУЖНО
партиция "freebsd" тоже есть: gpart add -t freebsd ada0 / НЕ НУЖНО
- загрузчик первой стадии уже тоже прописан: gpart bootcode -b /boot/boot0 ada0 / НЕ НУЖНО
- партиция уже помечена как активная: gpart set -a active -i 1 ada0 / НЕ НУЖНО

Что остается? Правильно, обновить zfsboot (если он изменился)
# dd if=/boot/zfsboot of=/dev/ada0s1 count=1
# dd if=/boot/zfsboot of=/dev/ada0s1 iseek=1 oseek=1024

Внимание, писать zfsboot нужно на партицию с ZFS, в нашем случае, она одна - первая,
отсюда: ada0s1 (ada0 - диск, s1 - первая партиция в терминах M$, или слайс в терминах Unix)

И при инсталляции, это делается на всех дисках, во время установки FreeBSD, переключаемся
на четвертую виртуальную консоль: ALT-F4 и после поднятия сети в инсталлере,
копируем файл-лог установки по сети куда нам нужно для изучения:

# scp /tmp/bsdinstall_log user@remotehost.domain:/tmp/

Пример /tmp/bsdinstall_log: установка zfs raidz1 на три диска MBR:

Код: Выделить всё

DEBUG: zfs_create_diskpart: gpart destroy -F "da0"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0 destroyed
DEBUG: zfs_create_diskpart: Creating MBR layout...
DEBUG: zfs_create_diskpart: gpart create -s mbr "da0"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0 created
DEBUG: zfs_create_diskpart: gpart bootcode -b "/boot/mbr" "da0"
DEBUG: zfs_create_diskpart: retval=0 <output below>
bootcode written to da0
DEBUG: zfs_create_diskpart: gpart add -a 4k -t freebsd "da0"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0s1 added
DEBUG: zfs_create_diskpart: gpart set -a active -i 1 "da0"
DEBUG: zfs_create_diskpart: retval=0 <output below>
active set on da0s1
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da0s1"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da0s1
DEBUG: zfs_create_diskpart: gpart destroy -F "da0s1"
DEBUG: zfs_create_diskpart: retval=1 <output below>
gpart: arg0 'da0s1': Invalid argument
DEBUG: zfs_create_diskpart: gpart create -s BSD "da0s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0s1 created
DEBUG: zfs_create_diskpart: gpart add  -i 1 -t freebsd-zfs -s 2147483648b "da0s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0s1a added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da0s1a"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da0s1a
DEBUG: zfs_create_diskpart: gpart add -a 4k -i 2 -t freebsd-swap -s 2147483648b "da0s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0s1b added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da0s1b"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da0s1b
DEBUG: zfs_create_diskpart: gpart add -a 4k -i 4 -t freebsd-zfs "da0s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da0s1d added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da0s1d"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da0s1d
DEBUG: zfs_create_diskpart: dd if="/boot/zfsboot" of="/dev/da0s1" count=1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
DEBUG: zfs_create_diskpart: retval=0 <output below>
1+0 records in
1+0 records out
512 bytes transferred in 0.036392 secs (14069 bytes/sec)
DEBUG: zfs_create_diskpart: printf "$FSTAB_FMT" "/dev/da0s1b" "none" "swap" "sw" "0" "0" >> "/tmp/bsdinstall_etc/fstab"
...

аналогично для второго диска

DEBUG: zfs_create_diskpart: gpart destroy -F "da1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1 destroyed
DEBUG: zfs_create_diskpart: Creating MBR layout...
DEBUG: zfs_create_diskpart: gpart create -s mbr "da1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1 created
DEBUG: zfs_create_diskpart: gpart bootcode -b "/boot/mbr" "da1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
bootcode written to da1
DEBUG: zfs_create_diskpart: gpart add -a 4k -t freebsd "da1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1s1 added
DEBUG: zfs_create_diskpart: gpart set -a active -i 1 "da1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
active set on da1s1
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da1s1"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da1s1
DEBUG: zfs_create_diskpart: gpart destroy -F "da1s1"
DEBUG: zfs_create_diskpart: retval=1 <output below>
gpart: arg0 'da1s1': Invalid argument
DEBUG: zfs_create_diskpart: gpart create -s BSD "da1s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1s1 created
DEBUG: zfs_create_diskpart: gpart add  -i 1 -t freebsd-zfs -s 2147483648b "da1s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1s1a added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da1s1a"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da1s1a
DEBUG: zfs_create_diskpart: gpart add -a 4k -i 2 -t freebsd-swap -s 2147483648b "da1s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1s1b added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da1s1b"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da1s1b
DEBUG: zfs_create_diskpart: gpart add -a 4k -i 4 -t freebsd-zfs "da1s1"
DEBUG: zfs_create_diskpart: retval=0 <output below>
da1s1d added
DEBUG: zfs_create_diskpart: zpool labelclear -f "/dev/da1s1d"
DEBUG: zfs_create_diskpart: retval=1 <output below>
failed to read label from /dev/da1s1d
DEBUG: zfs_create_diskpart: dd if="/boot/zfsboot" of="/dev/da1s1" count=1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
DEBUG: zfs_create_diskpart: retval=0 <output below>
1+0 records in
1+0 records out
512 bytes transferred in 0.018886 secs (27110 bytes/sec)
DEBUG: zfs_create_diskpart: printf "$FSTAB_FMT" "/dev/da1s1b" "none" "swap" "sw" "0" "0" >> "/tmp/bsdinstall_etc/fstab"

аналогично для третьего...
далее создание пула...
И в конце вторая часть записи zfsboot:

DEBUG: zfs_create_boot: Updating MBR boot loader on disks...
DEBUG: zfs_create_boot: dd if="/boot/zfsboot" of="/dev/da0s1a" skip=1 seek=1024
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
DEBUG: zfs_create_boot: retval=0 <output below>
512+0 records in
512+0 records out
262144 bytes transferred in 0.227794 secs (1150793 bytes/sec)
DEBUG: zfs_create_boot: dd if="/boot/zfsboot" of="/dev/da1s1a" skip=1 seek=1024
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
DEBUG: zfs_create_boot: retval=0 <output below>
512+0 records in
512+0 records out
262144 bytes transferred in 0.192364 secs (1362751 bytes/sec)
DEBUG: zfs_create_boot: dd if="/boot/zfsboot" of="/dev/da2s1a" skip=1 seek=1024
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
DEBUG: zfs_create_boot: retval=0 <output below>
512+0 records in
512+0 records out
262144 bytes transferred in 0.205857 secs (1273426 bytes/sec)
Понятно? Понятно почему на все диски в RAIDZ1?

SuddenUser
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение SuddenUser » 2020-11-13 23:56:42

guest писал(а):
2020-11-11 11:53:04
Понятно?

Да спасибо, разжевали от души.
Но, Ваш вопрос
guest писал(а):
2020-11-11 11:53:04
Понятно почему на все диски в RAIDZ1?
как-то обескуражил... Я понял, что в случае массива надо писать на все диски в первый слайс (т.е в в моем случае на 12 дисков - da0s1 ... da11s1), или я ошибаюсь? Есть подвох?

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-14 1:06:41

как-то обескуражил... Я понял, что в случае массива надо писать на все диски в первый слайс (т.е в в моем случае на 12 дисков - da0s1 ... da11s1), или я ошибаюсь? Есть подвох?
не ошибаетесь, в первый слайс - судя по представленному выводу gpart show da0,
посмотрите на остальные диски, разметка должна быть точь в точь такая же, ну
если использовали installer, а не ручную разметку и установку.

Почему на все диски - потому что корень у Вас на raidz1 (raid5), он размазан по всем дискам.

Еще раз, MBR - пережиток и геморрой, особенно, если диски 4K - выравнивание в MBR...
У Вас 12 дисков в pool'е, больше 9'ти = деградация скорости и производительности.
В случае RAIDZ1, лучше создать пул из нескольких vdev'ов: по 3 или 4 ...
Наиболее оптимально будет по 3 на vdev, например

# zpool create zroot raidz /dev/da0 /dev/da1 /dev/da2 raidz /dev/da3 /dev/da4 /dev/da5 raidz ...

Из опыта и практики, лучше грузиться с обычного диска или с mirror пула, а raidz1/2/3 делать
обычным образом, вместо загрузочного.

Вот почему совет, переделать!

пример с боевого сервера под linux, но zfs он и в африке...

Код: Выделить всё

root@zfsnoc1:~# zpool status nfs1
  pool: nfs1
 state: ONLINE
  scan: scrub repaired 0B in 0 days 00:22:26 with 0 errors on Sun Nov  8 00:46:32 2020
config:

        NAME        STATE     READ WRITE CKSUM
        nfs1        ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            sda     ONLINE       0     0     0
            sdb     ONLINE       0     0     0
            sdc     ONLINE       0     0     0
          raidz1-1  ONLINE       0     0     0
            sdd     ONLINE       0     0     0
            sde     ONLINE       0     0     0
            sdf     ONLINE       0     0     0
          raidz1-2  ONLINE       0     0     0
            sdg     ONLINE       0     0     0
            sdh     ONLINE       0     0     0
            sdi     ONLINE       0     0     0
          raidz1-3  ONLINE       0     0     0
            sdj     ONLINE       0     0     0
            sdk     ONLINE       0     0     0
            sdl     ONLINE       0     0     0
        cache
          sdaa1     ONLINE       0     0     0
          sdab1     ONLINE       0     0     0

errors: No known data errors
root@zfsnoc1:~#
выше пул nfs1 из 4 vdev'ов, каждый по 3 hdd + l2arc (cache) из двух SSD.

Если создаете:
1. raidz один vdev из 6xhdd
# zpool create raid5name raidz /dev/da0 /dev/da1 /dev/da2 /dev/da3 /dev/da4 /dev/da5
получите raidz а-ля raid5

2. raidz два vdev'а по 3xhdd каждый
# zpool create raid50name raidz /dev/da0 /dev/da1 /dev/da2 raidz /dev/da3 /dev/da4 /dev/da5
получите raidz из 2xvdev по 3xhdd каждый = raidz а-ля raid50

raidz а-ля raid50 и он будет существенно быстрей и оптимальней чем первый

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение icb » 2020-11-15 2:19:50

guest писал(а):
2020-11-14 1:06:41
raidz а-ля raid50 и он будет существенно быстрей и оптимальней чем первый
Быстрее - да, но как он может быть оптимальнее?
В первом случае накладных расходов будет на 1 диск, а вот втором случае накладных расходов аж 4 диска. Разве не так?

Аватара пользователя
Neus
капитан
Сообщения: 1977
Зарегистрирован: 2008-09-08 21:59:56

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение Neus » 2020-11-15 9:00:56

Разве не так?
Не 4 а 2.
Physics is mathematics with the constraint of reality.
Engineering is physics with the constraint of money.

LOR захватили ситхи.
Добро пожаловать на светлую сторону!

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-15 12:54:39

Быстрее - да, но как он может быть оптимальнее?
В первом случае накладных расходов будет на 1 диск, а вот втором случае накладных расходов аж 4 диска. Разве не так?
Вы о чем?
Какие накладные расходы?

В ZFS больше 9ти дисков в пуле при одном vdev'е - деградация по всем параметрам.

Пример 1: дано 6 дисков, нужно приготовить пул ZFS, любой.
Пример 2: дано 9 дисков.
Пример 3: дано 12 дисков.

Какой и как будете делать?

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение icb » 2020-11-15 16:32:09

Neus писал(а):
2020-11-15 9:00:56
Не 4 а 2.
Да, я перепутал с 51.
guest писал(а):
2020-11-15 12:54:39
Пример 1: дано 6 дисков, нужно приготовить пул ZFS, любой.
RAIDZ2
guest писал(а):
2020-11-15 12:54:39
Пример 2: дано 9 дисков.
RAIDZ2 или RAIDZ3
guest писал(а):
2020-11-15 12:54:39
Пример 3: дано 12 дисков.
RAIDZ3

guest
проходил мимо

ZFS Как обновить boot code после zpool upgrade

Непрочитанное сообщение guest » 2020-11-15 20:26:59

любой, который на Ваш взгляд выгодней, оптимальней...