Jump to content

Upgraded to V6 but unRAID thought data disk was parity. HELP!


twang

Recommended Posts

Help:

 

I upgraded to V6 and it has identified one of my data disks as the parity disk. The parity disk was unassigned. All was fine with V5. I have reverted back to V5 with a backup of the flash and it still wants to use the data disk as parity. When V6 loaded it started a parity check so I am pretty sure some of the data disk has been overwritten. How can I recover? I assigned the parity disk to the right slot but the system says "wrong". The real parity disk should be intact.

Link to comment

Help:

 

I upgraded to V6 and it has identified one of my data disks as the parity disk. The parity disk was unassigned. All was fine with V5. I have reverted back to V5 with a backup of the flash and it still wants to use the data disk as parity. When V6 loaded it started a parity check so I am pretty sure some of the data disk has been overwritten. How can I recover? I assigned the parity disk to the right slot but the system says "wrong". The real parity disk should be intact.

The only way I can see that happening is if you restored a copy of config/super.dat during the upgrade that didn't actually match your current configuration.

 

The data disk that it thinks is parity. Was it previously used as a parity disk?

Link to comment

Yes it was. Im using an old N36L Microserver and wanted to upgrade to 6 and install a Parity disk. I upgraded the BIOS to enable AHCI on all the ports then restarted on V5, all good. I installed the SSD and restarted on V5 still all OK SSD showed as unassigned.

 

I then read all I could find on upgrading to V6 including that I should copy the contents of my V5 config folder to the config folder of V6 excluding any plugin info or Go file. Did all that and restarted on V6. On startup the parity disk and SSD were unassigned. One of the data disks was shown as parity and the system had started. I am fairly certain that a parity check had commenced so I cancelled that and shut down. I changed the relevant file to prevent auto start of the array and rebooted. Parity still showed as unassigned so I assigned it to the parity slot and the data disk back as disk 3. The system just showed the parity slot as "wrong". In the end I made a new V6 Flash, copied all the config except Super.dat and restarted. No disks were assigned so I assigned them to the correct slots. the system wants to commence a parity check but I have not been game for fear of data loss.

 

Any and all help and advice will be most appreciated.

Link to comment

Yes it was. Im using an old N36L Microserver and wanted to upgrade to 6 and install a Parity disk. I upgraded the BIOS to enable AHCI on all the ports then restarted on V5, all good. I installed the SSD and restarted on V5 still all OK SSD showed as unassigned.

 

I then read all I could find on upgrading to V6 including that I should copy the contents of my V5 config folder to the config folder of V6 excluding any plugin info or Go file. Did all that and restarted on V6. On startup the parity disk and SSD were unassigned. One of the data disks was shown as parity and the system had started. I am fairly certain that a parity check had commenced so I cancelled that and shut down. I changed the relevant file to prevent auto start of the array and rebooted. Parity still showed as unassigned so I assigned it to the parity slot and the data disk back as disk 3. The system just showed the parity slot as "wrong". In the end I made a new V6 Flash, copied all the config except Super.dat and restarted. No disks were assigned so I assigned them to the correct slots. the system wants to commence a parity check but I have not been game for fear of data loss.

 

Any and all help and advice will be most appreciated.

Sounds like what you really need is to rebuild disk3 instead of parity.

 

Try unassigning parity and then start without it and see if disk3 will mount and if you can read its files.

Link to comment

Thanks for the help. I'm Linux useless. If I understand, in the current V6 installation, in the gui, unassign the Parity disk, then start the array. Not mount the disk from the Linux command line in Unraid (I'd need help with that).

Link to comment

Do you have backups of any of this data?

 

... If I understand, in the current V6 installation, in the gui, unassign the Parity disk, then start the array...

Yes, that's right.

Assuming that disk 3 will mount and files are good can I then reassign the parity disk and do a parity sync.
In this case, before doing parity sync, I think I would check the disk filesystem just to make sure nothing was broken.
If the files are not available I suppose Ill have to reformat disk 3 and then rebuild from parity and the other two disks? I assume I can find help with that in the Wiki.
NEVER format a disk in the array if you intend to rebuild it. When you format a disk, you are writing to it to create an empty filesystem, and those writes also update parity, so rebuilding a formatted drive will just give you a formatted drive.

 

Also, I'm not sure how you would get it to rebuild anything except parity from a new config. We may need a little help with that part.

 

Let's just take it one step at a time and see what happens. Start without parity and see if you can read the disk.

Link to comment

Backups = Not really, it should mostly be just movies. There may be some pix that I would not like to lose.

Format = Sorry I meant format outside the array and add it as a replacement for a failed disk.

 

It's 2AM here in Oz and I'm at work, Ill try to mount the disks ex parity when I get home later in the morning.

 

All the drives are ReiserFS. To check the filesystem is it reiserfsck --check from the command prompt?

 

Thanks again

Link to comment

Backups = Not really, it should mostly be just movies. There may be some pix that I would not like to lose.

