"Convert" RAIDZ1 to RAIDZ2?

Status
Not open for further replies.

Z300M

Guru
Joined
Sep 9, 2011
Messages
882
OK, I know I can't really "convert" a RAIDZ1 system to RAIDZ2. What I am thinking of doing is:

backup the current 4-drive RAIDZ1 zpool, then create a new 6-drive RAIDZ2 zpool and copy everything back to the new zpool.

I have a total of nine equal-size drives and some external USB3 drives, so my plan is to create a temporary 3-drive stripe to hold one copy, and in addition copy everything to external drives (distributed over two or three of them, as no one of them is big enough to hold everything), then, after creating the new RAIDZ2 pool, copy everything back to the new zpool -- initially from the three-disk stripe, since this should be faster than copying from the USB drives, but the copy on the external drives should still be available just in case.

Is there anything horribly wrong with this plan?

And what would be the best tool for making the copies? Probably not cp, I am guessing.
 

warri

Guru
Joined
Jun 6, 2011
Messages
1,193
Sounds ok as long as you have 2 redundant backups of your data like you proposed.
Regarding the tool: Have a look into rsync.
 

Dusan

Guru
Joined
Jan 29, 2013
Messages
1,165
Rsync is great for syncing deltas, but it will definitely be slower than cp for a completely new copy. I'd suggest doing a ZFS snapshot and then ZFS replication to the new pool (zfs send / receive). This way you will also correctly transfer the ZFS attributes & ACLs.
 

Z300M

Guru
Joined
Sep 9, 2011
Messages
882
Rsync is great for syncing deltas, but it will definitely be slower than cp for a completely new copy. I'd suggest doing a ZFS snapshot and then ZFS replication to the new pool (zfs send / receive). This way you will also correctly transfer the ZFS attributes & ACLs.
There are automatic snapshots of the individual datasets, and I have now copied the "master" snapshot -- using the -R parameter to include all the "sub-snapshots" -- to the temporary 3-disk-stripe volume. Now I would like to place another copy on two of the external drives, neither of which has sufficient capacity to hold the snapshot on its own. I am assuming that if I choose the individual "sub-snapshots" carefully, I can place some on one drive and the rest on the other, then "zfs receive" them if necessary; is that OK ? And would it matter in which order I receive them?

Now, these external USB-connected drives are still formatted NTFS (as purchased). Is it OK to leave them that way, or should I wipe them and format them ZFS? Or should I even set them up as a stripe, so that the resulting volume will be big enough to hold the "master" snapshot?
 

Dusan

Guru
Joined
Jan 29, 2013
Messages
1,165
I assume that the sub-snapshots are for nested datasets. There is no problem replicating the "sub-datasets" to other drives. However, the drive needs to be formatted as ZFS -- replication (ZFS send/receive) only works on ZFS filesystems.
You can use cp to copy to NTFS partitions, but you will definitely lose some metadata (UNIX permissions, ACLs, ZFS attributes, ...)
 
Status
Not open for further replies.
Top