Eu tenho migrado um pool zfs raidz no linux para novos discos através de dispositivos virtuais que eram arquivos esparsos. Eu usei partições nos discos, pois os discos têm tamanhos diferentes de 1,9T cada. O último disco a adicionar é um disco de 4 TB e eu o particionei como os outros com uma partição de 1,9 TB para adicionar ao pool. Está usando uma tabela de partição GPT. Quando tento substituir o último arquivo pela partição 1.9T no disco 4T, recebo o seguinte
zpool replace -f zfs_raid /zfs_jbod/zfs_raid/zfs.2 /dev/sdd1
cannot replace /zfs_jbod/zfs_raid/zfs.2 with /dev/sdd1: devices have different sector alignment
Como posso alterar o tamanho do setor de partição para 512 como os outros, ou, se não for possível alterar os outros dispositivos de pool para 4024? Aparentemente, os tamanhos do setor lógico são todos 512
cat /sys/block/sdd/queue/hw_sector_size
Disk /dev/sdd: 4000.8 GB, 4000787030016 bytes, 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Como reparticionei o disco que continha o 4º dispositivo original com base em arquivo que estou tentando substituir, mas não funcionou, recriei o arquivo do dispositivo, de modo que ele está atualmente reestruturando isso.
saída de status do zpool:
NAME STATE READ WRITE CKSUM
zfs_raid DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
sda3 ONLINE 0 0 0
sdc2 ONLINE 0 0 0
sdb1 ONLINE 0 0 0
replacing-3 OFFLINE 0 0 0
/zfs_jbod/zfs_raid/zfs.2 OFFLINE 0 0 0
/mnt/butter2/zfs.4 ONLINE 0 0 0 (resilvering)