flambot Posted January 13, 2011 Share Posted January 13, 2011 Greetings, I recently removed a drive completely from my array. I probably should've re-assigned then then, but I didn't want to add more complexity to the process. So now I have a webinterface page with a big "Disk6 - Not Installed" in the middle of it. I've been reading up on shuffling drives - the wiki offering this http://lime-technology.com/wiki/index.php?title=UnRAID_Manual#Shuffle_two_or_more_data_disks_between_slots and this http://lime-technology.com/wiki/index.php?title=FAQ#What_is_the_safe_way_to_rearrange_disk_numbers.2C_assignments.2C_slots.2C_etc.3F I want to drop drives 7-15 down one slot so they become 6-14. It all sounds simple enough...until I try to do it. Trying it on one disk first, I unassigned disk 7 and assigned it to disk 6's slot. When I go back to the main page, disk7 is now red (and says the disk is missing) and disk6 has a blue ball beside it. The "Start" button is greyed out Both the above links seem to indicate this as a simple procedure. and that re-assigning disks is as simple as changing them in the "Devices" page with the array stopped, then re-starting the array. Why doesn't this work as it says? I found this http://lime-technology.com/forum/index.php?topic=364.msg2539#msg2539, which says it should. I also found this thread - http://lime-technology.com/forum/index.php?topic=2368.0 (quite old now) and also this one - http://lime-technology.com/forum/index.php?topic=7884.0 (more recent) Is this one of those times you have to use the scary "Trust My Array" procedure? or am I doing something wrong? Link to comment
kizer Posted January 13, 2011 Share Posted January 13, 2011 Uh, I'd tackle this one, but honestly I'd rather let somebody like Joe L or limetech since your pulling assigned disks from one to another. Be careful you don't want to erase your drives doing something creative. Here's a post talking about what your trying to do and continue to read down from there. http://lime-technology.com/forum/index.php?topic=9824.msg94133#msg94133 Doing something like what I posted will more or less rebuild your parity, but at the same time you would not be protected in the event you have a bad drive until parity is rebuilt. Link to comment
Rajahal Posted January 13, 2011 Share Posted January 13, 2011 Just to be clear - you have removed disk6 and don't intend to replace it, correct? You don't care about the data that was on disk6? Secondly, do you run parity checks often? When was the last one? If it was recent and you trust all your disks not to fail in the next few days, then you could use the 'initconfig' command to invalidate your current parity configuration (but not lose any data on the data drives). You could then rearrange the disks however you like, and finally start a new parity sync. The only way to do what you are asking without invalidating parity is to use the 'Trust My Array' a.k.a. 'Trust My Parity' procedure. Read through it carefully and you will see that it really isn't as scary as it seems at first. Even so, be aware that both of these options do involve some risk. The safest solution is to just replace disk6. Link to comment
flambot Posted January 13, 2011 Author Share Posted January 13, 2011 Thx guys for the comments. Disk6 has been removed. I used the initconfig command and re-sync'd parity - so it is a done deal. I did a parity check 2 days ago (to verify the re-sync) - and it completed without any sync errors. I guess I'm somewhat confused about the wiki saying this is a simple procedure - yet it doesn't work as it reads?? Yes, it would've been easier to just replace disk6, but I wanted a spare slot and didn't want to run an empty drive clocking up hours /power counts etc when I don't need the space. I guess the story now is to decide if it's better to inticonfig for a new config, or do the "Trust My Array" procedure - especially if these are my only choices? Link to comment
fitbrit Posted January 13, 2011 Share Posted January 13, 2011 Someone correct me if I'm wrong, but unraid is reacting exactly as it should be. You've removed one disk (7) and put it into slot 6. So, disk 7 should be red-balled as it IS missing, and the slot 6 disk (former number 7) appears to be new to unraid. Your problem is that you've been a little too cautious. Stay on the devices page and reassign all the disks disk 7 to disk 6, disk 8 to disk 7 etc. Once your done, you can run the initconfig procedure. I'm not an expert user, but I've done this before. Still, you may want to wait until someone else confirms the above. Link to comment
SSD Posted January 13, 2011 Share Posted January 13, 2011 You must use the Trust My Parity procedure to "fill the gap" as you are describing. The process is tried and true and not scary when done on a healthy array. The time it gets a little scary is when a disk is kicked out of the array and you are using the process to reinsert the disk into the array. But for me it is even scarier to rebuild a disk on top of itself. Because at that point you have no protection from a disk failure. It is a good idea IMO to become familiar with this procedure as it is one of the more useful advanced techniques for managing your array. Link to comment
flambot Posted January 13, 2011 Author Share Posted January 13, 2011 Appreciate the pointers. I have probably mis-read the comments in the wiki. I think my confusion stems from the fact that I've already removed disk6. That is where I've come unstuck. If it wasn't removed, then unRAID would probably do what I was expecting. I have done the "Trust My Array" procedure once in the past - but so long ago it's now but a fleeting memory. The scary bit is doing things that aren't that common - especially if something happens, then I don't have the knowledge to unstick it without help . As I've recently carried out a parity check without issue - and haven't written to the server since, I'll do the "Trust My Array" procedure. Again, thx for the help. Link to comment
flambot Posted January 14, 2011 Author Share Posted January 14, 2011 Hi Guys, Been reading up on this procedure to re-assign my drives and I'm a little confused as to when to change their assignments. Should I change them after stopping the array?? OR - after using the "initconfig" command and all drives are blue (or does this command re-register the current drive positions)?? I've created a check list of operations... 1 - Boot server. 2 - Stop the array (it'll be started from boot). 3 - Change drive assignments 4 - Open telnet window and type "initconfig" 5 - Refresh browser. All drives should show blue. 6 - Type "mdcmd set invalidslot 99" Check output of command. 7 - Start Array (parity check in progress) Thx Link to comment
fitbrit Posted January 14, 2011 Share Posted January 14, 2011 That sounds right to me. Hi Guys, Been reading up on this procedure to re-assign my drives and I'm a little confused as to when to change their assignments. Should I change them after stopping the array?? OR - after using the "initconfig" command and all drives are blue (or does this command re-register the current drive positions)?? I've created a check list of operations... 1 - Boot server. 2 - Stop the array (it'll be started from boot). 3 - Change drive assignments 4 - Open telnet window and type "initconfig" 5 - Refresh browser. All drives should show blue. 6 - Type "mdcmd set invalidslot 99" Check output of command. 7 - Start Array (parity check in progress) Thx Link to comment
lionelhutz Posted January 14, 2011 Share Posted January 14, 2011 You've got it. Just to note, I believe you could just initconfig and start to begin to rebuild parity again and then just stop the parity rebuild, or let it complete. However, the trust my array is safer and just one more command to type. I just did it a little bit ago when I made disk2 into disk4 and disk4 into disk2 (different sizes and disk4 would get filled before disk2 so figured just swap them before too much data gets there). On another similar note, I personally feel it's better to do a check only parity check, instead of a check and correct parity check. You can use unMENU to do it or to schedule it monthly. That way, the parity doesn't get hosed if a data drive starts acting up during the check. unRAID does not just allow you to assign disks to different slots as you have found out. You may read something that indicates this may be the case but it's simply not true. Peter Link to comment
flambot Posted January 14, 2011 Author Share Posted January 14, 2011 That sounds right to me. Thx for the reply. "Sounds right" isn't quite good enough for me . I want an "Is right" before I venture into this task. Link to comment
fitbrit Posted January 14, 2011 Share Posted January 14, 2011 That sounds right to me. Thx for the reply. "Sounds right" isn't quite good enough for me . I want an "Is right" before I venture into this task. I'm going to give myself another year of unraid before I can confidently make such statements! Link to comment
flambot Posted January 14, 2011 Author Share Posted January 14, 2011 You've got it. Just to note, I believe you could just initconfig and start to begin to rebuild parity again and then just stop the parity rebuild, or let it complete. However, the trust my array is safer and just one more command to type. I just did it a little bit ago when I made disk2 into disk4 and disk4 into disk2 (different sizes and disk4 would get filled before disk2 so figured just swap them before too much data gets there). On another similar note, I personally feel it's better to do a check only parity check, instead of a check and correct parity check. You can use unMENU to do it or to schedule it monthly. That way, the parity doesn't get hosed if a data drive starts acting up during the check. unRAID does not just allow you to assign disks to different slots as you have found out. You may read something that indicates this may be the case but it's simply not true. Peter Sounds good. I'll give this a go. Next time (if there is a next time)...I'll do it all at the same time. Link to comment
flambot Posted January 14, 2011 Author Share Posted January 14, 2011 Just did this. Typed "initconfig" Yes... All drives now blue Typed "mdcmd set invalidslot 99" and nothing happens. The output which should return doesn't. I'm in the root dir. What now? EDIT: I decided to Start the array and re-sync parity - had no other option as I saw it. Seems the output I should've received (but didn't) did the trick. It's now carrying out a parity check instead of a re-sync. I'll let it complete just to be sure. Thx Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.