Re: Format XFS on replacement drive / Convert from RFS to XFS (discussion only)


Recommended Posts

Noob question here....

 

So I'm planning to change my virtualized Unraid 5.0.5 and ZFS to barebone Unraid 6.2.0 with docker. All my disks are 2TB and 3TB drives but am planning to change my 3TB parity to 2x 4TB parity.

Do I need to convert my drives also?

No.  The only requirement is that the parity drives must be as large or larger than the largest data drive.  In fact I do not think that the parity drives even need to be the same size as long as they meet that requirement.

 

You are going to have to rebuild parity to switch to the larger size parity disk, but that is the only consideration.    If you want the array to remain protected at all times then you can switch one to 4 TB (or add it as a second parity if you do not already have dual parity) and then do the other one afterwards.  Takes longer but is safer.

Link to comment

Noob question here....

 

So I'm planning to change my virtualized Unraid 5.0.5 and ZFS to barebone Unraid 6.2.0 with docker. All my disks are 2TB and 3TB drives but am planning to change my 3TB parity to 2x 4TB parity.

Do I need to convert my drives also?

No.  The only requirement is that the parity drives must be as large or larger than the largest data drive.  In fact I do not think that the parity drives even need to be the same size as long as they meet that requirement.

 

You are going to have to rebuild parity to switch to the larger size parity disk, but that is the only consideration.    If you want the array to remain protected at all times then you can switch one to 4 TB (or add it as a second parity if you do not already have dual parity) and then do the other one afterwards.  Takes longer but is safer.

 

Does it matter where I put the parity disk? I have one on my flashed IBM M1015 but would be using the second parity disk on my 2/3 controller. Could also move parity to mobo sata controller!

Link to comment

Does it matter where I put the parity disk? I have one on my flashed IBM M1015 but would be using the second parity disk on my 2/3 controller. Could also move parity to mobo sata controller!

Parity drives can be installed any where.  The only applicable factor I can think of is performance, you'd want your parity drives on your fastest SATA ports.  Motherboard ports are generally as fast or faster than the rest, but I don't think any of your ports are significantly different.

Link to comment

bjp999 gives us direction on how to convert from RFS to XFS. Which I am grateful for. However, in his directions he leaves out what is likely ridiculously simple and obvious stuff for some, but has me completely stumped. There are 22 pages on this thread and I think it would be really helpful if bjp999 edited his post on page one to include what I would like to call "STEP 0".

 

bjp999 says: So how do you move from RFS to XFS? First, you need to buy (or free up) a disk as large as your largest data drive. If it is a new disk, you have to preclear it and add it to your array like any other new disk.

 

My problem is "freeing up" a disk as large as my largest data drive. I could buy another drive (which frankly is the easiest option), but my array is already larger than I would prefer. So, given that I'm wanting to free up a disk...

 

This is what I would like to call STEP 0.

 

I've looked through multiple threads to find the best way to do this and I have come up with ... a headache. I saw people talking about rsync stuff. I've tried to read up on rsync and what it does/can do/should do. I don't really get it. And maybe I don't need to get it. Maybe I just need a command to get done what I need to get done and not worry about the whys and hows of it.

I'm assuming there are only a few different scenarios here in freeing up a drive (but maybe I'm wrong), this would mean needing only a few different standard lines of command depending on the situation.

 

Scenario 1. Freeing up a drive by transferring all data from source RFS drive to a destination XFS drive that has enough space to take all the data from one drive. This would be one command needed.

 

Scenario 2. Freeing up a drive by transferring all data from source RFS drive to multiple destination XFS drives (because no one drive has enough space to take all of the data). This would be another command needed.

 

Scenarios 3 and 4. the same thing except transferring from RFS to RFS to free up a drive.

 

Last of all, thanks for anyone willing to tackle this. It would be extremely helpful to me. Thanks.

 

 

Link to comment
  • 2 months later...

