9. Install The OS
As mentioned earlier, I used Ubuntu 6.06 desktop for the main operating system for my NAS. I'm not going to provide step-by-step instructions on how to install Ubuntu 6.06, but I will provide a few tips:
Let Ubuntu format the RAID 5 partition, since it sees the MegaRAID card and drives as a simple hard drive. It takes Ubuntu an hour to format a 1.2 TB partition on the hardware configuration I've described. You also should be aware that Ubuntu 6.06 desktop does not have its SAMBA server installed in its default configuration. This means that the NAS won't be visible to Windows or other operating systems that support SMB / CIFS. So here's how to install SAMBA after you have Ubuntu 6.06 installed.Step 1: Click on the "System" menu at the top of the screen, to the left of the globe icon.
Step 2: Select "Administration", which is second from the top.
Step 3: Click on "Shared Folders", which is about halfway down the menu.
Step 4: The "Shared Folders Settings" dialog will open up, and then a "Sharing services are not installed" dialog will pop up. Click on "Samba to share folders with Windows/Linux systems". Then, click "Apply" and Ubuntu will install the Samba server for you.
Step 5: Now click the "+Add" button on the "Shared folders settings" dialog.
Step 6: A "Share folder" dialog pops up. Type the name of the share you want to create, next to the "Name" field. Check "Allow browsing folder. Then, click on the "General Windows Sharing" button.
Step 7: A dialog named "Windows sharing settings" will open. In this window, set your domain/workgroup to whatever your workgroup is (the default is MSHOME). Then click OK.
Step 8: Open the terminal window and go to the home directory by typing cd /home. Then type:
chmod 0777 name
where name = your login name in Ubuntu. For example, my login name is bill so I typed:
chmod 0777 bill
Now You Have It, So Share It
I think the best way to define shares for a home network depends on two factors: the operating systems on your PCs, and how people really use the shares.
If you are a Windows person, you can define many shares and not suffer too much by doing so. Windows sets up a share and reattaches it by default every time you reboot the client machine. Mac OS X, however, does not automatically restore SAMBA shares. So, if you have OS X machines, you probably want to define fewer shares and then put sub-folders into these shares so you have less network drive attaching to do. If you are a both Windows and OS X person (as I am) fewer shares still wins, because the Mac's shortcomings still dictate the optimal system settings.
As far as how people use shares, a typical teenager or wife will give you at most one byte of in-the-brain memory regarding how your beautiful RAID 5 NAS works. If you keep your network shares simple enough, your family will use them. If you define your shares by a business-process or using complex logic, the shares will require more than one byte of memory to explain and your family will ignore them.
I have three teenaged boys and one wife in my house. When I first put a NAS box in, I had shares for accounting, downloads, pictures, kid1, kid2, kid3, wife, etc. What I've found over two years of using the NAS is that we use about three shares: "pictures", "everythingelse", and (update and open source) software downloads. So over the past two years, I've evolved to a "fewer shares that we really use" mentality, with zero security in setting up NAS shares.
My zero security approach has the downside of letting kids create folders within shares for projects, but it has worked well so far. The nightmare scenario here is having a teenager in a fit of rage erase everything in a share or two. Although RAID 5 is cool, it won't protect against that, so it is not sufficient as a stand-alone backup strategy...even if you don't have teenagers! I would recommend setting up a simple share structure; say, pictures, accounting and downloads. Then your NAS is ready to use (famous last words!)
interesting article, but the beauty of linux software RAID5 is that an array rebuild will happen automatically when you replace the faulty drive (well you have to tell it that you replaced the drive using mdadm). you can even simulate a failure and then watch it rebuild the array to get an idea of how your system will respond under different scenarios. here's a snippet of what needs to be done to replace the missing drive/partition:
Rebuilding:
To remove the failed partition and add the new parition:
mdadm /dev/mdX -r /dev/sdYZ -a /dev/sdYZ
where X is the array number (0,1,etc) and YZ is your disk/partition (sda3 for example)
e.g.:
mdadm /dev/md0 -r /dev/sde3 -a /dev/sdr3
(where sde3 is the 3rd partition on your faulty drive, and sdr3 is the 3rd partition on the new drive)
Watch the automatic reconstruction run with:
watch -n1 cat /proc/mdstat
I understand that people fear the console commands. It can be a bit scary at first. But mdadm is pretty simple when you're used to console apps and a little bit of linux. It's mostly just mdadm and such. I currently run two software raids with 7 and 5 disks.
i believe his concerns with software raid5 were not just the rebuilding points. i believe he liked the fact that if the os drive took a crap, he could take the card and array and move it to any operating computer and it would power up and work. if you lose the operating system that wrote the software raid array, you have lost the array.
Hi! I have now suffered RAID5 failure due to one failed disk and the status now of my RAID5 controller is degraded.. Is it safe to rebuild the same failed drive? we're using MegaRAID WEBIOS controller? will the data be lost if we do this?

We are in the hesitation mode of doing this..
I hope this will be stressed out...thanks for your help!
re: above
You will regret it.
Do not try to rebuild your raid array with a drive that already failed. I cannot say 100% b/c I do not use MegaRAID controllers, but it is telling you to get a new drive. Go get a new drive and follow the rebuild instructions for your controller. It is trying to save you.... don't outsmart yourself here