December 25, 200718 yr Ok, for christmas I got 2 new 500GB drives for my array (yay more storage) Here is my old setup: Parity --- Maxtor 300GB HD Disk 1 --- WD 250GB HD Disk 2 --- WD 250GB HD Disk 1 went bad, but was still working (was showing a red dot)... I never had the chance to replace it, until now with the new drives. At first, I just removed the parity disk thinking it would rebuild from the other two disks, then I would replace Disk 1 after the parity rebuild..... I was wrong. When I booted that up, here is the screenshot I got. obviously, this did not give the results I wanted. I went on to read the FAQ and read about swap-disable mode: You must replace a failed disk with a disk which is as big or bigger than the original and not bigger than the parity disk. If the replacement disk is larger than your parity disk, then the system permits a special configuration change called swap-disable. For swap-disable, you use your existing parity disk to replace the failed disk, and you install your new big disk as the parity disk: Stop the array. Power down the unit. Replace the parity hard disk with a new bigger one. Replace the failed hard disk with you old parity disk. Power up the unit. Start the array. When you start the array, the system will first copy the parity information to the new parity disk, and then reconstruct the contents of the failed disk I did exactly as it said, and I got the following: Now... I am confused... What do I do? I don't want to lose any data here.... ugh
December 25, 200718 yr You misunderstood the situation. The red dot on drive1 meant it was NOT working. Instead, you were using the parity information plus the info on disk2 to allow you to read the data that used to be on disk1. By removing the parity, you then had a bad system (two missing disks, not one). You needed to replace disk1, not the parity drive. Someone else will jump in and give you a step-by-step. Bill
December 25, 200718 yr Author thats the problem though. I was able to write to that disk as well... (disk1)
December 25, 200718 yr no, you were not writing to disk 1. The concept is that one disk can go bad, and the paritylogic will take over, so you can still work on the server. Based on disk2 and Parity, it can calculate what should have been on disk1. The server thinks "what the f..., disk 1 is down. But I can calculate what was on it." When you read data, the server thinks "argh,, the disk1 is dead dude !!!, okay, okay I can calculate what was on it based on what is on disk2 and my Parity drive." when you write data, the server thinks, "oi,, the disk is dead. But you are a nice guy, so i just pretend that disk1 is there and change the parity accordingly." So you have been working on "hot air", and seen the very cool functionality of Unraid and Parity. Im not good enough to walk you through the rescue though :-) /Rene
December 25, 200718 yr I'm *almost* (but not completely) positive that 'Parity-Swap' is referring to the 'swap-disable' procedure you quoted. I would suggest just un-assigning the parity drive and Disk 1, then re-assigning them in reverse, according to the swap-disable instructions, and no hardware changes are necessary. You should then have the Seagate 500 assigned to the Parity drive slot, the Maxtor 300 as Disk 1, and the same WD250 as Disk 2. Then why not show us another image of the Web page, and we can confirm the correct next step. What ever you do, do NOT select any option that contains 'all drives will appear as New'. I don't think you have any data loss yet, and with care, you won't. Also, don't add the other 500GB, until every thing is working fine. And when things are working correctly, you can try diagnostic tools on the 'bad' WD250, and see if it is recoverable. It may be fine after reformatting.
December 25, 200718 yr Guy, you're disk1 was dead. You need to put everything back like it was. Copy everything from disk1 to somewhere else (network, or put the new drive in the computer and mount/format reiser/copy to it). Replace your parity with the other new drive and disk1 with either a blank or the one you formatted reiser and copied everything to. Then reset the array config and let it do a parity check and you'll be ok. If you remove the current parity drive from your array you'll lose everything on your disk1
December 25, 200718 yr Well I think I know what happened and I think you lost data (sorry). Your second attempt was CORRECT drkwtsn. The problem is that your FIRST (faulty) attempt ("At first, I just removed the parity disk thinking it would rebuild from the other two disks, then I would replace Disk 1 after the parity rebuild") messed up parity disk! Then even though you replaced everything and did that "swap-disable" mode, it couldn't work (as it didn't) because parity was messed up. Your best bet now is to: 1) put everything back and HOPE drive 1 will work for a while (or that parity didn't get really messed up) 2) allow for parity to become VALID (if it will) 3) if #2 FINISHES ONLY THEN you can proceed to "swap-disable" where you remove disk 1, put your old parity to disk 1, put one of the new 500 in place of the old parity and again LET the system finish the job AND ONLY THEN you could add your second new 500 (and maybe after that finishes too, run some low-level checks on disk 1 and see if it really is for the trashcan or you could re-add it to the array)... --- other case scenario? take your problematic disk 1 out, pass it through some disk-doctor software that is aware of that filesystem (I am not sure if there is any such program), salvage whatever you can and then also copy whatever is in disk 2 (luckily one of your two new 500 is enough for holding both your old disks' data) and then start from scratch, keeping your 500 with the salvaged+copied data out of the array, make a new array WITH NO parity, just using the other three disks (working 250 + 300 + other 500), copy everything from the "first aid" 500 to the array and then add this disk to the array as parity... good luck
December 25, 200718 yr The problem is that your FIRST (faulty) attempt ("At first, I just removed the parity disk thinking it would rebuild from the other two disks, then I would replace Disk 1 after the parity rebuild") messed up parity disk! Then even though you replaced everything and did that "swap-disable" mode, it couldn't work (as it didn't) because parity was messed up. May I respectfully point out that there is no evidence that the array actually started, after any of the above changes, so there are probably no changes to the existing drives. And the fact that there is a green parity ball later on is a hopeful sign that the parity drive is still valid. An array will not start up with 2 drives missing or bad, unless you force it, and there is no evidence of that above. He missed a step in the swap-disable procedure, about assigning the new large drive to the parity drive, and the old parity drive to the failed drive's slot. That is why I suggested he re-assign in reverse the first 2 drives, and then he should be back on track to performing the swap-disable. There are some good suggestions in the posts above, hopefully not too confusing. I agree that, if there is critically important data on Disk 1, you may want to try either goofygrin's or NLS's procedure for copying those critical files off of the 'virtual' Disk 1.
December 25, 200718 yr Author You are correct, I never started the array, so therefor nothing should have been changed. after switching i am currently putting everything back the way it was edit:: have it back the way it was.... Now I just need to figure out where to backup 250 gigs worth of stuff argh
December 25, 200718 yr It's my fault for not being perfectly clear, but I was especially interested in the available buttons and the wording of their options, below the drive table. What shows above looks correct, but would you mind attaching 1 more picture, just like the first ones you included above?
December 25, 200718 yr Author It's my fault for not being perfectly clear, but I was especially interested in the available buttons and the wording of their options, below the drive table. What shows above looks correct, but would you mind attaching 1 more picture, just like the first ones you included above? my fault give me a few
December 25, 200718 yr Maybe you are lucky then - what do you mean where to backup 250 gigs of stuff? On one of your new 500GB. Then backup the other 250 of the "ok" disk on that same 500. Then you can rebuild a clean array. Do as I told above, i.e. make a new array (after the total backup), WITHOUT parity with your working 250 and the empty 500. Then copy your "backup" 500 to the array of 250+500 and after that install the "backup" disk to the array as parity (there is no need for parity initially). Now *I* have a question to the other users. How do I know when a rebuild is finished? (either parity or FROM parity)
December 26, 200718 yr Maybe you are lucky then - what do you mean where to backup 250 gigs of stuff? On one of your new 500GB. Then backup the other 250 of the "ok" disk on that same 500. Then you can rebuild a clean array. Do as I told above, i.e. make a new array (after the total backup), WITHOUT parity with your working 250 and the empty 500. Then copy your "backup" 500 to the array of 250+500 and after that install the "backup" disk to the array as parity (there is no need for parity initially). It is not that simple. He can't attach a new 500GB directly to the unRAID system, as an unpartitioned and unformatted drive. Someone with Linux experience could prep the drive while attached to the unRAID system, but it would be easier for most of us to temporarily install it in a Windows box, or in an external enclosure, and use Windows Disk Management to partition and format it, then copy the files from Disk 1 to it. Or, he may be able to free up some space elsewhere, temporarily, to hold Disk 1 files, in case anything goes wrong with the swap-disable. There's no need to do anything with Disk 2, the second WD250. The swap-disable will preserve the parity, migrate it to the new disk, then rebuild Disk 1 on the Maxtor 300. Once it is completed, and he is satisfied with the integrity of the array and all of his data, then he can add the second 500GB, then attempt to add the bad WD250. Now *I* have a question to the other users. How do I know when a rebuild is finished? (either parity or FROM parity) From your question and from some of your suggestions above, it is hard to believe that you have built and worked with an unRAID system yet. I think that when you have built your first system, a lot will be clearer, such as the array status page. There are examples of the web page above, showing the current status of the system, and during and after any kind of rebuild, there are appropriate status messages on that web page, with a percentage of completion.
December 26, 200718 yr here is the full screenshot This must be getting frustrating for you, and maybe going to get even more frustrating?!? That wasn't the right image! I can tell you have already moved some of the drives back, because this picture, call it image #4, is back to being just like image #1. What I needed was the rest of image #3, but you might as well finish what you are doing first (I suspect goofygrin's idea?). When you are ready to proceed with the swap-disable, can you send another picture when the drive list is back to looking like image #3? By the way, I'll probably be out of town tomorrow and the rest of the week, but there are many other knowledgeable users who can help.
December 26, 200718 yr I'm afraid this is worrisome, no need for the panic button yet, but might want to at least locate it. I was expecting to see an option appropriate to the swap-disable procedure, but it is clearly not there, and I don't know why. Perhaps because of all of the drive changes, it no longer recognizes that the parity is valid on the parity drive? The message about too many wrong disks is technically correct, but this is the special case that it should recognize as a swap-disable situation, and it did not recognize it. I'm afraid at this point, you should go up the support ladder, to someone like Joe or Tom. I believe Tom has responded to others who have directly emailed him at [email protected]. Include a link to this thread. I hunted for others who had used the swap-disable procedure, and found none. That's good and bad, I suppose, because either no one has ever needed it before (unlikely), or it has always worked correctly. I have a few questions, that may help others help you. Do you happen to have backups of your flash drive? If so, that may help to restore the /config/super.dat to an earlier state. That may help in initiating a swap-disable, or better. Just an idea for someone, after trying all other ideas and still having to give up on Disk 1, I would experiment with patching a 7 into byte 0x8c of super.dat, assuming the Maxtor is assigned back to the parity drive, and the bad WD250 back to Disk 1. That may fake the parity drive as good, but I have not tested that. Are the files on Disk 1 the only copy? That is, are these backup files of originals stored elsewhere? Or is Disk 1 backed up somewhere else? It would sure help if we don't have to worry about this data, if we knew it could be recovered from elsewhere. Do you have, or can you borrow or purchase a disk enclosure? You may need it, for the bad WD250 and/or for one of the new 500GB drives to copy to. The WD250 can probably be read from a Windows station using the RFStool or comparable. Here's one link to get you started: http://lime-technology.com/forum/index.php?topic=925.msg6243#msg6243. If you need to use Western Digital's diagnostics, then you may have to install the drive directly, in the computer. The Seagate 500GB can be temporarily installed in an enclosure, and formatted using Windows XP's Disk Management, for temporary disk space. I can't think of anything else, and I have to go now. I'm sorry I was not able to get you up and running.
December 26, 200718 yr Author currently, i have everything back to its original state. I am in the process of copying all data off of disk 1 and 2 onto a 500 GB HD (1 of the 2) I installed into my desktop. After that finishes, I am going to copy all the data off of disk 2 also onto that disk (remember, they were 250gb HDs and not full so I can fit it all on 1 500) once that finishes, I am basically going to blow away the array and start from scratch. I will have the array with the following setup parity - 500gb seagate disk 1 - 300gb maxtor disk 2 - 250gb WD (the good one) once I have that setup, I will copy the data from my desktop to the two disks listed above, then throw it into the array. Does this sound like a good procedure? (and one that will work??)
December 26, 200718 yr One suggestion - something I have done but most have not. Unfortunately, I am 900 miles from my server so this won't help you now. Once you get it all back up and running, find the documentation for what to do for each scenario, print it out, put the printout in a binder (like the thin plastic ones) and tape it to the side of your server. That way, when similar situations occur in the future, you will have the "OK, red light = bad drive so this is how to swap out a data drive" instructions. Ideally, the software would make this all more clear, but that has not been the priority to-date. We are still in the "give us functionality, not usability" stage of this product. There are other products (such as the Drobo) where this is the priority. Bill
December 26, 200718 yr ok thanks for the reply Rob (although I think my suggestions are actually not way off - for a user that haven't used the thing yet - in fact I think he actually follows one of my suggestions, the least "technical" one) Merry Xmas everybody!
December 27, 200718 yr currently, i have everything back to its original state. I am in the process of copying all data off of disk 1 and 2 onto a 500 GB HD (1 of the 2) I installed into my desktop. After that finishes, I am going to copy all the data off of disk 2 also onto that disk (remember, they were 250gb HDs and not full so I can fit it all on 1 500) once that finishes, I am basically going to blow away the array and start from scratch. I will have the array with the following setup parity - 500gb seagate disk 1 - 300gb maxtor disk 2 - 250gb WD (the good one) once I have that setup, I will copy the data from my desktop to the two disks listed above, then throw it into the array. Does this sound like a good procedure? (and one that will work??) Yes that will work. Is your array state like this? parity - [green indicator] disk1 - [red indicator] disk2 - [green indicator]
December 27, 200718 yr currently, i have everything back to its original state. I am in the process of copying all data off of disk 1 and 2 onto a 500 GB HD (1 of the 2) I installed into my desktop. After that finishes, I am going to copy all the data off of disk 2 also onto that disk (remember, they were 250gb HDs and not full so I can fit it all on 1 500) once that finishes, I am basically going to blow away the array and start from scratch. I will have the array with the following setup parity - 500gb seagate disk 1 - 300gb maxtor disk 2 - 250gb WD (the good one) once I have that setup, I will copy the data from my desktop to the two disks listed above, then throw it into the array. Does this sound like a good procedure? (and one that will work??) Yes that will work. Is your array state like this? parity - [green indicator] disk1 - [red indicator] disk2 - [green indicator] Tom, This thread points out an oustanding issue with the unRaid ability to recover from a failed data disk if the potential replacement disk is bigger than the parity drive. He had a 300 gig parity drive and two 250 gig data drives. One of the data drives failed. He was running in a degraded state with a failed data drive and ordered two new 500 Gig drives. When he went to replace the failed disk, it complained it is bigger than the parity drive and will not start the array. This is where the user gets confused and attempts to swap the drives. This of course will not work as there are then multiple invalid drives. It appears as if we are forced to purchase a replacement data disk that is greater than or equal to the failed drive, but smaller or equal to the parity drive. How about an option to allow us to install the new 500 Gig drive, partition it with a partition sized as big as the PARITY drive (in this case partitioned as a 300 Gig drive) , and create a reiserfs on it and continue with the recovery. Then, when the parity drive is upgraded to a larger size at some future time, grow any data drives file systems to the new parity drive size. Thinking about it, it might be that a warning that the drive is bigger than parity and the excess will not be used might be enough. Recovery from parity/remaining data drives will re-write the partition table as well as the data... for all intents, it will be a 300 Gig drive at that point. Yes, the additional space on the replacement drive will be wasted until the parity drive can be upgraded, but it is better than running the array in a degraded state for an extended time period. Joe L.
December 27, 200718 yr great point Joe. Basically, rebuild the drive but don't "expand the array" which is what it will want to do because of the increase in the drive size.
December 27, 200718 yr Author currently, i have everything back to its original state. I am in the process of copying all data off of disk 1 and 2 onto a 500 GB HD (1 of the 2) I installed into my desktop. After that finishes, I am going to copy all the data off of disk 2 also onto that disk (remember, they were 250gb HDs and not full so I can fit it all on 1 500) once that finishes, I am basically going to blow away the array and start from scratch. I will have the array with the following setup parity - 500gb seagate disk 1 - 300gb maxtor disk 2 - 250gb WD (the good one) once I have that setup, I will copy the data from my desktop to the two disks listed above, then throw it into the array. Does this sound like a good procedure? (and one that will work??) Yes that will work. Is your array state like this? parity - [green indicator] disk1 - [red indicator] disk2 - [green indicator] Tom, This thread points out an oustanding issue with the unRaid ability to recover from a failed data disk if the potential replacement disk is bigger than the parity drive. He had a 300 gig parity drive and two 250 gig data drives. One of the data drives failed. He was running in a degraded state with a failed data drive and ordered two new 500 Gig drives. When he went to replace the failed disk, it complained it is bigger than the parity drive and will not start the array. This is where the user gets confused and attempts to swap the drives. This of course will not work as there are then multiple invalid drives. It appears as if we are forced to purchase a replacement data disk that is greater than or equal to the failed drive, but smaller or equal to the parity drive. How about an option to allow us to install the new 500 Gig drive, partition it with a partition sized as big as the PARITY drive (in this case partitioned as a 300 Gig drive) , and create a reiserfs on it and continue with the recovery. Then, when the parity drive is upgraded to a larger size at some future time, grow any data drives file systems to the new parity drive size. Thinking about it, it might be that a warning that the drive is bigger than parity and the excess will not be used might be enough. Recovery from parity/remaining data drives will re-write the partition table as well as the data... for all intents, it will be a 300 Gig drive at that point. Yes, the additional space on the replacement drive will be wasted until the parity drive can be upgraded, but it is better than running the array in a degraded state for an extended time period. Joe L. this is a good idea, and one I thought of myself. I am currently setting up the array and formatting the disks all the data ia currently off and onto one of my desktops in one of the 500gb HD's hopefully by tomorrow night after work I can finish things up and finally have more storage thanks for all the help everyone
Archived
This topic is now archived and is closed to further replies.