So to make sure I understand the concept that I'm going to do:

 

  • I have an empty 1TB drive (with xfs) and a 2TB drive (reiserfs) with a small amount of data on it. Therefore copying data from 2TB drive to the 1TB drive.
  • Format the 2TB drive just used. That gives me a 2TB drive with xfs. That drive will then be able to be the receiver for the data stored on the other 2TB drive I have
  • Then format the other 2TB drive. Job done...?

 

Is that fundamentally what's going on here? This is obviously an action that takes some planning - Google brought me here after I noticed that the two 1TB drives I added were in a different format (my upgrade path was 4.7 -> 6.1.9). Screenshot attached for ease of reference.

Screenshot_2016-06-19_14_20_46.png.8393f493875d0dca49ac9577ee0bd7e8.png

Link to comment

So to make sure I understand the concept that I'm going to do:

 

  • I have an empty 1TB drive (with xfs) and a 2TB drive (reiserfs) with a small amount of data on it. Therefore copying data from 2TB drive to the 1TB drive.
  • Format the 2TB drive just used. That gives me a 2TB drive with xfs. That drive will then be able to be the receiver for the data stored on the other 2TB drive I have
  • Then format the other 2TB drive. Job done...?

basically yes, although you left out the step where you change the format of the 2TB drive (with the array stopped) from ReiserFS to XFS.    The key point is that you cannot change the format of a drive and keep the data on it intact and thus a lot of copying is involved.

 

Is that fundamentally what's going on here? This is obviously an action that takes some planning - Google brought me here after I noticed that the two 1TB drives I added were in a different format (my upgrade path was 4.7 -> 6.1.9). Screenshot attached for ease of reference.

Link to comment

So to make sure I understand the concept that I'm going to do:

 

  • I have an empty 1TB drive (with xfs) and a 2TB drive (reiserfs) with a small amount of data on it. Therefore copying data from 2TB drive to the 1TB drive.
  • Format the 2TB drive just used. That gives me a 2TB drive with xfs. That drive will then be able to be the receiver for the data stored on the other 2TB drive I have
  • Then format the other 2TB drive. Job done...?

basically yes, although you left out the step where you change the format of the 2TB drive (with the array stopped) from ReiserFS to XFS.    The key point is that you cannot change the format of a drive and keep the data on it intact and thus a lot of copying is involved.

 

Is that fundamentally what's going on here? This is obviously an action that takes some planning - Google brought me here after I noticed that the two 1TB drives I added were in a different format (my upgrade path was 4.7 -> 6.1.9). Screenshot attached for ease of reference.

 

Thank you! It may be that my example is clear(?) enough to use to explain this - even if I did gloss over the fact that changing the format of the drive = nuking all the data on it. But I appreciate you confirming my thinking.

Link to comment
  • 3 weeks later...

Is there a definitive RFS to XFS guide? Is it safe to follow http://lime-technology.com/forum/index.php?topic=37490.msg346739#msg346739 ?

 

That guide does still work.  However, I've made some improvements, and documented a complete step by step procedure here.  I think once you've read and understood the details of how both procedures work, you can invent your own customized procedure.

 

Thank you! Will read through when I have time and post questions if I have any

Link to comment
  • 4 weeks later...

Just be CERTAIN that when you copy the data from one drive to another you do NOT do a share - share copy ... if you encounter the infamous "user share copy bug" you'll lose ALL of the data involved in that copy.

 

Ok so I just started to migrate my 10 disks from RFS to XFS and just finished moving data off my smallest disk (as an initial test of the process to make it go quicker) to another disk in my array using the unBALANCE plugin.  I have plenty of free space  (almost 8TB free) spread across the disks in my array (my largest disk is 4TB) so using this plugin seemed like a very logical way to move my data around between disks without having to do any of the adding/swapping of disks etc. mentioned in the list of instructions posted earlier in this thread.

 

Now I'm reading this thread and seeing this warning - pretty much all of the data on my array is in user shares.  However after copying the data from one disk to another using the unBALANCE plugin I then verified that I could access the data I relocated via the user shares from Windows explorer and everything looked good!  So I went ahead and formatted the now empty disk to XFS.  All looks good as far as I can tell!  I was going to repeat this simple process for the next disk but now I am concerned given this warning!  My understanding is that the unBALANCE plugin copies data from USER shares to DISK shares... so once the copy procedure is complete, the data that was moved should also show up in the user shares without issue.  Am I correct?

 

