# Gentoo Installation guide for Grub/Compaq Smart2 controllers

## brain

I finally got the job at work to install Gentoo on a trusty old Proliant 1600.

But, as apparently many others have--I ran into the lovely Grub/Smart2 problems.  I prefer Grub over LILO, so I was determined to get it working.

I tried looking at this thread, but the instructions didn't exacly apply to a Smart2 controller.

After searching the forums, and Google, and reading stuff in the Linux kernel source documentation for the cpqarray driver I came across a solution that should work for everybody using these controllers.

The hardware I used to establish these instructions:

Compaq Proliant 1600 / Dual P-II

On-board Symbios SCSI

512MB RAM

1 Smart2/DH Controller

Single RAID5 container (5 x 4.3GB)

Step 1 - Installing the kernel modules

Boot off the Gentoo CD like usual, and follow the Installation Guide.   When you get to inserting modules, also modprobe the following:

```
modprobe cpqarray

modprobe sd_mod

modprobe sr_mod

```

Go ahead and modprobe any other modules you need for your machine.

Step 2 - Partitioning

Partition your disks as you feel fit.   The cpqarray driver has a different naming scheme for the disk devices than plain-old SCSI.  The table below shows the equivalents.

```

"/dev/sda"  = /dev/ida/c0d0/disc 

"/dev/sda1" = /dev/ida/c0d0/part1

"/dev/sda2" = /dev/ida/c0d0/part2

"/dev/sdb1" = /dev/ida/c0d1/part1

...etc.

```

Make sure you write down your partition mappings (i.e.  /dev/ida/c0d0/part2 = swap  /dev/ida/c0d0/part1 = /boot).  You'll need them later.

Step 3 - Mounting the chroot'd /dev

Just before you chroot to your new Gentoo installation (chroot /mnt/gentoo /bin/bash), also run the following:

```
mount -o bind /dev /mnt/gentoo/dev
```

