August 29, 20232 yr Hi! Need some help with one of my BTRFS arrays becoming unmountable. "Unsupported or no file system". I performed a filesystem check in maintenance mode, with the following result: [1/7] checking root items [2/7] checking extents ERROR: super total bytes 2000407674880 smaller than real device(s) size 4000805560320 ERROR: mounting this fs may fail for newer kernels ERROR: this can be fixed by 'btrfs rescue fix-device-size' [3/7] checking free space tree [4/7] checking fs roots [5/7] checking only csums items (without verifying data) [6/7] checking root refs [7/7] checking quota groups skipped (not enabled on this FS) Opening filesystem to check... Checking filesystem on /dev/sdo1 UUID: 09a80e5f-82a2-4a02-89d6-4ca4016b58f7 found 882812723200 bytes used, error(s) found total csum bytes: 762312024 total tree bytes: 1058029568 total fs tree bytes: 59916288 total extent tree bytes: 50003968 btree space waste bytes: 196698144 file data blocks allocated: 18196154212352 referenced 865362587648 I tried some of the steps from this post: I managed to do a read-only mount and copied the files onto my array. The fix-device-size step didn't work because the device was still mounted? Sorry I'm not familiar with the technical details. But I assume it needs to be unmounted? Diags attached. I upgraded to Unraid 6.12.3 very recently, from 6.10.3. The array worked fine after the upgrade, for at least 2 reboots. Any suggestions on what to do next? thanks in advance. homecloudv2-diagnostics-20230829-1511.zip Edited August 30, 20232 yr by artkingjw
August 29, 20232 yr Community Expert Something strange going since it's showing 2 devices but listing 3, post the output of: btrfs fi show
August 29, 20232 yr Author 39 minutes ago, JorgeB said: Something strange going since it's showing 2 devices but listing 3, post the output of: btrfs fi show Label: none uuid: e2554b33-7ded-4c8c-9329-017396f8f091 Total devices 2 FS bytes used 347.58GiB devid 2 size 931.51GiB used 388.03GiB path /dev/sdm1 devid 3 size 931.51GiB used 388.03GiB path /dev/sdl1 Label: none uuid: 09a80e5f-82a2-4a02-89d6-4ca4016b58f7 Total devices 2 FS bytes used 822.18GiB devid 2 size 931.51GiB used 931.51GiB path /dev/sdk1 devid 3 size 1.82TiB used 2.00GiB path /dev/sdo1 devid 4 size 931.51GiB used 931.51GiB path /dev/sdn1 There should be 2 btrfs raid 1 arrays, each made of 2X 1TB SSDs. The first array 'cache' is fine, the second 'cache_n' is the problem one. Based on this output, it looks like it's trying to look for sdo1, a 2tb ssd, to join the pool? this drive is attached but it's not part of any array, it's not mounted. Edited August 29, 20232 yr by artkingjw
August 29, 20232 yr Community Expert Solution 1 hour ago, artkingjw said: Based on this output, it looks like it's trying to look for sdo1 Yeah, but it also mentions "Total devices 2", so there shouldn't be a third device, try physically disconnecting that device and starting the pool with the two existing ones, if it still doesn't mount post new diags after array start.
August 30, 20232 yr Author Disconnected all drives not used in the arrays btrfs check output: [1/7] checking root items [2/7] checking extents WARNING: minor unaligned/mismatch device size detected: super block total bytes=4000805560320 found total bytes=2000407674880 WARNING: recommended to use 'btrfs rescue fix-device-size' to fix it [3/7] checking free space tree [4/7] checking fs roots [5/7] checking only csums items (without verifying data) [6/7] checking root refs [7/7] checking quota groups skipped (not enabled on this FS) Opening filesystem to check... Checking filesystem on /dev/sdk1 UUID: 09a80e5f-82a2-4a02-89d6-4ca4016b58f7 found 882812723200 bytes used, no error found total csum bytes: 762312024 total tree bytes: 1058029568 total fs tree bytes: 59916288 total extent tree bytes: 50003968 btree space waste bytes: 196698144 file data blocks allocated: 18196154212352 referenced 865362587648 starting the array normally allows all drives to mount. here are the diags. Thanks homecloudv2-diagnostics-20230830-1344.zip Edited August 30, 20232 yr by artkingjw
August 30, 20232 yr Community Expert 4 hours ago, artkingjw said: starting the array normally allows all drives to mount. That's good but btrfs check still shows an issue with the superblock, I would recommend backing up and re-formatting the pool.
August 30, 20232 yr Author 5 hours ago, JorgeB said: That's good but btrfs check still shows an issue with the superblock, I would recommend backing up and re-formatting the pool. Ok, if I were to reformat, I guess I could just as well replace those 1TB drives with 2TB drives if I wish? Will unraid recognize my new array as the 'same' as the old array? After I recopy all of the data back? I suspect not... but then I could just go to Shares and point it to the new array right? Everything should be seamless? Anyway, I tried fix-device-size again, and this time it worked, I no longer get that device size warning when i do a file system check. Attached are diags if relevant. First, I'm doing a scrub, just in case. Next, I'll make a copy of the data on the drive, and reformat/make a new array when able to. homecloudv2-diagnostics-20230830-2258.zip Edited August 30, 20232 yr by artkingjw added small update + diags
August 30, 20232 yr Community Expert 1 hour ago, artkingjw said: Ok, if I were to reformat, I guess I could just as well replace those 1TB drives with 2TB drives if I wish? Yes. 1 hour ago, artkingjw said: Will unraid recognize my new array as the 'same' as the old array? After I recopy all of the data back? I suspect not... but then I could just go to Shares and point it to the new array right? Everything should be seamless? If you mean the pool yes, it would still recognize it the same, assuming same name was used. 1 hour ago, artkingjw said: Anyway, I tried fix-device-size again, and this time it worked, I no longer get that device size warning when i do a file system check. That's good, but there could still be issues if you reconnected the other device, though you can do a full wipe on it to avoid that.
August 30, 20232 yr Author 9 hours ago, JorgeB said: If you mean the pool yes, it would still recognize it the same, assuming same name was used. Yes, I mean, the 'cache_n' btrfs pool. I'll copy off the existing data, replace both 1tb ssd's with 2tb ssd's, format, name as 'cache_n', then move data back over. 9 hours ago, JorgeB said: though you can do a full wipe on it to avoid that by "it", I think you meant the other device (the 2tb ssd)? which should be easy enough Cheers
August 31, 20232 yr Community Expert 9 hours ago, artkingjw said: I think you meant the other device (the 2tb ssd)? Yep, you can use for example blkdiscard -f /dev/sdX
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.