|
|
|
|
|
|
| Author |
Message |
Mark Brand *nix forums beginner
Joined: 07 May 2005
Posts: 36
|
Posted: Tue Feb 08, 2005 9:57 pm Post subject:
solution: installing SuSE 9.2 on cerc megaraid system
|
|
|
While trying to solve the problem of getting SuSE 9.2 installed on a
Dell 500SC with a CERC megaraid controller, I came across several
questions about this issue posted in recent months, but didn't find a
good solution. Here I'm posting my workaround so I can find it with
Google if I ever need it again. Maybe it will help somebody else too.
For a description of the problem see:
http://www.linuxquestions.org/questions/history/269222
http://lists.suse.com/archive/suse-linux-e/2004-Dec/1390.html
Apparently this issue started with a Yast-provided kernel upgrade on
SuSE 9.1. The workaround then was to use the module "megaraid-old"
instead of "megaraid". In the SuSE 9.2 kernel something apparently
prevents the "old" megaraid kernel module from from working.
In my Dell 500SC I have a megaraid controller that looks like this to lspci:
RAID bus controller: American Megatrends Inc. MegaRAID (rev 02)
and shows up like this in /var/log/boot.msg:
<5>megaraid: found 0x101e:0x1960:bus 0:slot 10:func 0
<5>scsi0:Found MegaRAID controller at 0xe0816000, IRQ:30
<5>megaraid: [H661:1.01] detected 1 logical drives.
<5>megaraid: supports extended CDBs.
<6>megaraid: channel[0] is raid.
<6>megaraid: channel[1] is raid.
<6>megaraid: channel[2] is raid.
<6>megaraid: channel[3] is raid.
<6>scsi0 : LSI Logic MegaRAID H661 254 commands 16 targs 7 chans 7 luns
<5>scsi0: scanning scsi channel 0 for logical drives.
<5> Vendor: MegaRAID Model: LD 0 RAID1 76G Rev: H661
<5> Type: Direct-Access ANSI SCSI revision: 02
<5>SCSI device sda: 156217344 512-byte hdwr sectors (79983 MB)
<3>sda: asking for cache data failed
<3>sda: assuming drive cache: write through
<5>SCSI device sda: 156217344 512-byte hdwr sectors (79983 MB)
<3>sda: asking for cache data failed
My workaround for this problem results in a working SuSE 9.2
installation using the plain "kernel.org" kernel. It does not fix the
SuSE 9.2 kernel.
The workaround exploits the following facts:
-The original SuSE 9.1 kernel 2.6.4 (on the bootable install CD) works.
-The plain vanilla kernel 2.6.10 (and maybe other versions) from
www.kernel.org works.
-It's possible to use a SuSE 9.1 bootable install CD to perform a system
update from SuSE 9.1 to 9.2.
Here are the steps (but there are lots of possible variations):
1. Do a SuSE 9.1 installation from CD. (ftp installation
probably also OK.) It makes sense to start with a minimal installation,
but you will also need gcc, make, etc in order to build a kernel.
Install the SuSE kernel sources too because you will need the .config
file. There's no point in installing lots of packages now because
you are going to install SuSE 9.2 packages later.
2. Later (step 5) you will need the reiserfs kernel module for the SuSE
9.1 kernel on the install CD. The easiest thing to do is probably to
copy it now from /lib/modules/2.6.4/kernel/fs/reiserfs/reiserfs.ko to a
floppy.
3. Build and install a plain vanilla kernel (from www.kernel.org). I
used kernel-2.6.10. Use the .config file from the SuSE kernel as your
starting configuration. In .config set the option MEGARAID_LEGACY=m
and disable the other MEGARAID options. Install your new kernel and
reboot to make sure it works. (Special SuSE features like the splash
screen and submount won't work, but you probably won't miss them. I don't.)
4. Remove the SuSE kernel and kernel sources. (rpm --erase
kernel-2.6.4 ...). This will help prevent an accidental update using
Yast later.
5. Now it's time to perform a system update to SuSE 9.2. Boot from the
SuSE 9.1 bootable install CD again. At the boot menu, select "manual
installation". Wait for the menu to appear. Now load the reiserfs module
you saved in step 2. Once the module is loaded, you can start the
installation. (I did an installation by ftp.) Be sure to choose SuSE 9.2
as your installation source (for example
"ftp://ftp.suse.com/pub/suse/i386/9.2").
6. The Yast install program will go through a detecting phase.
Eventually you should get the chance to choose to upgrade your existing
SuSE 9.1 installation. (Don't do a "new installation".) Look under
"packages" to make sure you are not going to install the kernel that
comes with SuSE 9.2. You can also select other additional software you
want. Complete the system update procedure. The plain vanilla kernel you
installed in step 3 will survive the system update.
7. Now you should have a working SuSE 9.2 system. It's a good idea to
rebuild and reinstall the kernel since SuSE 9.2 has a newer version of gcc.
Possible FAQs:
-------------
Q. Why bother with the SuSE 9.1 installation and system update to 9.2?
Why not just install SuSE 9.2 directly using the 9.1 bootable CD?
A. This would leave the SuSE 9.2 kernel installed for the first boot.
Q. Why not build the old megaraid module for the SuSE 9.2 kernel?
A. It might work. I made one attempt. I built the SuSE 9.2 kernel from
source after adding the missing MEGARAID_LEGACY=m line in .config. The
build seemed to go OK and so did loading the module during the manual
installation process, after which the drive became visible and
installation was started. However, during the installation of packages
lots of write errors on the device suddenly started to appear. Here I
gave up on this approach.
Q. Why does "asking for cache data failed" appear in boot.msg. Is this
deleterious?
A. I don't know . I hope somebody that knows will comment. |
|
| Back to top |
|
 |
Mark Brand *nix forums beginner
Joined: 07 May 2005
Posts: 36
|
Posted: Wed Feb 09, 2005 2:41 pm Post subject:
Re: solution: installing SuSE 9.2 on cerc megaraid system
|
|
|
Here's a improved (quicker and easier) procedure for overcoming the lack
of support for certain megaraid controllers in SuSE 9.2. Unlike my first
procedure, here building a new kernel is optional and you only have to
do it once.
My workaround results in a working SuSE 9.2 installation using a kernel
that works with the megaraid controller. It uses the bootable install CD
for SuSE 9.1 to get the job done.
Here are the steps (but there are lots of possible variations):
1. Start with a working SuSE 9.1 installation. (I installed from CDs but
ftp installation is probably also OK.) It makes sense to start with a
minimal installation. There's no point in installing lots of packages
now because you are going to install SuSE 9.2 packages later.
2. Now perform a system update to SuSE 9.2. Boot from the SuSE 9.1
bootable install CD. At the boot menu, select "manual installation".
Wait for the menu to appear. Now load the kernel modules "reiserfs",
"megaraid", and your network card driver module if you are planning to
install from a network source (I used ftp.). Once the modules are
loaded, you can start the installation. Be sure to choose SuSE 9.2 as
your installation source (for example
"ftp://ftp.suse.com/pub/suse/i386/9.2").
3. The Yast install program will go through a detecting phase and you
will answer some easy questions. Finally you'll be able to choose
"update an existing system". (Don't do a "new installation".) Now wait
till "reading package information" is done. You'll have a chance to
select the desired "partition or system to update". Next go to
"packages". VERY IMPORTANT: Set kernel-default to "protected" and
unselect kernel-default-nongpl. (You don't want to replace the kernel
that works.) This might also be a good time to select additional
software packages you want. Complete the system update procedure.
4. Now you should have a SuSE 9.2 system using the working kernel from
SuSE 9.1.
You may wish to rebuild the SuSE 9.1 kernel using the newer version of
gcc that comes with SuSE 9.2. or you may wish to replace the SuSE kernel
with a recent version of the plain vanilla kernel from kernel.org. If
you keep the SuSE kernel installed, be very careful using Yast Online
Update that you don't upgrade the kernel to one that doesn't work anymore.
If you decide to build your own kernel, use the appropriate .config file
from a comparable SuSE kernel as a starting point for the configuration.
Also, don't forget to add the option MEGARAID_LEGACY=m and disable other
MEGARAID options. (I use kernel 2.6.10.). When you install the kernel,
make sure that the "megaraid" (and not "megaraid-old") kernel module is
included in initrd. If you see "megaraid-old", you might need to fix
INITRD_MODULES in /etc/sysconfig/kernel. (You might have changed
"megaraid" to "megaraid-old" if you were using an updated SuSE 9.1
kernel. For plain vanilla kernel 2.6.10, "megaraid" is the right module
name.) |
|
| Back to top |
|
 |
Google
|
|
| Back to top |
|
 |
|
|
The time now is Fri Jan 09, 2009 12:13 pm | All times are GMT
|
|
Debt Consolidation | Debt Consolidation | Debt Consolidation | MPAA | Debt Consolidation
|
|
Copyright © 2004-2005 DeniX Solutions SRL
|
|
|
|
Other DeniX Solutions sites:
Unix/Linux blog |
electronics forum |
medicine forum |
science forum |
|
|
Privacy Policy
|
Powered by phpBB © 2001, 2005 phpBB Group
|
|