I recently put together a file server using the RocketRAID 1820A Serial ATA RAID controller from Highpoint Technology. I chose this particular RAID controller for a few reasons. First of all, Highpoint claimed that the card had support for Debian. Secondly, the card got really good performance reviews. I bought all of the parts for the server a few weeks ago from newegg.com (best prices, fast shipping! - and they're not even paying me to say that). Several weeks and many installation attempts later, I managed to get a copy of Debian Sarge up and running on this machine. To be fair, it wasn't terribly difficult to get Debian installed, but to get it done the way I wanted it took some time and effort. Enough so that it merited me writing down. So for anyone else trying to set up a system with this RAID card, or contemplating doing so, or if you're just interested in this kind of stuff, read on...
I recently put together a file server using the RocketRAID 1820A Serial ATA RAID controller from Highpoint Technology. I chose this particular RAID controller for a few reasons. First of all, Highpoint claimed that the card had support for Debian. Secondly, the card got really good performance reviews. I bought all of the parts for the server a few weeks ago from newegg.com (best prices, fast shipping! - and they're not even paying me to say that). Several weeks and many installation attempts later, I managed to get a copy of Debian Sarge up and running on this machine. To be fair, it wasn't terribly difficult to get Debian installed, but to get it done the way I wanted it took some time and effort. Enough so that it merited me writing down. So for anyone else trying to set up a system with this RAID card, or contemplating doing so, or if you're just interested in this kind of stuff, read on...
Goals
Like I said, it wasn't particularly hard just to get Debian installed on this computer, as long as I was willing to install Debian 3.0 to an IDE disk, and then download Highpoint's Debian 3.0 drivers to access the RAID array. If I did that, however, I'd be stuck using a 2.4.x kernel for the rest of eternity (or at least until Highpoint makes Sarge drivers, which I e-mailed them about and doesn't appear to be imminent). So the goals I set were that at the end of the process, my server would meet the following criteria:
1) Debian 3.1 (Sarge) installed on the RAID array
2) The latest 2.6.x kernel (which, as of the writing of this article, was
2.6.12.3)
3) The ability to upgrade my kernel whenever new ones come out
4) The system boots from the RAID array, not an IDE drive
Problems
As of the writing of this article, there is no support for the RocketRAID 1820A in the Linux kernel. Highpoint makes available a set of drivers compiled for the 2.4.x kernel series, for use with Debian 3.0 (Woody). Luckily, they also have a set of "open source "drivers avilable on their site (I say "open source" because it's really just the proprietary pre-compiled driver, with some wrapper code to make it work on whatever system you need to run it on). Unfortunately, I didn't have an appropriate Linux system on hand to compile these drivers (it would need to be compiled for the same architechture and kernel version that the installer uses). If you have such a system on hand, it makes the process below easier, and you only have to install Debian once below, instead of twice like I did.
Disclaimer
This article is merely a recounting of what I did to get the RocketRAID 1820A working on my particular system. It may or may not work for yours. It's probably not the most elegant way of solving the problem, either. In fact, now that I've finally got it working this way, I'm looking into the procedure for including new drivers on a debian-installer iso. It would eliminate a lot of steps, as well as the need to drop into a shell at all during the installation procedure. If I figure that out, I'll post another article, since the tutorials I've found so far online have been somewhat lacking, in my humblest of opinions. Anyway, my point is, if you go out and drop a few hundred bucks on a RocketRAID card for your server, based on the fact that I was able to get mine to work, and you CAN'T get yours to work, I don't want to get any hate mail about it. If you really feel the need to vent, you can direct your rants to
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
This e-mail address is being protected from spambots. You need JavaScript enabled to view it .
Part 1: Getting the Drivers
There are two ways to get the drivers: the easy way and the also easy, but more involved way. You can do things the easier way if you have an existing Linux system at your disposal that meets the following criteria:
1) Appropriate architecture (so if your existing system is running a kernel compiled for i686, remember the debian installer uses i386).
and
2) Same kernel version as the debian installer (which, as of Debian 3.1r0a, is 2.6.8-2-386). You'll need the kernel source also.
If you have all of that, and feel like doing things the easy way (why wouldn't you?), then you can skip to the "Compiling the drivers" section below.
Installing Debian before you install Debian
If you don't have an existing system you can use to compile the drivers, you'll need to get Debian installed on the system in some form in order to just compile the drivers. Since we obviously need the drivers before we can use the RAID array, you'll have to temporarily install another hard drive in the system. Use the onboard (presumably IDE) controller on your motherboard (you do have a spare IDE hard drive lying around, don't you?).
Pop the hard drive in and do a bare minimum debian install on it (I use expert26 mode to install). When it asks you which kernel to use, select the same one that the installer is using. It'll probably be the one selected by default, but just to make sure, you can jump to tty2 (by pressingALT+F2) and type:
uname -r
(Then jump back to tty1 by pressing ALT+F1)
Once you finish the installation, boot into the system and compile the drivers.
Compiling the drivers
The first thing you'll need is a compiled copy of Highpoint's "open source" RocketRAID drivers. You can download them here , or (in case the link changes) just go to Highpoint's web site (http://www.highpoint-tech.com/) , and find the "Drivers + BIOS" section.
Compile the kernel source. You can just use the default config, since you won't be using the kernel itself anyway. Just make sure that you set the correct processor type (most likely 386).
Untar the RocketRAID drivers and compile them. If your linux source is located in /usr/src/linux, you should be able to compile by just typing make. If your kernel source is in a different directory, use the KERNELDIR param, like this:
make KERNELDIR=/usr/src/linux-2.6.8
If you get an error about scsi_to_pci_dma_dir being undefined, just add the following line to globals.h:
#define scsi_to_pci_dma_dir
If the compilation goes off without a hitch, it should create a file called hptmv.ko. Toss that on a CD (you could also put it on a floppy, or somewhere network-accessible, but for the purposes of this article, I'll assume it's on a CD).
At this point, if you had to install an extra hard disk above (see "Installing Debian before you install Debian"), you can now remove it, as it's no longer needed.
Part 2: Installing Debian
Once you have compiled drivers, you're ready to install Debian. Boot from the install CD and follow the first few steps as you normally would. After the step called "Detect Network Hardware", jump to tty2 (by pressing ALT+F2).
Unmount the install CD:
umount /cdrom
Eject the install CD, and insert and mount the CD you made with the drivers on it:
mount /dev/cdroms/cdrom0 /cdrom
Copy the modules to the installer system:
cp /cdrom/hptmv.ko /lib/modules/2.6.8-2-386/kernel/drivers/scsi/
Load the module:
depmod -a
modprobe hptmv
Neither of the two commands above should produce any output. You can check to see if the module was loaded using lsmod:
lsmod | grep hptmv
If you got an error message from any of the above commands, or you don't see the module listed in the output from lsmod, you're in trouble. Make sure you compiled the driver on a computer with a matching kernel version and architecture.
Assuming all of the above step went off without a hitch, you can now continue with the installation.
Unmount the driver cd:
umount /cdrom
Eject the driver CD and insert and mount the install CD:
mount /dev/cdroms/cdrom0 /cdrom
Return to the installer menu on tty1 (by pressing ALT+F1).
Proceed with the rest of the install. The installer should detect the RAID array, and you should be able to partition and install to it. When prompted for which kernel to use, select the same one you used to compile the drivers, or they won't work with your new system. After you finish the installation (but before you select the menu option to complete the installation and reboot), jump back to tty2 for some more dirty work.
First, you need to copy the drivers to your new Debian partition:
cp /lib/modules/2.6.8-2-386/kernel/drivers/scsi/hptmv.ko /target/lib/modules/2.6.8-2-386/kernel/drivers/scsi/
Now change the root directory to /target, using the chroot command:
chroot /target
Edit /etc/modules and add a line that just says hptmv (the name of the RAID controller module)
Rebuild module dependencies:
depmod -a
Mount the /proc psuedo-filesystem:
mount -tproc none /proc
Build a new initial RAM disk:
/usr/sbin/mkinitrd -o /boot/initrd.img-2.6.8-2-386 2.6.8-2-386
And that's all there is to it. Type exit twice (once to exit the modified root, and then once to exit the shell). Then jump back to tty1 (ALT+F1), complete the installation, and reboot (make sure you remove the install cd before the system boots back up).
Upgrading your kernel
At this point, you should have a fully functional system, booting off the RAID array, running Debian 3.1 with a 2.6.x kernel. If you'd like to upgrade your kernel, feel free to download the latest version and configure it to your liking (I believe the hptmv module requires generic scsi support). After you compile your kernel and run make modules_install, but before you boot it, you must recompile the rocketraid drivers against the new kernel, copy the hptmv module into /lib/modules/2.6.x/kernel/drivers/scsi, and create a new initial RAM disk. The general format for creating a new RAM disk is as follows:
mkinitrd -o
So, if you're creating an initial RAM disk for a 2.6.12.3 kernel, the
command would be something like this:
depmod -a 2.6.12.3
mkinitrd -o /boot/initrd.img-2.6.12.3 2.6.12.3
You must also ensure that your boot loader is set to use the new initial RAM disk. If you're using GrUB (and if you're not, you should), the line will look like this:
initrd /boot/initrd.img-2.6.12.3
That's it. Pretty simple. If you follow these instructions but just can't seem to get it working for yourself, feel free to e-mail me at
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
This e-mail address is being protected from spambots. You need JavaScript enabled to view it with questions.
Related Links:
Debian Linux: http://www.debian.org
Highpoint Technologies, Inc.: http://www.highpoint-tech.com







Comments
I am from Burma and learning to read in English, give true I wrote the following sentence: "Order cheprometrium capsules is a progesterone synthesised from yams that is structurally identical to endogenous naturally occurring progesterone found in."
Best regards 8-), Quinn.
I am from Rwanda and also am speaking English, give true I wrote the following sentence: "Find crystorama bi paris flea light chandelier birch for."
Thank you so much for your future answers :(. Mabel.
I am from Egypt and learning to speak English, tell me right I wrote the following sentence: "After another four baths, paramount invented all people to universal."
Thank :) Salon bronze airbrush tanning.
http://www.sanalhane.com
http://www.sevgilerimle.net
http://www.vidyo.net
http://www.ustatamirci.com
http://www.kombitamircisi.com
http://www.ecakombiservisi.gen.tr
http://www.ardaturan.net
http://www.sh-tsg.com
http://www.ustatamirci.net
-----------
Forex - http://www.kenblueswell.com/
http://www.kurtcevideo.com
http://www.klimaservisi.com
http://www.klimaservisii.com
mitsubishi klima servisi
http://www.mitsubishiklima lar.com/