Is there a PROBLEM with using the unBALANCE command to move data between disks like this?  I thought that was the whole point of the plugin?

 

Can someone please confirm that I can continue to migrate my disks to XFS by simply moving the data using the unBALANCE plugin as described and reformatting the disks (as they are emptied) to XFS and that NO OTHER STEPS ARE REQUIRED?

 

Thank you!

Link to comment

Thanks for the quick reply.  That's good to hear.

 

The only potential issue I can see with using the plugin is that it doesn't honor split level given the way that it moves the data to disk shares... but that is minor issue I think, especially since once everything is migrated the data could be adjusted between the drives even further if needed.

Link to comment

Pre-clear of the last drive I can fit in my case will be finishing up shortly. (A free drive slated to be my first XFS drive to start the conversion process).

 

I had purposely left the disk 8 slot free for this last drive, where I thought I wanted it to reside but it turns out that's no longer the case.

 

Can I stop the array, unassign drives 4-7, add the preclear drive to slot 4 then proceed to add disks 4-7 to slots 5-8? After which I presume I'd have to run the new config tool and do another parity check? 

Link to comment

Can I stop the array, unassign drives 4-7, add the preclear drive to slot 4 then proceed to add disks 4-7 to slots 5-8? After which I presume I'd have to run the new config tool and do another parity check?

 

Yes, if you're running v6.1 there's no need to do a new config, though never tried adding a new disk at the same time, so sort new order first, then add the precleared disk.

 

There's also no problem if you're running v6.2 with single parity but you do have to do a new config and trust parity, if you have dual parity you can't change order without invalidating parity2.

 

Parity check after is not required but always a good idea.

Link to comment

Excellent. Yes, I'm running 6.1.9 with single parity. Interesting that I won't need to do a new config. That's neat. I'll be giving that a whirl this evening then. After which, I'll add the precleared disk as you suggest.

 

I did just finish a parity check Monday, but it won't hurt I guess to run again prior to starting "the big move".

Link to comment

Preclear finished. Sweet.

 

However I'm running into an issue. Since disk 8 never had a drive assigned, it's considering it an expansion. However I'm just trying to shift disks 4-7 to slots 5-8. It won't let me restart the array, saying "Invalid expansion."

 

Well, since v6.1 allows trading slots I assumed it would also allow to change the slots used, guess I was wrong, in that case you'll have to do a new config.

 

Don't forget to check "Parity is already valid"

Link to comment

 

Well, since v6.1 allows trading slots I assumed it would also allow to change the slots used, guess I was wrong, in that case you'll have to do a new config.

 

Don't forget to check "Parity is already valid"

 

I decided after reading RobJ's post that I would worry about drive slot assignment after the drives were converted to XFS. The one thing he doesn't cover is what happens to the parity drive. Does it just stay RFS forever? Does it matter?

Link to comment

 

Well, since v6.1 allows trading slots I assumed it would also allow to change the slots used, guess I was wrong, in that case you'll have to do a new config.

 

Don't forget to check "Parity is already valid"

 

I decided after reading RobJ's post that I would worry about drive slot assignment after the drives were converted to XFS. The one thing he doesn't cover is what happens to the parity drive. Does it just stay RFS forever? Does it matter?

The parity drive doesn't have a file system at all, so nothing you need to do with it.
Link to comment

Guys, I'm lost here.

 

I have the following 4TB drives in my array running the latest official version of unRaid (6.1.9)

Disk1 - RFS - empty

Disk2 - RFS - full

Disk3 - RFS - full

Disk4 - RFS - full

Disk5 - RFS - full

 

I thought I could just stop the array and change the filesystem on the empty drive. That didn't work. How can I change the filesystem to XFS one drive at a time without rebuilding parity everytime?

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.