zfs изменяет размер блока без перехода в автономный режим

Учитывая raidz1 vdev на FreeBSD 10 с такой конфигурацией:

root@gw:~ # zpool status
  pool: data
 state: ONLINE
status: One or more devices are configured to use a non-native block size.
        Expect reduced performance.
action: Replace affected devices with devices that support the
        configured block size, or migrate data to a properly configured
        pool.
  scan: resilvered 26.1G in 0h43m with 0 errors on Sat Dec 21 07:07:41 2013
config:

        NAME        STATE     READ WRITE CKSUM
        data        ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            ada1    ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada2    ONLINE       0     0     0
            ada3    ONLINE       0     0     0  block size: 512B configured, 4096B native

errors: No known data errors

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

zpool detach data ada1
zpool labelclear ada1
zpool attach data ada1

Это правильный способ?

ОБНОВЛЕНИЕ - вещи, которые я пробовал:

  • «zpool remove» можно было использовать для удаления ada1 раньше очистка и добавление снова. Но "zpool remove" не поддерживает raidz vdevs.

  • "zpool replace --f ada1" можно использовать для принудительной перестройки ada1, как если бы это был новый devide, но zpool не разрешает это (даже не принудительно) для устройства, которое уже является частью активного

Я считаю, что я мог бы добиться этого следующим образом:

  • выключить систему
  • удалить ada1 и стереть данные на нем полностью
  • верните обратно ada1
  • запустите систему
  • затем введите «zpool replace data ada1»

Может ли это сработать? Но только после полного выключения компьютера. : - (

1
задан 9 September 2016 в 21:41
1 ответ

Я думаю, что вам нужна команда zpool offline , например:

zpool offline data ada1
zpool labelclear ada1
zpool replace data ada1 ada1

Последняя replace может не работать, указав первую ada1 . Если это не так, используйте zpool list или zdb , чтобы получить GUID диска. См. https://askubuntu.com/questions/305830/replacing-a-dead-disk-in-a-zpool

1
ответ дан 3 December 2019 в 23:41

Теги

Похожие вопросы