私は、スパースファイルである仮想デバイスを介して、Linux上のzfs raidzプールを新しいディスクに移行しています。ディスクはそれぞれ1.9Tの異なるサイズなので、ディスクのパーティションを使用しました。最後に追加するディスクは4Tbのディスクであり、1.9Tパーティションを使用して他のディスクとしてパーティション化し、プールに追加しました。GPTパーティションテーブルを使用しています。最後のファイルを4Tディスクの1.9Tパーティションに置き換えようとすると、次のようになります。
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
他のようにパーティションセクターサイズを512に変更するにはどうすればよいですか。失敗した場合、他のプールデバイスを4024に変更できますか。どうやら論理セクターサイズはすべて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
交換しようとしている元の4番目のファイルベースのデバイスを含むディスクのパーティションを再作成しましたが、機能しませんでした。デバイスファイルを再作成したので、現在それを回復しています。
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)
代わりにzfs attach zfs_raid <file> <device>を実行できず、同期後にzfs detach zfs_raid <file>
—
BitsOfNix
5番目のデバイスを接続すると、アレイが不可逆的に拡張されませんか?それとも、スペアを追加するようなものですか?
—
barrymac
スペアを追加したり、新しいディスクを追加したりせず、zpool attach pool old_device new_deviceを実行します。これにより、old_deviceがnew_deviceにミラーリングされます。次に、復元後にold_deviceをミラーから切り離します:docs.oracle.com/cd/E26502_01/html/E29007/ gayrd.html#scrolltoc <-アタッチ/デタッチに関する情報と、追加とアタッチの違い。
—
BitsOfNix
残念ながら、「/ dev / sdd1を/zfs_jbod/zfs_raid/zfs.2に接続できません:ミラーとトップレベルのディスクにしか接続できません」という返答があり、有望に見えました
—
barrymac
raidレイアウトを確認するために、現在のzpool statusのzfs_raid出力を配置できますか?
—
BitsOfNix