RAID Array (Hardware)

From SlackWiki
Jump to navigation Jump to search


My Card Is In, Now What?

-Written from a Slackware 10 perspective-

1) SET UP THE ARRAY- If you are using a hardware RAID card (like ones made by 3ware), on boot you must enter the card's BIOS and set up your array. This is done by hitting a hotkey (ALT-3 for 3ware cards). Read your card's instructions for details on how to configure your array.

2) BOOT WITH THE CORRECT KERNEL- After you have set up your array, boot the computer with the Slackware Install CD (CD1) like normal. At the boot: prompt, choose a RAID supporting image (e.g. raid.s). YOU CAN NOT USE THE DEFAULT KERNEL (bare.i) to boot into set-up, you have to use a boot kernel that supports RAID arrays.

EXAMPLE: boot: raid.s

NOTE: I don't believe STEP 2 applies to newer versions of Slackware. (e.g Slack13)

3) PROCEED NORMALLY- Once you boot the RAID kernel, everything else proceeds normally except the hard-drive is (usually) /dev/sda. Go ahead set up your partitions (fdisk /dev/sda) and continue the normal Slackware install.

FAQs

Q: What device is my RAID array?
A: You are most likely running RAID.S kernel so therefore it is probably /dev/sda

Q: It's not /dev/sda where is it really?
A: I don't know. Reboot your machine and watch the messages scroll by. If you don't see the info, you don't have RAID support compiled into your kernel or as a module and you need to fix that.

Q: My system has a forced fsck and it starts but after awhile, it resets and re-boots. How do I fix this?
A: Re-boot the system using a Slackware install CD (make sure you boot with a RAID kernel) then get to a command line prompt and manually run fsck.

EXAMPLE: fsck -p /dev/sda1

Q: I'm trying to run fsck manually but I get an "The superblock cannot be read..." error. How do I fix this?
A: MOST LIKELY, you're not running a RAID supporting kernel. Re-boot and choose a RAID kernel like raid.s.

Q: I'm running fsck manually and I am getting a "error allocating inode bitmap (2)". How do I fix this?
A: No clue. I haven't been able to find out what that means. If you do, let us know please.

Hardware RAID Specific Help

3ware 3DM2 - Help with 3ware's 3DM2 program.

Hardware RAID Specific Help

3ware 3ware 8006-2LP Installation -

Installed slackware 12.2 with the 3ware 8006-2LP card today. I chose this hardware due to the fanfare I found on the net. It is supported with RedHat and Suse (presumably because they have a preinstall driver installation dialog)

Installing with slack was not as easy as was hoped. Lilo choked twice, first by installing to the MBR which the 3ware bios simply didn't see, and second after installing to the root partition, lilo complained with error 99 which is apparently a BIOS disk address mismatch of some sort.

What worked was this:

1. Install the card, or receive the machine with the card already installed.

2. Double check that all your cable connections are tight. mine were loose when the chassis arrived from the vendor. I am sincerely glad I found this now rather than later.

3. Slackware 12.2 has the 3ware driver in it, so it should boot from CD and see the disk as:

  /dev/sda  

4. fdisk /dev/sda and create some partitions, mine are as follows:

  /dev/sda1 50G (/ this is the root partition) set bootable
  /dev/sda2 2G  (for /boot)  
  /dev/sda3 2G  ( for swap) toggle to type 82
  /dev/sda4 (extended) 
  /dev/sda5 25G (for /var) 
  /dev/sda6 25G (for /home) 
  /dev/sda7 50G (for the webserver) 
  /dev/sda8 50G (for the database) 
  /dev/sda9 10G (for source code) 

You will note seperate /boot and /home partitions. Configuring the disk this way adds some security, which we will discuss in a moment.

5. Run setup and select your packages.

6. Do the configuration dialog: Generally I believe all network enabled devices should be on UTC so I set both system and hardware clocks accordingly. ignore gpm, ignore fancy fonts, and number the network interface... Then make sure the network interface _isn't_ connected.

7. Let the lilo configurator screw up lilo by select "Guess my lilo config" or whatever.

8. exit setup, DO NOT REBOOT!

9. chroot /mnt

10. vi /etc/lilo and make it point at your root partition. My lilo.conf is as follows:

  lba32 # any modern drive should be able to do this. 
  boot = /dev/sda1
  append = " vt.default_utf8=0"
  vga = normal
  image = /boot/vmlinuz
  root = /dev/sda1
  Label = Linux
  read-only # for fscking during bootup. 

11. Note above that /dev/sda1 is the root partition, or "/" if you stick it somewhere else, change as appropriate.

12. obliterate the master boot record: (prevents lilo from getting confused for some reason):

   lilo -z -M /dev/sda

13. run lilo and listen to it complain:

  lilo 

14. If you don't get any fatals errors (warnings are ok), remove the cd then:

   exit 
   reboot

15. Do your little chair dance, and irritate your coworkers.

16. vi /etc/fstab and adjust the following partitions:

  /dev/sda2         /boot            ext2        defaults,ro         1   2
  /dev/sda6         /home            ext2        defaults,nosuid         1   2

Leave your partitions ext3 if they are configured that way, but note the addition of "ro" to /boot and "nosuid" to /home. This makes the kernel secure from modification until the next reboot, and prevents root privileged code from being executed from /home. Generally good and fairly unintrusive security policy.

Now proceed onward oh great progenitors of slack. Your next steps should probably be using "find" to locate and disable most of what has a suid bit set, and then installing and configuring tripwire or some equivilant, then making a brutal set of access controls with iptables, and _then_.... _maybe_ you can connect the box to a public network.

But don't take my word for it.

Good Luck!