You need to do this to allow the /dev/ida/c0d0/* devices to get recognized inside the chrooted shell.  By default, the Gentoo stage1 tar.gz does not create these nodes.

Step 4 - Kernel configuration

Keep following the installation guide.   When you get to the kernel configuration, be sure to include the Smart2 controller driver (under Block Devices) into the kernel.   Don't forget about SCSI disk/cdrom support.  The vanilla-sources-2.4.19 .config file I used is posted here.

Step 5 - Setting up /etc/fstab

When you get to editing your /etc/fstab file, reformat the /dev/ida/* listings like so:

```
/dev/ida/disc0/part1           /boot       ext3    noauto,noatime    1 2

/dev/ida/disc0/part3           /           ext3    noatime         0 1

/dev/ida/disc0/part2           none        swap    sw              0 0
```

Obviously, replace the filesystem type and partition/disc numbers with your own.   Notice that the disc is referred to as "disc0" instead of c0d0 at this point.

Step 6 - Grub

Now the fun part.   Follow the installation guide for installing grub.  When you get to this part:

```
grub> root (hd0,0)

grub> setup (hd0)

grub> quit
```

Replace the "setup" line with:

```
setup --stage2=/boot/grub/stage2 (hd0)
```

I believe the reason this is necessary is that Grub doesn't understand the /dev/ida/* disk setup and needs to be forced to know where to get the stage2 files from.

Step 7 - menu.lst

Finally, you need to set up your Grub menu.list file like this:

```
default 0

timeout 10

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Linux-2.4.19

root (hd0,0)

kernel /boot/bzImage root=/dev/ida/c0d0p3
```

Paying special attention to root=/dev/ida/c0d0p3.  Replace c0dYpX with "X" being your "/" partition, and "Y" being the disk (ie. sda = c0d0, sdb = c0d1)  If you don't refer to the partition in this fashion, the Linux kernel will panic not being able to find "/"

That's it.   I think the tough part about this is that the controller/disks are referred to three different ways throughout the install (/dev/ida/c0d0/part1 /dev/ida/disc0/part1,  /dev/ida/c0d0p1, etc.)

Hope this helps someone, let me know if there are any mistakes.  I wrote this from memory!   :Smile: 

----------

## duanel

Here's a note to help you get a proliant working (in my case a 2500) with a Smart2/p Raid Controller and a PCI ATA100 IDE controller.

My system is different in that I want the system to be installed on the SCSI RAID array, and my data to be on the larger, cheaper, ATA100 drive(s).

The Proliant's system partition (kind of like a proprietary BIOS) doesn't allow you to specify the boot order of a non-Compaq controller... the hardware configuration tool just sees it as a "Mass Storage Controller."  The Proliant then insists that it boot from the 1st hard drive it finds... which, coincidentally, is the primary master connected to the PCI add-on controller.

The best work-around for this is to create your boot partition on that drive (in this case /dev/ide/hd/c2b0t0u0p1, equivalent to /dev/hda1_, then configure grub on that drive:

grub> root (hd0,0)

grub> setup (hd0) 

grub> quit

Make sure the the boot partition is properly set up in /etc/fstab:

/dev/ide/hd/c2b0t0u0p1  /boot  auto  noauto,noatime  1 1

And, finally make sure that menu.lst is set up to point to the second drive seen on the system... the raid array... (hd1,0).

I apologize if this explanation is scatter-brained, but I've been working on this proprietary hardware in my (limited) spare time for weeks and it's just starting to work. I'll update it when I'm better prepared.

----------

## BurnedOutGeek

I know this is an old post, but I thought I would try anyway.  I have followed the instructions and they havw worked PERFECTLY, unitl the boot sequesnce.  I start to boot the kernel, and everytime, I get a kernel panic because the system cant find root.

I have checked and made sure that my grub line is correct and says:

root=/dev/ida/disc0/c0d0p3

Any suggestions?

Mark

----------

## bmedwar

any idea why this happens? 1.4-Release...

cdimage root # modprobe sd_mod

modprobe: Can't locate module sd_mod

----------

## BurnedOutGeek

It didnt matter for my machine.  Niether sd-Mod or sr_mod would load, but all I needed was cpqarray anyways.  What kind of machine are you working on?

Mark

----------

## bmedwar

I'm working on a Compaq Proliant 800 with SMART-2/DH RAID controller.

----------

## cj52973

I'm working on a Compaq Proliant 1600 with a SMART-2sl controller.  I'm also having an issue getting the system to boot once the install is complete.  

Using Gentoo 1.4, I've tried lilo and grub the system boots then panics because it can't find the root partitiion.  I'm using the xfs-sources and enableing the SMART controller options.  All paths look correct according to the supplied documentation.

What am I missing useing...

Chris

----------

## brain

Are you guys still having trouble?  Posting some verbose errors might help out a bit.

----------

## azndante

I don't know if you still have problems.. I am also using XFS on mine, and I also had the kernel panics.  However, I changed the /dev/ida/c0d0p6 to /dev/ida/c1d0p6 (where p6 is my boot partition) and it all worked.

----------

## smukec

I don' manage to setup my Proliant 2500R

- I had memory problem, but managed to persuade the machine to accept the correct ammount thanks to brian's another thread.

- Then I was not able to compile 'gentoo-soruces' (2.4.22) and emerged 'vanilla-source' (2.4.24), emerged genkernel again, created a new /usr/src/linux link

- genkernel again

I have a problem that there is no /lib/modules/2.4.22 (at least I think it is a problem)

After reboot it starts to load, but fails to find /dev/ida and /dev/ataraid either.

After booting the CD 

```
gentoo doataraid doscsi dokeymap mem=exactmap mem=640k@0 mem=63m@1M
```

I can't load none of cpqarray, sd_mod and sr_mod

It adds only a notification line in dmesg for 'modprobe cpqarray':

```
Compaq SMART2 Driver (v 2.4.25)
```

Is it possible that I still have some parts of gentoo-sources?

Do I have to restart the procedure (mke2fs, ...)?

I have followed the instaructions and my grub.conf looks:

```
title=My Gentoo Linux on RAID

root (hd0,0)

kernel (hd0,0)/boot/kernel-2.4.24 root=/dev/ataraid/c0d0p1

initrd (hd0,0)/boot/initrd-2.4.24
```

If it helps, here is my lsmod:

```
Module                  Size  Used by

tlan                   24088   1

floppy                 47004   0  (autoclean)

serial                 48932   0  (autoclean) (unused)

isa-pnp                28100   0  (autoclean) [serial]

cloop                   5520   1

usb-storage            59372   0  (unused)

hid                    12564   0  (unused)

usbcore                55712   1  [usb-storage hid]

ataraid                 6596   0

ncr53c8xx              51412   3
```

I've installed from stage1.

Goran

----------

## brain

 *smukec wrote:*   

> I don' manage to setup my Proliant 2500R
> 
> - I had memory problem, but managed to persuade the machine to accept the correct ammount thanks to brian's another thread.
> 
> - Then I was not able to compile 'gentoo-soruces' (2.4.22) and emerged 'vanilla-source' (2.4.24), emerged genkernel again, created a new /usr/src/linux link
> ...

 

So wait a second, do you have a Smart2 controller or an ATA RAID Controller?  They're completely different things!  A friend of mine tried to get a secondary ATA controller working in a 2500, to much of his frustration.  These machines are picky enough with the built-in hardware.

Another recommendation is to stick with the vanilla-sources on these bad boys.  They're older machines and do not tend to play well with the high-end tweaks in the Gentoo sources.

if possible, try booting off the LiveCD and giving us the output of a lspci.

----------

## smukec

I can't ssh to the machine right now, but I have written down the SCSI controller (from lspci):

```
SCSI Storage controler: LSI Logic / Symbios Logic 53c875 (rev 03)
```

goran

----------

## brain

 *smukec wrote:*   

> I can't ssh to the machine right now, but I have written down the SCSI controller (from lspci):
> 
> ```
> SCSI Storage controler: LSI Logic / Symbios Logic 53c875 (rev 03)
> ```
> ...

 

Is there a listing for SMART2 anywhere?  The one you listed above is the built-in SCSI controller (not RAID).

----------

## toMeloos

Ok, I need some on this one:

I'm trying to install Gentoo on a Compaq Proliant 1600. It has a Smart-2sl controller.

During installation I am not able to get a /dev/sd* or /dev/hd* so I have worked based on the /dev/ida/ devices. Because I did not have a hd* I've had to choose for lilo.

In the lilo configuration I've tried booting with root=/dev/ida/disc0/part4 and root=/dev/ida/c0d0p4. Both did not work while the kernel (basic livecd gentoo-2.4.20-r6 made with genkernel) detects the controller just fine and shows a scsi0 and scsi1. It results in a kernel panic because it cannot find root.

Also remarkable is that the debian installation I tried earlier did boot with the same lilo settings that I now have for the Gentoo installation.

Can anybody help me to get this thing booting???

----------

## brain

Which controller are you using.  Can you boot off the liveCD and do a lspci, then post the output?

----------

## toMeloos

actually.... I just fixed it!

I compiled my own vanilla-2.4.25 kernel and it did the trick.

In the kernel I included het Comapq Smart2 driver (cpqarray), all the RAID / LVM options and the required filesystems (in my case ext2 and ext3). It worked with /dev/ida/c0d0p4 as root in lilo.conf.

----------

## brain

Congrats!  :Smile: 

----------

## Kiroku6

Heres how my grub.conf looks, boots fine (used Genkernel with gentoo sources and --menuconfig option)

default=0

timeout=30

splashimage=/grub/splash.xpm.gz

title=Linux 2.4.24

root (hd0,0)

kernel /kernel-2.4.22-gentoo-r7 root=/dev/ram0 init=/linuxrc real_root=/dev/ida/disc1/part1

initrd /initrd-2.4.22-gentoo-r7

Im not looking at it, but if i remember correctly, this is it (it does not have (hd0,0) in the kernel or initrd).

----------

## smukec

 *brain wrote:*   

>  *smukec wrote:*   I can't ssh to the machine right now, but I have written down the SCSI controller (from lspci):
> 
> ```
> SCSI Storage controler: LSI Logic / Symbios Logic 53c875 (rev 03)
> ```
> ...

 

It was sure this machine has (as I was told) a HW RAID controller. Add some lack of knowledge and the confusion was there. Sorry for the misleadings.

Now I'm retrying to make this machine alive. This time with the Gentoo 2004.0 LiveCD (universal).

Altough, the HD with Gentoo 1.4 is still intact. Here the problem is that it can't find the /dev/sda1 during boot.

During the installation of the new Gentoo I noticed the device:

```
/dev/scsi/host0/bus0/target1/lun/part1
```

 (which is actually the second disk, where I'm installing the 2004.0) Can this path help anyhow?

After booting this are the outputs of lspci and lsmod:

```
livecd root # lspci

00:00.0 Host bridge: Intel Corp. 440FX - 82441FX PMC [Natoma] (rev 02)

00:0d.0 PCI bridge: IBM IBM27-82351 (rev 01)

00:0f.0 VGA compatible controller: Cirrus Logic GD 5430/40 [Alpine] (rev 22)

00:14.0 EISA bridge: Compaq Computer Corporation PCI to EISA Bridge (rev 07)

01:06.0 VGA compatible controller: Cirrus Logic GD 5430/40 [Alpine] (rev 22)

01:07.0 Network controller: Compaq Computer Corporation Netelligent Integrated 10/100 TX UTP (rev 10)

01:09.0 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 03)

livecd root # lsmod

Module                  Size  Used by    Not tainted

tlan                   24444   1

floppy                 47484   0  (autoclean)

serial                 48932   0  (autoclean) (unused)

parport                22728   0

isa-pnp                27856   0  [serial]

ncr53c8xx              51232   3

usb-storage            60672   0  (unused)

hid                    19620   0  (unused)

usbcore                56076   1  [usb-storage hid]
```

Obviously no sign of any RAID.

During the boot procedure the following hw was mentioned that was detected:

imm, in2000, ips, qla1280, sim710, sym53c416

? Is the sym53c415 an equivalent to ncr53c875 ?

----------

## smukec

OK, it seems it's solved.

I managed to install a working Gentoo 2004.0

But still don't know why it was not working with G1.4, even if I just duplicated a grub entry (only the disk was different).

I can only think of kernel options regading the SCSI support.

If can help anybody else with similar I'm posting the grub.conf. 

```

# Boot automatically after 30 secs.

timeout 30

 

# By default, boot the first entry.

default 0

 

# Fallback to the second entry.

fallback 1

 

# Nice, fat splash-image to spice things up :)

splashimage=(hd0,0)/grub/splash.xpm.gz

 

title Gentoo 2004.0 (2.4.25)

root (hd0,0)

kernel /kernel-2.4.25 doscsi vga=371 root=/dev/sda3 mem=exactmap mem=640k@0 mem=63m@1M

 

title Gentoo 2004.0 (test)

root (hd0,0)

kernel /kernel-test doscsi vga=794 root=/dev/sda3 mem=exactmap mem=640k@0 mem=63m@1M

```

Note, that there is no special disk naming. The SCSI is detected before accessing the root partition (which didn't happened with G1.4).

If anybody interested in any system file(.config, grub.conf, ...) feel free to ask.

Thanks to everybody.

----------

## trudolph

Hey Brain, great thread, so far it's been the most help to me.. or will I'm sure if I can get over this one hurdle that kind of has me stumped.

Someone else asked the same question in an earlier post but didn't get a response really.

I have a Compaq Proliant 3000 with the Smart Array-2DH controller in it, and 5 x 18.2GB drives configured as RAID5.

I have booted off both the Minimal AND Universal LiveCD's, but when I try to use ANY of the following commands once at a prompt:

modprobe cpqarray

modprobe sd_mod

modprobe sr_mod

I receive the errors:

modprobe: Can't locate module cpqarray

modprobe: Can't locate module sd_mod

modprobe: Can't locate module sr_mod

Am I missing something silly here?  Where do these modules come from, and how do I find them to load modprobe them once I've booted off the LiveCD??

I was hoping the Minimal LiveCD did not have the modules so I tried the Universal LiveCD and I get the same results unfortunately.

When I do an lspci I get the following msg at the end of it:

Unknown mass storage controller: Compaq Computer Corporation Smart-2/P RAID Controller (rev 03)

If anyone can give any input into my problem it would be MUCH appreciated.  Redhat seems to install and work fine, but currently I much prefer, and would rather use GENTOO.

Thanks a lot!!!

----------

## brain

 *trudolph wrote:*   

> Hey Brain, great thread, so far it's been the most help to me.. or will I'm sure if I can get over this one hurdle that kind of has me stumped.
> 
> 

 

Thanks  :Smile: 

 *trudolph wrote:*   

> 
> 
> Someone else asked the same question in an earlier post but didn't get a response really.
> 
> I have a Compaq Proliant 3000 with the Smart Array-2DH controller in it, and 5 x 18.2GB drives configured as RAID5.
> ...

 

Are you using the new 2004.2 LiveCDs?  If so, make sure you boot with the SMP kernel (whether you have SMP or not).  The regular Gentoo kernel is using a 2.4 series image, which mysteriously is missing the cpqarray and cciss kernel modules.

Boot off the SMP kernel (which is 2.6) and do:

```

cd /lib/modules/`uname -r`/kernel/drivers/block; ls -l

```

Your RAID modules should be in there...they end with .ko in the 2.6 series, I can't remember if you need to do a "modprobe cpqarray.ko" or just "modprobe cpqarray".

Either way, booting the SMP kernel should take care of you.

EDIT:

Also, if you end up using development-sources (2.6 series), you may want to consider using the udev method for /dev instead of DevFS.  

One of my oldest machines, a Proliant 6000 with 3 Smart/2 controllers is becoming a pain to upgrade since udev is changing the device node names from the way DevFS did.  Just a heads-up, since this might effect your install if booting the 2.6 kernel on the LiveCD, then installing a 2.4 series.

----------

## brain

 *smukec wrote:*   

> OK, it seems it's solved.
> 
> I managed to install a working Gentoo 2004.0
> 
> But still don't know why it was not working with G1.4, even if I just duplicated a grub entry (only the disk was different).
> ...

 

I realize this is an old post, but I want to clarify that in this particular grub.conf, the root=/dev/sda is referring to the internal Symbios SCSI controller, which is correct--there is no special naming.

The special naming is only required if you're using a Smart/2 or newer Compaq RAID card.  The Symbios internal controllers are handled just like any other plain SCSI card.

----------

## trudolph

Yay that did it, you are the brain!!!  :Smile: 

I am able to load the cpqarray module now and use fdisk, etc...

I'm not familiar with the udev vs. DevFS, as up till now I've only used the 2.4 kernel.  I think I will install the 2.6 kernel on this machine and try it out.

Do you know where I can read more about udev as opposed to DevFS??  Is this just something you compile in the kernel, instead of /dev?

I know that last question is off topic, so I'll just say THANK YOU THANK YOU for all your help Brain!!  QUICK reply too, that was even better!!

Take care!

----------

## brain

 *trudolph wrote:*   

> Yay that did it, you are the brain!!! 
> 
> I am able to load the cpqarray module now and use fdisk, etc...
> 
> I'm not familiar with the udev vs. DevFS, as up till now I've only used the 2.4 kernel.  I think I will install the 2.6 kernel on this machine and try it out.
> ...

 

Sure, the Gentoo doc team has done a great job and posted a how-to here:

http://www.gentoo.org/doc/en/udev-guide.xml

If you get it working, do us a favor and post back your experience in this thread.  I've been using udev on a few non-RAID Compaq boxes, but haven't had the chance to try it out on a Smart/2 box.

----------

## trudolph

That's a great link too... you've got all the information, thanks!!

I will use udev on this system and I'll be sure to post back here on my experiences with it (once I figure it all out).

THanks again for all your help Brain!!

----------

## mr666white

Just for reference gentoo put everything in /dev/disks

I used the compaq smart array partitionig tool, so my disks appeared as 

```
/dev/disks/disk0/disk

/dev/disks/disk1/disk

/dev/disks/disk2/disk

/dev/disks/disk3/disk
```

I'm using a 2004.1 universal live cd and only needed to 

```
modprobe cciss
```

Seems quite simple now (after a LONG time buggereing around trying everything else on the planet)...

I do however have one issue. The damn thing hangs when i hit numlock!

Oh and what the hell does the remote insigt thing do, and will it work with linux? at the mo it's on a shelf untill i get the restof the system vaguely happy

----------

## brain

 *mr666white wrote:*   

> 
> 
> Oh and what the hell does the remote insigt thing do, and will it work with linux? at the mo it's on a shelf untill i get the restof the system vaguely happy

 

Compaq's remote insight is kind of a all-around hardware monitoring tool used to watch the server from afar.  It needs drivers running on the OS though.  HP (they ate Compaq) has drivers for Red Hat and I even believe that someone tried an ebuild but I could never get it to work.  I think it needed a ton of outdated libraries and such.

----------

## mr666white

You reckon it's worth the effort to make it work?

----------

## brain

 *mr666white wrote:*   

> You reckon it's worth the effort to make it work?

 

It is pretty cool.  It'll tell you if drives are spinning below spec, which parts of the server may be overheating, etc.  We run gentoo here at work and spent a good deal of time trying to hack it to work but to no avail.  Worth a try I guess.

You do mean the "Remote Insight" software though not an ILO board, right?

----------

## mr666white

 *brain wrote:*   

> 
> 
> You do mean the "Remote Insight" software though not an ILO board, right?

 

Err I may be missinformed, I have a full lenght PCI card with 2 RJ45s a video port and a PS2 keyboard port on the outside. Inside it has a 7.2 volt NimH battery, a PCMCIA 33k modem and a whole host of other chips on it.

It says Series EVB N119 on the back, and Remote insight board on the front.

The graphics, keyboard and lan work trhough the board when it's plugged in, but at the moment it's on a shelf

Also I AM A MUPPET

I mis-read my info on the compaq array configuration software, managed to partition the scsi array into 4 virtual disks, and tried to use them as partitions. Alarm bells only rang when i got to installing grub and i realised i had hd0, hd1, hd2 and hd3 but no partitions on them!!!

Am about to fix and then rebuild.

----------

## brain

 *mr666white wrote:*   

>  *brain wrote:*   
> 
> You do mean the "Remote Insight" software though not an ILO board, right? 
> 
> Err I may be missinformed, I have a full lenght PCI card with 2 RJ45s a video port and a PS2 keyboard port on the outside. Inside it has a 7.2 volt NimH battery, a PCMCIA 33k modem and a whole host of other chips on it.
> ...

 

AHhh...  I have a few of those as well.  The mystery card is an iLO, or as Compaq called it, an "Integrated Lights Out" board.  Those are kind of handy.  The idea of them is that you can have the ability to see everything that's happening on the server--POST, kernel panic, what have you-- remotely.   For example, you have the ability to physically power the server off and on if Linux bombed as if you were in front of it.   If you have it, you might as well put it in. 

It operates independantly OS, sort of like a PC on a board until the OS comes up and starts spitting video I/O at it.     It gets assigned an IP address separate from the server and you access it that way.  The newer ones need no drivers from the OS, and I'm almost positive the older ones work the same way.

They were $2000 options back in the day!

 *mr666white wrote:*   

> 
> 
> I mis-read my info on the compaq array configuration software, managed to partition the scsi array into 4 virtual disks, and tried to use them as partitions. Alarm bells only rang when i got to installing grub and i realised i had hd0, hd1, hd2 and hd3 but no partitions on them!!!
> 
> Am about to fix and then rebuild.

 

Whoops!  :Smile: 

----------

## mr666white

Waaa

Ok, this time the thing is partitioned properly ( I think) and i get once again to the very last bit, makeing grub work, and it's not playing ball.

My partitions are set up as 

```

/dev/ida/c0d0/part1      is           /boot           ext2

/dev/ida/c0d0/part2      is           swap

/dev/ida/c0d0/part3      is           /                  reiserfs

/dev/ida/c0d0/part3      is           /home          reiserfs

```

They also show up as /dev/disks/disk0/part[1..4]

Anyway, I'm trying the following:

```

livecd / #  grub

grub> root (hd0,0)

 Filesystem is ext2fs, partition type 0x83

grub> setup (hd0)

 Checking if "/boot/grub/stage1" exists... no

 Checking if "/grub/stage1" exists... no

Error 15: File not found

```

This is most definately not good  :Sad: 

The good news is the iLO is working after a little persuasion

----------

## HackingM2

 *brain wrote:*   

> 
> 
> ```
> 
> "/dev/sda"  = /dev/ida/c0d0/disc 
> ...

 

Just to save someone some time, I hope, when using udev instead of devfs the device names change.  The table below lists all three...

```

/dev/sda = /dev/ida/c0d0/disc = /dev/ida/c0d0

/dev/sda1 = /dev/ida/c0d0/part1 = /dev/ida/c0d0p1

/dev/sda2 = /dev/ida/c0d0/part2 = /dev/ida/c0d0p2

/dev/sdb1 = /dev/ida/c0d1/part1 = /dev/ida/c0d1p1

```

Hope this helps someone, even if it is just me when I forget and come searching the forums!    :Smile: 

----------

## ak7

I had problems getting grub to recognize my drives.  To correct the problem I created the file /boot/grub/device.map with the contents

(hd0)  /dev/ida/c0d0

I launched grub using the --device-map option

> grub --device-map=/boot/grub/device.map

grub was then able to find my hard drives.

Adjust the entries in the device.map file to suit your setup

The disk naming format seems to have stabilized in the 2.6 kernel.  I used the /dev/ida/cXdXpX names in /etc/fstab and grub.conf

----------

## sigix

device.map in /boot/grub

(hd0) /dev/cciss/c0d1         // main scsi

(hd0,0) /dev/cciss/c0d1p1 //boot 

and # grub --device-map=/boot/grub/device.map

but I get this error

device.map error 2: no close parenthesis found.

what to do ! it's 3rd installing gentoo on Compaq Proliant ML350 with smart array 5300

----------

## ak7

 *sigix wrote:*   

> device.map in /boot/grub
> 
> (hd0) /dev/cciss/c0d1         // main scsi
> 
> (hd0,0) /dev/cciss/c0d1p1 //boot 
> ...

 

A couple of questions come to mind...

1.  c0d1 indicates the first array controller (c0) and the second array (d1) does your device have multiple arrays assigned?  If this is indeed the second arry you should probably assign it to (hd1) in your device.map file.

2.  I don't think the second line is needed.  (the device.map file is for assiging drive references, not partition info).    When you enter the grub shell to do the final configuration you'll specify the partition as follows 

(hd0,0) = first disk, first partition

(hd0,1) = first disk, second partition

(hd1,0) = second disk first partition

(hd1,1) = secodn disk, second partition.

3.  There is a howto that describes installing gentoo on a dl380 using the smart 5300 card.  You might give that a try, especially the manual config of grub.  The howto is here.  Look at Step 7.

You might also try lilo.  I used lilo to get my system to boot its own kernel and then switched to grub so I wouldn't have to keep using the gentoo install cd and chrooting.

----------

## sigix

ak7: yep the second line was not necessary

success installing and booting from grub.

now I get this error

 *Quote:*   

> VFS: Cannot open root device "cciss/c0d0p3" or 68:05 
> 
> Please append the correct "root=" boot option 
> 
> Kernel panic: VFS: Unable to mount root fs on 68:05 

 

quoted:

"9) Kernel Panic! DAMMIT! DAMMIT! My above changes, while needed, had not made a difference in my desired outcome. This one took some time as well. Finally, after carefully reading the kernel panic message, I discovered that it was having some sort of problem accessing my root which I had set to /dev/cciss/disc0/part3 in my Grub menu.lst file. I dug through kernel docs to find a cciss.txt file that talks about adding the appropriate nodes under /dev. There is even a script located in the Documentation/ sub folder of the kernel source tree: mkdev.cciss. I made this baby executeable (chmod 744 mkdev.cciss) and ran it. After checking to see what it created, I noticed that the node structure now matched what I had seen mentioned before: /dev/cciss/cXdXpX. I went back to my menu.lst file and updated the root= parameter according to the new /dev structure and my partition setup: 

root=/dev/cciss/c0d0p3. "

have run mkdev.cciss and it has generated the /dev/cciss/cXdXpX structure.

but still kernel panic VFS

----------

## ak7

 *sigix wrote:*   

> ak7: yep the second line was not necessary
> 
> success installing and booting from grub.
> 
> now I get this error
> ...

 

What does your grub.conf file look like?

Mine looks like this (Proliant 2500 with the smart 2P controller)

```
default 0

timeout 30

splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.6.9-gentoo-r9-mem

root (hd0,0)

kernel (hd0,0)/kernel-2.6.9-gentoo-r9-mem root=/dev/ida/c0d0p4 memmap=exactmap memmap=640k@0 memmap=1023M@1M

title=Gentoo Linux 2.6.9-gentoo-r9

root (hd0,0)

kernel (hd0,0)/kernel-2.6.9-gentoo-r9 root=/dev/ida/c0d0p4 memmap=exactmap memmap=640k@0 memmap=1023M@1M

title=Compaq Utilities Partition

rootnoverify (hd0,2)

chainloader +1

```

The memmap boot parameter is required to correct a know memeory reporting issue with older compaq hardware.  The issue was corrected when the P3 based servers were released.

The two kernels defined have different memory options (testing performance).  I can also invoke the smart start utilities from the compaq utilities partition.

It looks like your path to the root partition is incomplete (missing the /dev) so you may want to try changing your grub.conf file.

----------

## sigix

"compaq prolian ml350 with 5300 smart array raid controller"

 *Quote:*   

> VFS: Cannot open root device "cciss/c0d0p3" or 68:05
> 
> Please append the correct "root=" boot option
> 
> Kernel panic: VFS: Unable to mount root fs on 68:05

 

ok removed this error by selecting in kernel config builtin for compaq smart array 5300

but now getting this error

" checking root file system /dev/cciss/c0d0p3 , no such file or directory......"

and then system asks for maintenance paswd and reboots

have 

/dev/cciss/cXdXpX partition types 

and grub.conf

```

time 30

default 0

root (hd0,0)

kernel /kernel-2.4.26 root=/dev/cciss/c0d0p3

initrd initrd-2.4.26

```

and fstab (few fields omitted)

```

/dev/cciss/c0d0p1  /boot

/dev/cciss/c0d0p2  swap

/dev/cciss/c0d0p3 /

/dev/cciss/c0d0p5 /var

/dev/cciss/c0d0p6 /usr

/dev/cciss/c0d0p7 /tmp

 .............

.............

```

how do I know what /dev.... link to add in fstab file?

----------

## salik

 *brain wrote:*   

> Step 2 - Partitioning
> 
> Partition your disks as you feel fit.   The cpqarray driver has a different naming scheme for the disk devices than plain-old SCSI.  The table below shows the equivalents.
> 
> ```
> ...

 

Hi, maybe a stupid question, but, if I don't have anything in /dev like 'ida' and so long, do I have to create it by myself?

If so, what options should mknod have?

Thanks in advance.

Salik

----------

## loft306

hmmm i just thought that i would put this in here might be helpfull to someone (i didnt see this exact setup here yet) i'm on the 

```
0000:00:01.0 RAID bus controller: LSI Logic / Symbios Logic 53C1510 (rev 02)
```

 which is a smart array2 integrated raid controller with the 'cpqarray driver'and this is how the  disks appear  in fdisk/cfdisk  

```
/dev/ida/c0d0

/dev/ida/c0d0p1

/dev/ida/c0d0p2

/dev/ida/c0d0p1

/dev/ida/c0d1

/dev/c0d1p1
```

but then in /etc/fstab they had to be changed to 

```
/dev/discs/disc0/disc

/dev/discs/disc0/part1

/dev/discs/disc0/part2

/dev/discs/disc0/part3

/dev/discs/disc1/disc

/dev/discs/disc1/part1

```

 in order to function properly

and obviosley /dev/discs/disc0/disc & /dev/discs/disc1/disc are not in fstab  :Wink: 

----------

## HackingM2

 :Rolling Eyes:   *loft306 wrote:*   

> hmmm i just thought that i would put this in here might be helpfull to someone (i didnt see this exact setup here yet) i'm on the 
> 
> ```
> 0000:00:01.0 RAID bus controller: LSI Logic / Symbios Logic 53C1510 (rev 02)
> ```
> ...

 

Is that using devfs or udev?  I have a feeling they will be different again if you switch.   :Rolling Eyes: 

----------

## sigix

so how do I know  what entries should be in fstab and grub kernel  'root=' parameters?

after done install from live cd

i'm using 2004.4 version kernel-2.4.26

 :Rolling Eyes: 

----------

## loft306

 *HackingM2 wrote:*   

> 
> 
> Is that using devfs or udev?  I have a feeling they will be different again if you switch.  

 

er... yeah this is the one that i forgot udev on... :Embarassed:  so devfs it is . i may migrate it to udev or just leave it (that will be hard though)  :Wink: 

----------

## sigix

 *sigix wrote:*   

> so how do I know  what entries should be in "fstab" and grub kernel  'root=' parameters?
> 
> after done install from live cd
> 
> i'm using 2004.4 version kernel-2.4.26
> ...

 

hello need help  here:!: 

grub/raid  issue

----------

## NotQuiteSane

I am using this howto to put gentoo on a proliant 800, dual 200mhz p-pro, 128mb ram, 3x 9gb scsd (raid 5)

everything is fine up until installing grub

 *brain wrote:*   

> Step 6 - Grub
> 
> Now the fun part.   Follow the installation guide for installing grub.  When you get to this part:
> 
> ```
> ...

 

After the first line, I see:

```

grub> root (hd0,0)

Error 21: Selected disk does not exist

grub> 
```

/proc/mounts was copied over to /etc/mtab.  shouldn't matter, but I'm installing remotely via ssh.

anyideas what I should do to get it to see the boot partition?

NQS

----------

## brain

 *Quote:*   

> 
> 
> ```
> 
> grub> root (hd0,0)
> ...

 

What does /boot/grub/device.map contain?

----------

## NotQuiteSane

 *brain wrote:*   

>  *Quote:*   
> 
> ```
> 
> grub> root (hd0,0)
> ...

 

```
livecd boot # less /boot/grub/device.map

(fd0)   /dev/fd0

livecd boot # 
```

Assuming I can manually edit it, is the correct format:

```
(hd0)     /dev/ida/c0d0
```

or is that wrong?

NQS

----------

## NotQuiteSane

 *NotQuiteSane wrote:*   

> 
> 
> ```
> (hd0)     /dev/ida/c0d0
> ```
> ...

 

That did work, but i had to use:

```
livecd boot # grub --device-map=/boot/grub/device.map
```

NQS

----------

## NotQuiteSane

 *brain wrote:*   

> 
> 
> Step 5 - Setting up /etc/fstab
> 
> When you get to editing your /etc/fstab file, reformat the /dev/ida/* listings like so:
> ...

 

Ok, I finally got done putting gentoo on my server.  just one gotcha I found, the format above is incorrect.  I suspect this is a devfs vs. udev issue.  my fstab now looks like this:

```
/dev/ida/c0d0p1         /boot           ext2            noauto,noatime          1 1

/dev/ida/c0d0p2         /               xfs             noatime                 0 0

/dev/ida/c0d0p5         none            swap            sw                      0 0
```

before changing it, it wouldn't activate swap, and went into maintaince mode since it couldn't find "/dev/ida/disc0/part1", complaining of a bad or missing superblock (in fact, I first thought there was a physical problem, until I noticed swap wasn't activated)

Also, if you intend to run headless/keyboardless, (at least) the proliant 800 won't boot w/o a keyboard.  I solved that problem by using the cord & circuit board off of an old keyboard.  

NQS

----------

## volumen1

Any of you guys using cciss (or other smart array cards) have problems with 2.6.13.  My machines using cciss no longer complete booting in 2.6.13, there are errors about serial ports and the last message is about the floppy drive.  I found this thread, but I don't totally get it.

http://www.uwsg.iu.edu/hypermail/linux/kernel/0509.1/0239.html

----------

## NotQuiteSane

I'm having some trouble with my prolient 800.

I added (via an external box & second controller card) (2) 50 GB drives  (RAID 0).  The machine recognizes the array.  2005.1 live cd recognizes it.  But my gentoo install does not.

any ideas?

NQS

----------

## volumen1

Did you build support for the raid card into the kernel?  It won't work as a module unless you are using an initial ramdisk.  When it fails, what happens?  Do you get the grub menu or not?

BTW, has anyone else had problems with 2.6.13 and smart array controllers?  I have several machines that have been affected and I can't really find the solution.

Shane

----------

## NotQuiteSane

 *volumen1 wrote:*   

> Did you build support for the raid card into the kernel?  It won't work as a module unless you are using an initial ramdisk.  When it fails, what happens?  Do you get the grub menu or not?

 

Yep.  even just did a re-install after is fawked things up, still the same.  I'm afraid I may have to downgrade the kernel, and I can't say that makes me happy

NQS

----------

## volumen1

I figured out my problem with 2.6.13 and 2.6.14 kernels.  For some reason, ACPI Processor driver totally locks the machine when it gets loaded.  I removed it and I'm gravy now.

----------

## NotExcessive

I know this is an old thread now, and it's been very useful in helping me build up lots of Proliant Gentoo servers. I've now come across a small problem where I need help.

I have a spare Proliant 5000 machine with the Smart2 controller in it. Ages ago, I built this up into a Gentoo machine from Stage 1, using the advice here about doing the mount -o bind /dev /mnt/gentoo/dev trick to get around the issue of grub falling over whenever it tried looking for hd0.

A little while ago I decided to nuke it with SmartStart and rebuild it from scratch, using the 2006.0 liveCD. Again, I started from Stage 1, and all went well until it came time to grub it.

When I run grub -> root(hd0,0), it whinges about Error 21: Selected disk does not exist.

Ah-huh, I thought, the array name change business of old, causing /dev/ida/c0d0pn to be hidden from grub. BUT... I've done the mount -o bind /dev /mnt/gentoo/dev trick before chrooting, so why now do I have this problem?

On my original installation ages ago, I used the 1.4 release base CD. I thought, OK, let's boot with that (2.4 kernel), and grub it from there. Problem is, you can't chroot as the kernel is too old now (of course). 

Bugger.

Any suggestions? I know I could do a Stage 1 install from the 1.4 CD and successfully grub the array, but I don't want to go there. The machine's taken a long enough time to get to where it is and I don't want to waste that effort. How can I make grub understand about /dev/ida/c0d0pn and thus complete my new 2006.0 installation?

----------

## HackingM2

Edit the device.map file...

```
nano -w /boot/grub/device.map
```

Add the line...

 *Quote:*   

> (hd0) /dev/ida/c0d0

 Install GRUB...

```
grub --device-map=/boot/grub/device.map
```

----------

## NotExcessive

Never mind, I got it going using the --device-map option in grub.

Of course I still do mount -o bind /dev /mnt/gentoo/dev  before chroot.

After chrooting, this is what I did, using information found in these forums:

grub -device-map=/boot/grub/device.map to create a default device.map file. 

nano /boot/grub/device.map and you will see a single line (fd0)   /dev/fd0. Add a line below it to point (hd0) to the array: (hd0) /dev/ida/c0d0

Save the file and then run grub -device-map=/boot/grub/device.map

Execute the normal command root (hd0,0)

Execute the setup command setup --stage2=/boot/grub/stage2 (hd0)

Hey presto! It'll give you a confirmation that it's done it. Now quit

Reboot and away it goes. I now have a working 5000 server running the latest Gentoo.

----------

## NotExcessive

 *HackingM2 wrote:*   

> Edit the device.map file...
> 
> ```
> nano -w /boot/grub/device.map
> ```
> ...

 

Ha. Posted at the same time   :Very Happy: 

----------

