Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

Featured Replies

9 hours ago, JorgeB said:

You can do a new config and resync parity without that disk.

 

P.S. isn't Unbalanced used to move the data from on disk to another, not copy?

Thanks. My situation is Disk11 is currently in the array as an external USB disk, and I want to remove that from the array first. Since I have no more internal slots available, I want to then take the Disk3 out and put in the drive from the external USB into that slot. Seems like I have to do multiple new configs here?

 

p.s: Unbalanced plugin does both move and copy it seems. It gives you which option to move forward with. I picked copy thinking it'd be faster and safer in my situation.

Edited by kolla

  • Replies 1.1k
  • Views 209k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I'll start by giving some background on the current wiki method, and then touch on a few things you may not have thought about.  I had noticed already several users using unBALANCE, and had been think

  • Frank1940
    Frank1940

    I am in the process of converting the format on my Media Server.  (The Spec's are below.)  I normally use the reconstruct write (aka, turbo write) method of writing to the array but I decided that rea

  • @bombz - You will need to do a new config to remove the old drives and add the new one. Don't delete the data from the 2 500G drives, and you'll have a backup just in case you have any issues with the

Posted Images

  • Community Expert
43 minutes ago, kolla said:

Seems like I have to do multiple new configs here?

A single new config should do it, keep in mind that some USB bridges are not transparent, meaning the disk may not work the same outside it, but pretty rare now.

3 hours ago, JorgeB said:

A single new config should do it, keep in mind that some USB bridges are not transparent, meaning the disk may not work the same outside it, but pretty rare now.

It seems to be working. I removed the new 14T external disk from the USB enclosure and used it to replace the old 4T drive inside the array. When the array started again, verified all attached disks are recognized by the syatem & bios, started a new config, assigned the old Disk3 slot to the newly installed disk (containing the same data as the removed disk), assigned parity to the old parity disk. Array re-started and parity sync now in progress for the next 1.5 days ..

  • 5 months later...

I've got to get this done. I've put it off because I really need a "REISERFS to XFS for Dummies" to get me through this. I almost never touch my unraid server. It just works and that's a testimony to those who developed it.

Anyway, I saw a summary of this process in this thread and one thing is throwing me. We copy data from the REISERFS drive to the new XFS Drive, but we do it while the array is still enabled. I'm confused how Unraid doesn't see those files as duplicates and the Dockers sort of attempt to try and use both. I guess I should just stick to the instructions and just do it, but I thought I would ask.

image.png

  • Community Expert

If there happen to be two copies of the same file on different drives then Unraid will use the first one it finds ignoring the other for the time being.

The process above repeats the rsync in case any new files were created/updated on the source drive while the main rsync was running. When the source drive is removed (or reformatted) the other copy (which is now the only cop)y becomes the one Unraid uses.

  • 2 months later...
  • Community Expert
On 6/19/2025 at 9:13 AM, JP said:

Anyway, I saw a summary of this process in this thread and one thing is throwing me. We copy data from the REISERFS drive to the new XFS Drive, but we do it while the array is still enabled. I'm confused how Unraid doesn't see those files as duplicates and the Dockers sort of attempt to try and use both. I guess I should just stick to the instructions and just do it, but I thought I would ask.

From the PDF in this post:

https://forums.unraid.net/topic/35815-re-format-xfs-on-replacement-drive-convert-from-rfs-to-xfs-discussion-only/page/40/#findComment-1454446

There is this paragraph in the instructions:

image.png

This needs to be added into Simple instructions. By excluding the disk from being used in the Shares, you eliminate the duplicate file problem.

  • 2 months later...

Hi All,

I'm trying to get through an upgrade from 6.12.13 to 7.2.2. I have 8 disks totaling 50+ TB, as I move through the converting disks to XFS process MOVER left approximately 250MB of data with no errors in the log. Is this Ok?

I've since selected XFS filetype and pressed Apply, but did not format.

Thanks!

  • Community Expert
1 hour ago, foraye said:

Is this Ok?

That's likely just some fs overhead, but you can browse the disk's content from the GUI to confirm it's empty

  • 4 weeks later...

Hello everyone, I have 50 terabytes on reiserfs, planning to use the mirror method to move all the movies and tv shows across to xfs.
I literally only have emby running in the docker. No backups automatically running, no new files created.

Can I continue to run the docker during the mirror process otherwise wife and kids will be on my back for days (if not weeks).

  • Community Expert
3 hours ago, gnollo said:

Hello everyone, I have 50 terabytes on reiserfs, planning to use the mirror method to move all the movies and tv shows across to xfs.
I literally only have emby running in the docker. No backups automatically running, no new files created.

Can I continue to run the docker during the mirror process otherwise wife and kids will be on my back for days (if not weeks).

Read this:

image.png**

If you are running rsync with these switches, it should be able to resume the copy if you have to interrupt it to allow family viewing .

image.png**

Personally, I would stop Docker unless you are sure that Emby will not touch any files on the disk being transferred. Stop the transfer and start Docker to allow for family time.

If you do interrupt the transfer, rsync will do the initial scan once again to determine what now has to be transferred. (previously copied unchanged files will not be transferred again!)

** These screenshots came from a 'mark-up' PDF of the original Mirroring instructions that I made when someone was going to include this procedure in the revised WIKI. It never quite made it onto that WIKI.

Edited by Frank1940

Gotcha, it will just have to be turned off then. Appreciate the quick reply

  • Community Expert
35 minutes ago, gnollo said:

Gotcha, it will just have to be turned off then. Appreciate the quick reply

One thing to realize is that after you finishing copying one disk, you have a window of opportunity to permit family viewing of 'their' movies and shows. Then start on the next disk. (I also believe you can speed up copying by going to SETTINGS >>> Disk Settings and change this parameter as shown:

image.png

Looks like I will be upgrade the parity drive with a larger disk, and then can I use the old parity as the first drive to be used for the process?

Do I have to preclear it?

  • Community Expert
3 minutes ago, gnollo said:

and then can I use the old parity as the first drive to be used for the process?

Yes.

3 minutes ago, gnollo said:

Do I have to preclear it?

Before you do anything to upgrade your system, get the smart report on this drive. Look at the parameters that Unraid uses to evaluate drives. To see this list. MAIN >>>> Array Devices >>> Parity >>> Parity Settings and look for this:

image.png

Attribute = 199 is not really important and it indicates a cable failure, not a disk problem, 99.99% of the time. Any value other than zero for the others, you should investigate further. First step would be a run a preclear cycle on it and see what the results are. (Any additional failure, I would be cautious about using the drive.)

Otherwise, I would not run a preclear cycle on it.

Edited by Frank1940

On 1/14/2026 at 5:30 PM, Frank1940 said:

Yes.

Before you do anything to upgrade your system, get the smart report on this drive. Look at the parameters that Unraid uses to evaluate drives. To see this list. MAIN >>>> Array Devices >>> Parity >>> Parity Settings and look for this:

image.png

Attribute = 199 is not really important and it indicates a cable failure, not a disk problem, 99.99% of the time. Any value other than zero for the others, you should investigate further. First step would be a run a preclear cycle on it and see what the results are. (Any additional failure, I would be cautious about using the drive.)

Otherwise, I would not run a preclear cycle on it.

my parity settings are

Attribute=5 Reallocated sectors count

Attribute = 187 Reported uncorrectable errors

Attribute = 188 Command time-out

Attribute = 197 Current pending sector count

Attribute = 198 Uncorrectable sector count

Attribute = 199 UDMA CRC error rate

Exactly as your screenshot, how did you know ;D

Edited by gnollo

Smart short self-test completed without errors

Downloaded smart report

smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.6.68-Unraid] (local build)

Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===

Model Family: Western Digital Ultrastar (He10/12)

Device Model: WDC WD100EMAZ-00WJTA0

Serial Number: 1EGG5LHZ

LU WWN Device Id: 5 000cca 27ec67234

Firmware Version: 83.H0A83

User Capacity: 10,000,831,348,736 bytes [10.0 TB]

Sector Sizes: 512 bytes logical, 4096 bytes physical

Rotation Rate: 5400 rpm

Form Factor: 3.5 inches

Device is: In smartctl database 7.3/5625

ATA Version is: ACS-2, ATA8-ACS T13/1699-D revision 4

SATA Version is: SATA 3.2, 6.0 Gb/s (current: 3.0 Gb/s)

Local Time is: Tue Jan 20 09:11:18 2026 +01

SMART support is: Available - device has SMART capability.

SMART support is: Enabled

AAM feature is: Unavailable

APM level is: 164 (intermediate level without standby)

Rd look-ahead is: Enabled

Write cache is: Enabled

DSN feature is: Unavailable

ATA Security is: Disabled, NOT FROZEN [SEC1]

Wt Cache Reorder: Unknown

=== START OF READ SMART DATA SECTION ===

SMART Status not supported: Incomplete response, ATA output registers missing

SMART overall-health self-assessment test result: PASSED

Warning: This result is based on an Attribute check.

General SMART Values:

Offline data collection status: (0x82) Offline data collection activity

was completed without error.

Auto Offline Data Collection: Enabled.

Self-test execution status: ( 0) The previous self-test routine completed

without error or no self-test has ever

been run.

Total time to complete Offline

data collection: ( 93) seconds.

Offline data collection

capabilities: (0x5b) SMART execute Offline immediate.

Auto Offline data collection on/off support.

Suspend Offline collection upon new

command.

Offline surface scan supported.

Self-test supported.

No Conveyance Self-test supported.

Selective Self-test supported.

SMART capabilities: (0x0003) Saves SMART data before entering

power-saving mode.

Supports SMART auto save timer.

Error logging capability: (0x01) Error logging supported.

General Purpose Logging supported.

Short self-test routine

recommended polling time: ( 2) minutes.

Extended self-test routine

recommended polling time: (1229) minutes.

SCT capabilities: (0x003d) SCT Status supported.

SCT Error Recovery Control supported.

SCT Feature Control supported.

SCT Data Table supported.

SMART Attributes Data Structure revision number: 16

Vendor Specific SMART Attributes with Thresholds:

ID# ATTRIBUTE_NAME FLAGS VALUE WORST THRESH FAIL RAW_VALUE

1 Raw_Read_Error_Rate PO-R-- 100 100 016 - 0

2 Throughput_Performance --S--- 129 129 054 - 112

3 Spin_Up_Time POS--- 169 169 024 - 408 (Average 368)

4 Start_Stop_Count -O--C- 097 097 000 - 12412

5 Reallocated_Sector_Ct PO--CK 100 100 005 - 0

7 Seek_Error_Rate -O-R-- 100 100 067 - 0

8 Seek_Time_Performance --S--- 128 128 020 - 18

9 Power_On_Hours -O--C- 093 093 000 - 50452

10 Spin_Retry_Count -O--C- 100 100 060 - 0

12 Power_Cycle_Count -O--CK 100 100 000 - 151

22 Helium_Level PO---K 100 100 025 - 100

192 Power-Off_Retract_Count -O--CK 043 043 000 - 68484

193 Load_Cycle_Count -O--C- 043 043 000 - 68484

194 Temperature_Celsius -O---- 185 185 000 - 35 (Min/Max 15/47)

196 Reallocated_Event_Count -O--CK 100 100 000 - 0

197 Current_Pending_Sector -O---K 100 100 000 - 0

198 Offline_Uncorrectable ---R-- 100 100 000 - 0

199 UDMA_CRC_Error_Count -O-R-- 200 200 000 - 0

||||||_ K auto-keep

|||||__ C event count

||||___ R error rate

|||____ S speed/performance

||_____ O updated online

|______ P prefailure warning

General Purpose Log Directory Version 1

SMART Log Directory Version 1 [multi-sector log support]

Address Access R/W Size Description

0x00 GPL,SL R/O 1 Log Directory

0x01 SL R/O 1 Summary SMART error log

0x02 SL R/O 1 Comprehensive SMART error log

0x03 GPL R/O 1 Ext. Comprehensive SMART error log

0x04 GPL R/O 256 Device Statistics log

0x04 SL R/O 255 Device Statistics log

0x06 SL R/O 1 SMART self-test log

0x07 GPL R/O 1 Extended self-test log

0x08 GPL R/O 2 Power Conditions log

0x09 SL R/W 1 Selective self-test log

0x0c GPL R/O 5501 Pending Defects log

0x10 GPL R/O 1 NCQ Command Error log

0x11 GPL R/O 1 SATA Phy Event Counters log

0x12 GPL R/O 1 SATA NCQ Non-Data log

0x13 GPL R/O 1 SATA NCQ Send and Receive log

0x15 GPL R/W 1 Rebuild Assist log

0x21 GPL R/O 1 Write stream error log

0x22 GPL R/O 1 Read stream error log

0x24 GPL R/O 256 Current Device Internal Status Data log

0x25 GPL R/O 256 Saved Device Internal Status Data log

0x30 GPL,SL R/O 9 IDENTIFY DEVICE data log

0x80-0x9f GPL,SL R/W 16 Host vendor specific log

0xe0 GPL,SL R/W 1 SCT Command/Status

0xe1 GPL,SL R/W 1 SCT Data Transfer

SMART Extended Comprehensive Error Log Version: 1 (1 sectors)

No Errors Logged

SMART Extended Self-test Log Version: 1 (1 sectors)

Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error

# 1 Short offline Completed without error 00% 50452 -

SMART Selective self-test log data structure revision number 1

SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS

1 0 0 Not_testing

2 0 0 Not_testing

3 0 0 Not_testing

4 0 0 Not_testing

5 0 0 Not_testing

Selective self-test flags (0x0):

After scanning selected spans, do NOT read-scan remainder of disk.

If Selective self-test is pending on power-up, resume after 0 minute delay.

SCT Status Version: 3

SCT Version (vendor specific): 256 (0x0100)

Device State: Active (0)

Current Temperature: 35 Celsius

Power Cycle Min/Max Temperature: 23/39 Celsius

Lifetime Min/Max Temperature: 15/47 Celsius

Under/Over Temperature Limit Count: 0/0

SCT Temperature History Version: 2

Temperature Sampling Period: 1 minute

Temperature Logging Interval: 1 minute

Min/Max recommended Temperature: 0/65 Celsius

Min/Max Temperature Limit: -40/70 Celsius

Temperature History Size (Index): 128 (72)

Index Estimated Time Temperature Celsius

73 2026-01-20 07:04 34 ***************

... ..( 45 skipped). .. ***************

119 2026-01-20 07:50 34 ***************

120 2026-01-20 07:51 35 ****************

... ..( 5 skipped). .. ****************

126 2026-01-20 07:57 35 ****************

127 2026-01-20 07:58 34 ***************

... ..( 22 skipped). .. ***************

22 2026-01-20 08:21 34 ***************

23 2026-01-20 08:22 33 **************

24 2026-01-20 08:23 33 **************

25 2026-01-20 08:24 34 ***************

... ..( 12 skipped). .. ***************

38 2026-01-20 08:37 34 ***************

39 2026-01-20 08:38 33 **************

... ..( 7 skipped). .. **************

47 2026-01-20 08:46 33 **************

48 2026-01-20 08:47 34 ***************

... ..( 9 skipped). .. ***************

58 2026-01-20 08:57 34 ***************

59 2026-01-20 08:58 35 ****************

... ..( 11 skipped). .. ****************

71 2026-01-20 09:10 35 ****************

72 2026-01-20 09:11 34 ***************

SMART WRITE LOG does not return COUNT and LBA_LOW register

SCT (Get) Error Recovery Control command failed

Device Statistics (GP Log 0x04)

Page Offset Size Value Flags Description

0x01 ===== = = === General Statistics (rev 1)

0x01 0x008 4 151 --- Lifetime Power-On Resets

0x01 0x010 4 50452 --- Power-on Hours

0x01 0x018 6 134132243325 --- Logical Sectors Written

0x01 0x020 6 403924017 --- Number of Write Commands

0x01 0x028 6 334968294324 --- Logical Sectors Read

0x01 0x030 6 511442836 --- Number of Read Commands

0x01 0x038 6 181629452050 --- Date and Time TimeStamp

0x03 ===== = = === Rotating Media Statistics (rev 1)

0x03 0x008 4 38188 --- Spindle Motor Power-on Hours

0x03 0x010 4 38188 --- Head Flying Hours

0x03 0x018 4 68484 --- Head Load Events

0x03 0x020 4 0 --- Number of Reallocated Logical Sectors

0x03 0x028 4 0 --- Read Recovery Attempts

0x03 0x030 4 0 --- Number of Mechanical Start Failures

0x04 ===== = = === General Errors Statistics (rev 1)

0x04 0x008 4 0 --- Number of Reported Uncorrectable Errors

0x04 0x010 4 0 --- Resets Between Cmd Acceptance and Completion

0x05 ===== = = === Temperature Statistics (rev 1)

0x05 0x008 1 35 --- Current Temperature

0x05 0x010 1 34 N-- Average Short Term Temperature

0x05 0x018 1 32 N-- Average Long Term Temperature

0x05 0x020 1 47 --- Highest Temperature

0x05 0x028 1 15 --- Lowest Temperature

0x05 0x030 1 46 N-- Highest Average Short Term Temperature

0x05 0x038 1 16 N-- Lowest Average Short Term Temperature

0x05 0x040 1 39 N-- Highest Average Long Term Temperature

0x05 0x048 1 25 N-- Lowest Average Long Term Temperature

0x05 0x050 4 0 --- Time in Over-Temperature

0x05 0x058 1 65 --- Specified Maximum Operating Temperature

0x05 0x060 4 0 --- Time in Under-Temperature

0x05 0x068 1 0 --- Specified Minimum Operating Temperature

0x06 ===== = = === Transport Statistics (rev 1)

0x06 0x008 4 721 --- Number of Hardware Resets

0x06 0x010 4 225 --- Number of ASR Events

0x06 0x018 4 0 --- Number of Interface CRC Errors

0xff ===== = = === Vendor Specific Statistics (rev 1)

|||_ C monitored condition met

||__ D supports DSN

|___ N normalized value

Pending Defects log (GP Log 0x0c)

No Defects Logged

SATA Phy Event Counters (GP Log 0x11)

ID Size Value Description

0x0001 2 0 Command failed due to ICRC error

0x0002 2 0 R_ERR response for data FIS

0x0003 2 0 R_ERR response for device-to-host data FIS

0x0004 2 0 R_ERR response for host-to-device data FIS

0x0005 2 0 R_ERR response for non-data FIS

0x0006 2 0 R_ERR response for device-to-host non-data FIS

0x0007 2 0 R_ERR response for host-to-device non-data FIS

0x0008 2 0 Device-to-host non-data FIS retries

0x0009 2 3 Transition from drive PhyRdy to drive PhyNRdy

0x000a 2 2 Device-to-host register FISes sent due to a COMRESET

0x000b 2 0 CRC errors within host-to-device FIS

0x000d 2 0 Non-CRC errors within host-to-device FIS

  • Community Expert
3 hours ago, gnollo said:

Exactly as your screenshot, how did you know ;D

Because for hard drives, the attributes are virtually standard for all manufacturers and models. Over the years, it has been found that those few attributes are the ones which indicate drives that are more likely to fail. They might not be failing now but one should keep a closer eye on them.

From what I see, I would say that drive is fine to reuse. I would not bother preclearing it. Depending on how you insert the drive, Unraid might have to preclear it but it will not take any longer that way then if you do it prior. (If your drive had had some non zero critical attributes, I– personally –would have precleared it to verify that it was stable and not likely to be a problem in the near future.)

Thank you for the quick response. A replacement 14TB parity drive is going through Parity-synch for a couple of day.

When that has completed, the first steps will be, from my understanding and readign the pdf

1) I stop the array