Format = Sorry I meant format outside the array and add it as a replacement for a failed disk.

 

It's 2AM here in Oz and I'm at work, Ill try to mount the disks ex parity when I get home later in the morning.

 

All the drives are ReiserFS. To check the filesystem is it reiserfsck --check from the command prompt?

 

Thanks again

No need to do anything to a disk you are going to rebuild onto, since every bit of it will be replaced by the rebuild process.

 

The wiki article for Check Disk Filesystems has been recently updated. It is possible to check them from the GUI now. Not sure if anyone has tried it that way without a parity drive so let's see what happens.

Link to comment

OK, I've unassigned the Parity disk and started the array. Disk 3 reports unmountable, no filesystem. Consequently there is no Check option available to try to repair the filesystem. I've got a bad feeling about this and as luck would have it, this disk has most of the data I don't want to lose on it.

Link to comment

Do you have another disk you can use to rebuild disk3? The reason I ask is because it might give us another "backup" if we don't do anything to this disk3 and instead try the rebuild on another disk. Unfortunately, the normal way of doing a rebuild no longer applies since the configuration was wrong and had to be reset.

 

There is a command I have seen on some older posts, "invalidslot", which might apply here. I don't have any experience with this, and search (see search tips in my sig) doesn't turn up anything on v6 for this command. Search the forum and wiki to get some idea what this is about while you wait for further help.

 

You might contact limetech directly by email or PM and direct them to this thread.

Link to comment

You might also try the command line method of checking the filesystem, but since you don't want to involve the parity drive you would have to do it on the sdx1 device instead of the md device. Just checking won't change anything but it might give us some more information.

 

Anybody else got any ideas?

Link to comment

Ive run reiserfsck --check /sdb1 and it is reporting that it cannot locate the superblock. It recommends running --rebuild-sb. I haven't done that until I receive advice.

I hesitate to do that, because from the description of how we got here, rebuilding from parity is likely to produce a better result.

 

If you had another disk we could use for the rebuild, maybe we could stumble through trying to do the invalidslot method without making any changes to this disk.

 

Reading back over the thread, I noticed that your problem was just added onto a thread that someone else had already started and several others had already posted to, and none of that has anything to do with your circumstances. I have split your portion of the thread starting with your first post and gave it a more appropriate title to see if we can get more attention.

 

Have you contacted limetech?

 

Link to comment

yes Ive sent him a PM but included the wrong link (to where the discussion started). He's a clever fella and should be able to find us.

 

I can get another disk if needed, have to be Monday now as it is Sat PM here. In the meantime some miraculous solution may be forthcoming.

 

Is there any way to check if the parity disk is still OK and the parity is valid? The only options I see are to start the array and it will immediately do a parity check which may overwrite data if that hasn't happened already.

Link to comment

If it's any use Ive found an old backup of the flash from May, it will be the last V5 RC I was using. I checked the super.dat and it has the disks in the right place.

 

I still have no idea why super.dat would forget what was the parity disk. I checked the V5 backup I did just before upgrade and there is no mention of the parity disk at all. I know it was all OK as the system had been running stable for months. The only change was to enable a couple more AHCI ports ready for a cache drive.

Link to comment

If it's any use Ive found an old backup of the flash from May, it will be the last V5 RC I was using. I checked the super.dat and it has the disks in the right place.

Restore that super.dat but don't boot the computer until you physically unplug the corrupt disk so it shows up as missing, and see if the array will start and properly emulate the contents of the corrupted disk. If it will, you should be able to plug the disk back in and let it be rebuilt from parity. Don't start the array with that super.dat without confirming that the correct disk is listed as missing, and all the other disks are in the correct slots. The last thing you want to do is corrupt another disk at this point.

 

A read only option for all disks would be really helpful about now, but it doesn't exist yet.

Link to comment

If it's any use Ive found an old backup of the flash from May, it will be the last V5 RC I was using. I checked the super.dat and it has the disks in the right place.

 

I still have no idea why super.dat would forget what was the parity disk. I checked the V5 backup I did just before upgrade and there is no mention of the parity disk at all. I know it was all OK as the system had been running stable for months. The only change was to enable a couple more AHCI ports ready for a cache drive.

I thought perhaps you had made a recent configuration change that didn't get saved due to a corrupt flash, but if that backup from May is correct then I guess not.

 

How did you make that copy of super.dat from May? Did you pull the flash drive and copy it on your PC, or did you copy it over the network with the array started? The reason I ask is because super.dat also records whether the array is started or stopped, and if it says it was started when you boot, then it will assume an unclean shutdown and want to do a parity check. I think we can probably keep that from happening by setting it to not autostart though. I think that is in Disk Settings.

 

And then we can do as jonathanm suggested.

Link to comment
The reason I ask is because super.dat also records whether the array is started or stopped, and if it says it was started when you boot, then it will assume an unclean shutdown and want to do a parity check. I think we can probably keep that from happening by setting it to not autostart though. I think that is in Disk Settings.

 

