AV Data Center. How to make one cheap

December 18, 2006 05:13:15

If you have an old pc, you can make it a fileserver with TBs of data available to put.
What we need:

-A PC
-A HEX Editor (I have UltraEdit)
-A cheap PCI card with up to four Sata connectors
-At least 3 HDDs (Sata or Sata2). I chose 3 x 320 GB HDs from WD
(WD3200YS). No cables needed (The card has already in the packet)
-Some modification for WinXP Pro.

What is RAID5:
RAID-5 (Striping with Parity)
RAID-5 is the ideal solution for maximizing disk space and disk redundancy. It's like Striping (RAID-0) in the fact that we have
columns and stripe widths, but when we write data two interesting things happen: the data is written to multiple disks at the same time, and parity is written with the data.

So what if a Disk fails? Our data is being written to 3 disks per write instead of just one, the RAID is smart enough to just get the data off the other 2 disks it wrote to! 

Then, once we replace the bad disk with a new one, the RAID "floods" ll the data back onto the disk from the data on the other 2 adjacent disks!But, you ask, how does the RAID know it's giving you the correct data?  Because of our parity. 

When the data was written to disk(s) that parity was written with it.  We (actually the computer does this automatically) just look at the data ondisks 2 and 4, then compare (XOR) the parity written with the data and if the parity
checks out, we know the data is good.

But i must say this:Win XP 32-bit has limitations with big drivers. So if you want to put big amount of disk(s), you must go with XP Pro
64-bit or Windows Server 2003.

How to enable your WINXP Pro the RAID5 support.
Windows server 2003 and XP Pro have the same code, but MS decided to disable the RAID5 support for XP.
Because Win Server 2003 is more expensive from XP Pro (the most users have XP Pro already), this guide is for XP Pro only.

Go to C:WINDOWSsystem32 and find the files dmconfig.dll and dmadmin.exe. Copy them to another temp folder.
No go to C:WINDOWSsystem32drivers and find dmboot.sys.Copy it to the same folder as above.
No you must open each file to HEX Editor and replace some code:

Dmadmin.exe Before:
00001c30h: 73 65 72 76 65 72 6E 74 00 00 00 00 6C 61 6E 6D ; servernt....lamn
00001c40h: 61 6E 6E 74 00 00 00 00 50 72 6F 64 75 63 74 54 ; annt....ProductT

After:
00001c30h: 77 69 6E 6E 74 00 00 00 00 00 00 00 6C 61 6E 6D ; winnt.......lanm
00001c40h: 61 6E 6E 74 00 00 00 00 50 72 6F 64 75 63 74 54 ; annt ....ProductT


dmconfig.dll Before:
00005140h: 4C 41 4E 4D 41 4E 4E 54 00 00 00 00 53 45 52 56 ; LANMANNT....SERV
00005150h: 45 52 4E 54 00 00 00 00 57 49 4E 4E 54 00 00 00 ; ERNT....WINNT...

After:
00005140h: 4C 41 4E 4D 41 4E 4E 54 00 00 00 00 57 49 4E 4E ; LANMANNT....WINN
00005150h: 54 00 00 00 00 00 00 00 53 45 52 56 45 52 4E 54 ; T.......SERVERNT


dmboot.sys Before:
0000f1f0h: 74 00 54 00 79 00 70 00 65 00 00 00 57 49 4E 4E ; t.T.y.p.e...WINN
0000f200h: 54 00 00 00 53 45 52 56 45 52 4E 54 00 00 00 00 ; T...SERVERNT....

After:
0000f1f0h: 74 00 54 00 79 00 70 00 65 00 00 00 53 45 52 56 ; t.T.y.p.e...SERV
0000f200h: 45 52 4E 54 57 49 4E 4E 54 00 00 00 00 00 00 00 ; ERNTWINNT.......

Save the files.I suggest you to make a backup on them (untouched) and keep them somewhere in you HDD.Now we want to replace the original files.

Try if you can replace with a drag n drop from safe mode (it worked for me).If you can't because  Windows take notice, which eventually causes Windows to restore its original files by using the backup files, you can do this:
Copy the modified files into a floppy disk.
Restart your PC and boot from the Windows XP CD and launch the recovery console by pressing 'R' in the first selection screen.

Go to Windows folder with commands.
Now, copy the files one by one by using the following commands:
copy a:dmboot.sys system32/drivers
copy a:dmboot.sys system32/dll/cache
copy a:dmconfig.dll system32
copy a:dmconfig.dll system32/dll/cache
copy a:dmadmin.exe system32
copy a:dmadmin.exe system32/dll/cache

You are done. Restart and go to windows.

Right click on my computer and choose manage. In the new window select Storage and then Disk management. In the new window you can see your HDDs. Right click on one of them (you want to make dynamic for RAID5) and choose Convert to Dynamic Disk.

Now in popup window choose the disks you want. Press ok

When finish, right click again on first disk and select New Volume. In the new window select  RAID5 and click next.In the next window, select all the disks and transfer them to the right panel.

Click next. In the next window select a letter for the HDD and select next. Now select to Format this drive as NTFS and remember to select the "Perform a quick format" because it will take hours to complete.

Now windows will start to build the RAID5 array. You have to let your PC open so windows complete the array.

When finish, you can start using the HDD.