2) I add the old parity drive back in, my array has 11 drives so I will add it as drive 12 and start the array (I guess I don't have to empty it as it will happen when I format it to XFS?)

3) I have enabled User Shares so I go to Settings -> Global Share Settings and add my ex parity disk to ' Excluded disk(s) '

4) I click on the disk name of the old parity drive, now disk 12 and change the format to XFS then click

Apply and Done

5) I start the array; disk12 should show as `Unmountable', and a Format button will be present

6) I click the check box for formatting, then click the Format button; when done, array should show an additional drive, almost completely empty, formatted with XFS (how do I make sure it does not format it as RFS again?)

Now the drive should be ready for the rsync mirror procedure

  • Community Expert
Just now, gnollo said:

2) I add the old parity drive back in, my array has 11 drives so I will add it as drive 12 and start the array (I guess I don't have to empty it as it will happen when I format it to XFS?)

This type of 'adding' a drive will trigger a preclear clear operation. If I remember correctly, the proeclear clear operation will happen and then you will format the drive as XFS. (Formatting only sets up the File structure, it does not 'clear' the reminder of the drive by writing zeros to all of the unused bytes. That's why formatting takes about one minute while clearing takes about two hours per TB.)

10 minutes ago, gnollo said:

(how do I make sure it does not format it as RFS again?)

Here:

image.png

EDIT: And check this first before committing to the format:

image.png

Edited by Frank1940

New parity build process complete.

Added back the old parity in a different slot.

Started the unraid server

Stopped the array after the boot completed

Added the old parity as disk 12.

Start will bring the array on-line and start Disk-Clear of new data disk(s).

Started the array

Disk12 is blue as Disk-Clear in progress.

Total size: 10 TB

Elapsed time: 29 minutes

Current position: 364 GB (3.6 %)

Estimated speed: 211.9 MB/sec

Estimated finish: 12 hours, 38 minutes

Mmmh seems to be taking a lot longer than a couple of hours

Also I cannot do the step of excluding the drive from the global share settings as Array must be Stopped to change, and I can't stop it until the disk-clearing procecss has completed I guess

  • Community Expert
13 minutes ago, gnollo said:

Mmmh seems to be taking a lot longer than a couple of hours

I would expect it to take something like 1.0-1.5 hours per TB so the time you quote seems reasonable for a 10TB drive.

  • Community Expert

You should only have to clear this drive that you just added. Patience is the key when you have to do a file format conversion.

When this is completed, you might want to go to Settings >>> Disk Settings and change this parameter to 'reconstruct-write'

image.png

It can significantly increase the write speed.

  • Community Expert
1 minute ago, Frank1940 said:

You should only have to clear this drive that you just added. Patience is the key when you have to do a file format conversion.

When this is completed, you might want to go to Settings >>> Disk Settings and change this parameter to 'reconstruct-write'

image.png

It can significantly increase the write speed.

Should not affect Clear speed as only the drive being Cleared is written to during to the Clear operation.

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...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.