And then we can do as jonathanm suggested.

The array won't automatically start, and can't do a parity check if a disk is missing, which is why I stressed disconnecting the drive in question.
Link to comment

Thanks Gents, so I understand clearly. I should rebuild a flash from the old V5 rc? with good super.dat and restart, ensuring that autostart is set to no in disk.cfg. Before restarting remove disk 3 (no filesystem) If all looks OK start the array.

 

I don't know if teh backup was taken with the array online or not. I would prefer it not to start a parity check on startup if possible.

Link to comment

The reason I ask is because super.dat also records whether the array is started or stopped, and if it says it was started when you boot, then it will assume an unclean shutdown and want to do a parity check. I think we can probably keep that from happening by setting it to not autostart though. I think that is in Disk Settings.

 

And then we can do as jonathanm suggested.

The array won't automatically start, and can't do a parity check if a disk is missing, which is why I stressed disconnecting the drive in question.

Your right of course.

 

I was writing my post and reading yours and editing mine and didn't quite get it all put together before pushing the button.

Thanks Gents, so I understand clearly. I should rebuild a flash from the old V5 rc? with good super.dat and restart, ensuring that autostart is set to no in disk.cfg. Before restarting remove disk 3 (no filesystem) If all looks OK start the array.

 

I don't know if teh backup was taken with the array online or not. I would prefer it not to start a parity check on startup if possible.

As jonathanm said, if the disk is disconnected it won't start anyway. But now that I think about it some more, that assumes that the super.dat is going to think that disk is missing, which is probably the case, but go ahead and set it to not autostart anyway.

Link to comment

Just reviewed the thread again and I'm unclear about something at the beginning. Maybe I'm just confused but want to make sure we know where we stand.

Yes it was. Im using an old N36L Microserver and wanted to upgrade to 6 and install a Parity disk.

Do you mean you wanted to install a different parity disk? You already had one with valid parity on it at this point didn't you?
I upgraded the BIOS to enable AHCI on all the ports then restarted on V5, all good. I installed the SSD and restarted on V5 still all OK SSD showed as unassigned.

 

I then read all I could find on upgrading to V6 including that I should copy the contents of my V5 config folder to the config folder of V6 excluding any plugin info or Go file. Did all that and restarted on V6. On startup the parity disk and SSD were unassigned.

Is this the new parity disk that was unassigned or the old one? Where in all this was the valid parity disk? Don't really understand why you would start without parity. Were you thinking of going ahead and rebuilding parity on a new disk at this point?
One of the data disks was shown as parity and the system had started. I am fairly certain that a parity check had commenced so I cancelled that and shut down. I changed the relevant file to prevent auto start of the array and rebooted. Parity still showed as unassigned so I assigned it to the parity slot and the data disk back as disk 3.
Are we talking here about the disk with valid parity on it, or a new disk that hadn't had parity built yet?
The system just showed the parity slot as "wrong". In the end I made a new V6 Flash, copied all the config except Super.dat and restarted. No disks were assigned so I assigned them to the correct slots. the system wants to commence a parity check but I have not been game for fear of data loss.

 

Any and all help and advice will be most appreciated.

Link to comment

Sorry, it is getting a bit confusing. I was trying to install a cache drive. Somewhere in all that super.dat was changed to remove info on the parity disk, I don't know how that happened. When I restarted the array auto started and commenced a parity check but disk 3 was now assigned as parity. I stopped it as soon as I could but seems too late to prevent damage.

 

Most recently I replaced super.dat on the V6 flash and restarted with Disk 3 disconnected. The system started with everything in the right place and disk 3 showing as missing. I started the array, no probs. The message said that Disk 3 would be removed however data would still be available (from parity I assume). I checked the data and unfortunately stuff was missing so I can only assume there has been a problem with the parity disk too. Parity disk shows green ball but that could be wrong without doing a parity check, which is impossible without disk 3.

 

Last try now to restart using the old V5 rc with good super.dat, Im not hopeful.

 

I think Im nearly out of options here other than trying to rebuild disk 3 using reiserfsck.

 

Danny

Link to comment

Sorry, it is getting a bit confusing. I was trying to install a cache drive...

Do you mean this sentence

Im using an old N36L Microserver and wanted to upgrade to 6 and install a Parity disk.

should have said you wanted to install a cache drive, not that you wanted to install a parity drive?

 

Maybe I missed something, but it seems like you never actually started the array after that initial time when it had the data disk assigned as parity. If that's true, and parity was valid before that, then it seems like it should still be valid. But if you can't read the emulated disk, then a rebuild would still be a disk you couldn't read. Whether that would be any different than your current disk you can't read who knows?

 

Getting very late here. I'll let you decide if you want to wait for other ideas or go ahead and try to repair the filesystem.

 

Consider a backup plan for your important files. unRAID is only a backup if it is used to store extra copies.

 

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...