November 4, 201015 yr I need help. I used an empty slot to preclear and format a new disk. I then removed the disk and used it to replace another one, thinking the array would just rebuild the missing data on the new disk. Well, that did not happen and that sequence must be a no, no. I re-established the old configuration and started over by just removing the new disk. Now, the control center indicates one disk not installed, and a valid configuration. However, there is no indication of a valid parity. (The command center did indiacte the array would be unprotected when I brought it back on line.) .There is also no indication that I can even do a parity check. What I need help with is to restore a valid parity, and to remove the "Not Installed" disk indication. Thanks
November 4, 201015 yr You are running a degraded array (one disk missing). Therefore, you don't have any parity protection at the moment. You never mentioned that you have a failed disk, so I am assuming that you are replacing a healthy disk with a larger one. If this is not the case, please say so (and don't do the following). I used an empty slot to preclear and format a new disk. I then removed the disk and used it to replace another one, thinking the array would just rebuild the missing data on the new disk. Well, that did not happen and that sequence must be a no, no. I re-established the old configuration and started over by just removing the new disk. The only thing you did wrong was to assign the drive to the array and format it. By doing so, you made unRAID think that you were adding a new disk, not replacing one. In the future, just preclear the drive and then use it to replace the old one. The rebuild process will take care of all the formatting for you. Now, the control center indicates one disk not installed, and a valid configuration. Not installed disks don't hurt anything, they are just empty slots in the unRAID array. However, there is no indication of a valid parity. To be expected. You expanded the disk by one disk, then removed that disk. (The command center did indiacte the array would be unprotected when I brought it back on line.) .There is also no indication that I can even do a parity check. Well, with no valid parity it is to be expected that you can't do a parity check. What I need help with is to restore a valid parity, and to remove the "Not Installed" disk indication. Again, the 'not installed' disk doesn't hurt anything. If you want to get rid of it, just stop the array, go to the devices page, and move your largest numbered disk (disk10 or whatever) into the 'not installed' slot. Since you expanded the array by adding the new disk instead of replacing it, you will have to run 'initconfig' via telnet or at the system console (or press the 'restore' button in older versions of unRAID). This will make unRAID throw away your parity data and initialize a new configuration. You can then start the array and a parity sync should begin. Once that finishes, run a parity check. Once both complete you are back to normal. At this point you can use the new disk to replace the old one. Once that finishes, run another parity check. If you don't trust your disks, you could also look into using the 'Trust my parity' procedure. It is far more complicated, but you won't lose parity protection in the process.
November 5, 201015 yr Author Rajahal , I think I have might misread you response. I replaced the good disk with a larger one (the one I had precleared and formated on an unused port. I ran the "intconfig" from telnet and then did a parity sync. I am now in the process of doing a parity check, but the new drive thus far show no data. My thoughts are that the "intconfig" command removed my old parity data and created a new one based on the empty new drive. If this is the case then I don't think the old data from the replaced drive will appear. I still have the old drive with its data still intact. Now, my questions are: 1. If the current parity check is not going to rebuild the new drive, can I stop it and put the old drive back in? 2. After no. 1 above would I just do another parity check and kepp all my orginal data?
November 6, 201015 yr Yes, you did misread what I wrote. I said to do initconfig first, then a parity sync, then a parity check. After all of that is done, then you can replace the old disk with the new one, and unRAID will rebuild your data from the old onto the new. Instead, it sounds like you tried to do this all at once. You ran initconfig after removing the old drive from the array. Definitely a no-no. Basically, you make unRAID forget about the data on the old disk, so that it no longer had the ability to rebuild onto the new one. However, don't start crying yet. You say you still have the old drive with the data intact - good. If you no longer had that (or if that drive failed), then you would be S.O.L. Luckily, you should be fine. 1) Yes, stop the current parity check (it is actually a parity sync). It isn't helping anything. 2) Here's what to do now (this time, read very carefully as the order of the instructions is important...I'll number the steps to try to make it eaiser): 1. Cancel the parity sync. If it has already finished by the time you get to this, then run initconfig again. 2. Stop the array. 3. Power down. 4. Physically remove the new disk from the server (or at least unplug the power and data cables). 5. Physically install the old disk back into the server 6. Power on the server. 7. Assign the old disk into it's old slot on the devices page (the 'not installed' slot)...the array must be stopped for this. 8. Start the array. A parity sync should begin. Let it finish (this will take a long time). 9. Once the parity sync finishes, press the 'check' button to start a parity check (this will also take a long time). 9a. If the parity check returns any errors, post a syslog here. 10. If the parity check has no errors, stop the array. 11. Power down. 12. Physically remove the old disk. 13. Physically install the new disk (or re-plug the power and data cables if it is already installed). 14. Power on the server. 15. unRAID should tell you that you are 'upgrading disk'. If it says anything else, stop and seek help here. 16. Press 'start' to start the data rebuild (this will take a long time) 17. Once the data rebuild finishes, press 'check' to start a parity check (again, long time) 17a. If the parity check returns errors, post a syslog here. 18. If the parity check finishes with no errors, then you are done. The above process will take you at least 4 days (assuming you run the parity syncs/checks/rebuilds overnight). I can think of one faster way to do this, but the above method gets your parity protection back as soon as possible, which I think is important. Plus, I think you should be punished for not following my original instructions
November 6, 201015 yr Author Small problem! Original disk is smaller than the new disk so I cannot start the array. Should I do another intconfig with the orig. disk now in place? I really do appreciate the time and efffort you are putting into my problem.
November 6, 201015 yr Huh? You shouldn't have parity protection right now, so unRAID shouldn't care about the size of your disks. Did you not cancel the parity sync in time? Anyway, it doesn't really matter. Run another initconfig. The parity you currently have isn't worth keeping anyway since it is missing all the data from your old disk. Note that I listed this as step 1 above...are you reading carefully this time?
November 6, 201015 yr Author I will do another initconfig. As far as the "original disk is smaller than the new smaller disk" confusion, I followed step 1, but the parity check ran about 25 minutes of an eight hour routine before I canceled it. Could it be the parity sync I just established for the larger disk was was trying to force me to put it back into the array in order to maintain continuity between the parity sync and the parity check of the larger disk?
November 6, 201015 yr I will do another initconfig. Another initconfig will fix your problem and i will explain why later. As far as the "original disk is smaller than the new smaller disk" confusion, I followed step 1, but the parity check ran about 25 minutes of an eight hour routine before I canceled it. Could it be the parity sync I just established for the larger disk was was trying to force me to put it back into the array in order to maintain continuity between the parity sync and the parity check of the larger disk? There is NO confusion here and there is nothing to do with parity sync/recalculation, you have this "original disk is smaller than the new smaller disk" problem is because you did this operation at earlier time. "I replaced the good disk with a larger one (the one I had precleared and formated on an unused port. I ran the "intconfig" from telnet and then did a parity sync. " Whenever you run "initconfig", unRAID will wipe out existing configuration and use whatever in current assignment under "Device" page to create a new configuration. That is why every time you run initconfig unRAID will need to do parity recalculation. This newly created configuration has recorded this larger disk as the one part of whole RAID and totally forget there was a smaller one before. So when you try to put original smaller disk back to same slot, unRAID will detect this discrepancy and refuse to continue because to continue will cause data lost. Once you put original smaller disk back to its slot assignment, although unRAID refuse to continue, but by doing yet another "initconfig" now you instruct unRAID to forget about what it has and start from scratch to create a new configuration. unRAID will comply accordingly. This is why another initconfig will fix your problem because once again unRAID forget about there was a bigger disk before and only know this smaller one that you just put in.
November 6, 201015 yr When you removed your old disk and added the new disk, you broke the parity calculation. If you had put the old disk back in place, parity would have been maintained. When you ran initconfig with the new drive attached, you started calculating parity with the empty drive. You told unRAID that the new disk was the one you wanted in the array, so it started a new parity calculation. When you tried to put the old disk back in place, it was an invalid choice. unRAID doesn't allow you to "downgrade" a drive to a smaller drive, only upgrade to a larger one. 1. Put the old drive in place and run another initconfig. 2. Run a parity check. 3. Pre-clear the new drive again. It will have been formatted, and therefore won't be seen as a cleared disk, so if you just add it to the array, it will be cleared. 4. Put the new drive in place of the old drive. When you boot up, it will not start the array. 5. Go to devices, and select the new drive in the old drive's place. This is where you went wrong the first time. Make SURE you select the same slot. 6. Start the array by clicking "I am sure..." From here, it should rebuild the data from the old drive onto the new one. In future, only steps 3 - 6 should be necessary, and you'll only be without parity during the time you're rebuilding.
November 7, 201015 yr Author Hey guys, thanks for all the expert help and valuable information. My mistake was trying to do more than one operation at a time. Again, thanks for slowing me down. My new disk is installed and all is well. Another positive from this eperience is the new command I learned (initconfig). I am on my way to being dangerous.
Archived
This topic is now archived and is closed to further replies.