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.

Unclean shutdown, drive in the middle of an Unbalanced move no longer has a filesystem?

Featured Replies

I forgot I was running an unbalanced gather move from other drives to /dev/sdl, after booting it said wrong disk, I did new config and started the array a couple times but it won't mount.

I've tried all the btfrs recovery commands I found but they all give;

image.png

does the array need to be off when attempting these? would it make any difference - in short, have I lost 6tb of data or is there a way I can get the drive mounted in the array again?

(Would Unbalanced have deleted the moved data since the operation hadn't finished yet, it uses rsync right?)

image.png

will it have removed each file after it was successfully transferred, or does Unbalanced wait until the whole operation finishes?

Edit: answered my own question - the source data is all gone :( at least it was just my /anime/ and I've still got all my TV/movies.

image.png

Thanks

Edited by paradox.actual

  • Community Expert
1 hour ago, paradox.actual said:

I've tried all the btfrs recovery commands I found but they all give;

You need to run the command on the partition (/dev/sdl1), not the whole device, or for parity to remain valid, use the md device, in this case /dev/md8p1, but before trying any command, I recommend posting the diags after array start.

  • Community Expert
41 minutes ago, JorgeB said:

before trying any command, I recommend posting the diags after array start.

Start the array in Normal (not Maintenance) mode, then

Attach Diagnostics ZIP to your NEXT post in this thread.

  • Community Expert
26 minutes ago, paradox.actual said:

The disk shows no partitions

Confirmed:

Dec 31 17:41:18 OrbitalHub emhttpd: online: ST16000DM001-3Y4103_ZXA0B6LY (sdl) 512 31251759104 => no partitions

Something else happened. If parity is valid, Unraid should be able to correctly recreate it. Unassign that disk, start the array, post new diags, leave the actual disk untouched for now.

  • Author

Unfortunately I was in the middle of swapping the parity disk so no parity :(

Is it possible to recover the btrfs superblock or should I just wipe it and slap it back in the array?

  • Community Expert

You can try recreating the partition if it was using the Unraid standard starting sector, or the other common one. If it was a more custom layout, it would be harder.

With the array stopped, type sfdisk /dev/sdl then type 64 and hit enter; then hit CTRL + C to abort, and post that output.

  • Author

Alright trying it now.

{C01A77C6-651F-4EFF-90BB-BFBF605FE933}.png

Get this when starting the array;

{92695FA8-8B31-4344-9A5F-D11A77ABC823}.png

Edited by paradox.actual

  • Community Expert

Try again but now with 2048 and post that output, no use in starting the array for now, we are still not creating the partition. Always abort with CTRL +C

  • Author

Oh I've already had it started multiple times since this happened. It fails to mount and nothing interacts with the drive so I just left it until I could be bothered sorting it out.

  • Community Expert

It's OK to start it, I just meant it still won't work until something is actually done. There was no BTRS signature on sector 64, which is the Unraid default. Try 2048, which is a common starting sector form for many other OSes, I assume the disk was not new.

  • Author
34 minutes ago, paradox.actual said:

Oh I've already had it started multiple times since this happened. It fails to mount and nothing interacts with the drive so I just left it until I could be bothered sorting it out.

{BC7FF872-1CCA-4246-9D1F-5C9A441787F8}.png

  • Community Expert

There's also no btrfs signature on that sector; if it's not on sector 64 or 2048 it will be much harder to find, if not impossible. Do you know where that disk came from, i.e., where it was last partitioned?

  • Author

Do you mean before I added it to the array? It was cleared and then added to the array as BTRFS along with the rest of it.

  • Community Expert
12 hours ago, paradox.actual said:

Do you mean before I added it to the array?

Yes.

  • Community Expert

Try this as well; it may help find the correct starting sector:

grep -a -b -o '_BHRfS_M' /dev/sdX | head -n 1

This should be done with the array stopped, replace X with the correct drive letter for disk8, and post any output from that command, if there's a btrfs signature there, it should show something after a few minutes.

  • Community Expert

Instead of grep, which may run OOM if the sector is not quickly found, use this instead:

dd if=/dev/sdX bs=16M status=progress 2>/dev/null | hexdump -C | grep '_BHRfS_M'

  • Author

Thanks trying that now.

{673F65A1-0652-41EC-B982-5C6223E64D1C}.png

Is anything more going to happen or should I close it?

Nothing was happening so closed and started array again.

Edited by paradox.actual

  • Community Expert

That shows the location of the btrfs superblock and its backup, and we can calculate the partition starting sector from that, which, according to those, is 411,648, so it's a starting sector that is very non-standard and not guessable.

To confirm that is the actual file system before recreating the partition, do this:

losetup -f --show -o 210763776 /dev/sdl

Then post output from btrfs fi show

  • Community Expert

btrfs fi show is not detecting the filesystem; make sure /dev/sdl is still the correct disk, it can change with a reboot, if yes, confirm with a mount attempt:

mkdir /x

mount -v /dev/loop3 /x

If that fails, post the output from:

btrfs-select-super -s 1 /dev/loop3

  • Community Expert

Filesystem mounted, now post the output from:

btrfs fi usage -T /x

Also browse /x and see if the contents are what you expect.

  • Author

{DA4D5A68-94D6-49FA-8DB1-848EF8F4388A}.png

{0F2F485A-53ED-480C-9B79-73EDC3FA6A90}.png

looks like everything is there, so how do we go about fix it so the array mounts it properly?

  • Author

Do I move the data from the mounted /x to a drive on the array and wipe it and re-add it?

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.