Using the Adaptect ASH-1233 IDE Controller Card With Debian Linux

From: Hal Vaughan (hal_at_thresholddigital.com)
Date: 10/27/05

  • Next message: Jeff D: "Re: bind9 in debian vserver wont start"
    To: debian-user@lists.debian.org
    Date: Thu, 27 Oct 2005 13:29:49 -0400
    
    

    I'm posting this to Debian Users because I've had this problem, found almost
    nothing on it, and figure I'm not the last person that will run into this
    problem, so I hope this helps anyone else using this hardware.  It works
    well, but just needs some initial tweaking. While there are a number of other
    IDE controller cards that work almost perfectly with Linux, sometimes we're
    forced to go with what is available.

    Problem: Can I use the Adaptec ASH-1233 IDE controller card with Linux (and,
    more specifically, Debian)?

    Purpose: There are many IDE controller cards on the market, but many don't
    handle drives larger than 137GB.  I've heard there are some IDE controller
    cards that work fine with Linux, without any trouble, but I needed to get a
    system up and running quickly and could not wait on mail order, so I had to
    get what was available in this area.

    Research: I had a hard time getting hits in Google on this and any other IDE
    controller card, or on IDE controller cards in general.  Most hits where
    either "For Sale" pages, hardware lists, or other useless pages.  I found
    only 2 references to this card and Linux that were at all helpful. The first
    was from someone who was trying to use this card in a rackmount system, and
    plugged it into a riser card and could not get his system to see it.  The
    second was with someone who discovered that the drives on the card itself
    were seen and registered before the drives on the motherboard, so the master
    on the primary channel on the ASH-1233 would be seen as /dev/hda, and
    normally the primary drive on the motherboard should be seen as /dev/hda.  
    Now, with the ASH-1233 installed, the motherboard's primary master drive
    became /dev/hde.

    Short Answer: This card can work on Linux with minimal tweaks.  I needed a
    Knoppix CD so I could boot and edit /boot/grub/menu.lst before booting the
    system from the hard drive.  Once set up, it's transparent.  So if you get
    this card, and everything goes well, it'll take an extra 5 minutes or so to
    install Linux.  After that, it's transparent.  Both problems I mentioned in
    "Research" showed up, and I'll address both of them.

    Full Answer: When I first installed this board, it was not seen -- not just by
    Linux, but by the computer itself.  I remembered one person had trouble in a
    rackmount system with a riser, like I was using.  I looked at the connection  
    The card was not seated all the way in the slot. The metal back to the card,
    the one that covers the slot in the outside case and screws directly into the
    case was too short!  This is something I've never seen, but the bend on the
    end (or top) of the metal strip was too close to the card, so when that strip
    is flat on the back of the case and screwed in, the card itself cannot go all
    the way into the PCI slot.  Maybe mine was defective, but since someone else
    had a card that wasn't recognized, and knowing this would explain that, makes
    me wonder if Adaptec hasn't messed up on this.  I examined the card and saw
    no direct leads connected to these cards, and since a PCI slot has ground
    connections anyway, I unscrewed the strip from the card, and glued the strip
    to the card in the right location, so the card could sit firmly in the
    socket.  It worked fine and the card was recognized.

    I am using Debian Sarge (currently the stable branch of Debian), and the
    regular Sarge installer with the 2.6.8 kernel.  I'm also using Grub for
    booting.  I used the Net Install disk and when it booted, I typed in
    "linux26" at the prompt (where it says to press F1 for more options or to
    just hit return) because I wanted to use the 2.6 kernel instead of the 2.4
    version.  From there, install as normal, but remember that if you're using
    the master drive on the motherboard's primary IDE channel as the boot drive,
    it'll show up as /dev/hde instead of /dev/hda.  (From here on, I'll write
    with the presumption you're booting from what should be /dev/hda, the
    motherboard's primary master drive.)  Let everything install as normal.  

    When it gets to the point where the installer says to remove the install disk
    so the computer can reboot into the new version of Linux you've installed (I
    know most distros do this), remove the install CD, and replace it with a
    Knoppix (or other live distro) CD.  Instead of booting into Linux for the
    first time, or to finish the install, let it boot Knoppix.  Once Knoppix is
    running, mount /dev/hde1, the boot drive (or whichever partition /boot is
    on).  (Remember, here it is /dev/hde instead of /dev/hda because Adaptect is
    funky and the ASH-1233's drives are listed first.)  Use Kate or vi or Emacs,
    or whatever editor you prefer.  The one hit I had on this from Google said to
    edit /boot/grub/grub.conf, but that is wrong, at least on my system.  The
    only config file is in /boot, and on my system, was not simply named config.  
    The file you DO want to edit is /boot/grub/menu.lst (that's a lower case "L",
    in case your font makes it hard to tell).  On my system, there were two
    entries for this version of Linux, one regular and one for a repair mode.

    Each entry for an OS (in this case, we're only dealing with Linux) looks
    something like this:

    title           Debian GNU/Linux, kernel 2.6.8-2-386
    root            (hd1,0)
    kernel          /boot/vmlinuz-2.6.8-2-386 root=/dev/hde1 ro
    initrd          /boot/initrd.img-2.6.8-2-386
    savedefault
    boot

    The two lines here that had to be changed are the "root" and "kernel"
    commands:

    root            (hd1,0)
    kernel          /boot/vmlinuz-2.6.8-2-386 root=/dev/hde1 ro

    This sets the root system to the motherboard's primary slave drive, but hde1
    is the primary master.  Try booting like this and you'll have hours of fun
    debugging Grub error codes.  Instead, change these two lines (in each entry
    that needs it) to this:

    root            (hd0,0)
    kernel          /boot/vmlinuz-2.6.8-2-386 ide=reverse root=/dev/hda1 ro

    We'll do it backwards.  the "ide=reverse" will tell the system to read the IDE
    devices from the cards in reverse order -- reversing only the cards, not all
    the devices.  This alone makes sure the motherboard's primary master
    is /dev/hda and the ASH-1233's primary master (assuming there are no other
    IDE controllers on your system) becomes /dev/hde, as it should be.  That
    means /dev/hde1 needs to be changed to /dev/hda1 so the kernel works with the
    correct partition.  The "root" command needs to set the drive being used to
    the first drive and first partition.  I am not clear why this command, which
    comes first, reads the drives in the order it should BEFORE the "ide=reverse"
    is done, but that's the way it works and what makes my system boot correctly.

    Now that this is done, you can shut Knoppix down and tell the computer to
    reboot.  It'll reboot and, if it's Debian you're installing, it'll pick up
    the install where it left off.  (Most distros should do that -- without
    noticing that you've been modifying a file in the meantime.  Others may have
    already finished the install, so now you'll just boot directly into the newly
    installed system.)

    I had the added complication that I was setting up a RAID, which is why I
    needed the ASH-1233.  I had a boot drive, a DVD-RW, and 3 larger drives for
    the RAID.  I kept trying to install Sarge and use its ability to set up a
    software RAID on install, but it never worked.  I later realized that was
    because the ASH-1233 screwed up the drive order.  It isn't hard to set up
    RAID drives under Linux anymore -- just use mdadm and search for a tutorial
    on Google.  My thought is if you're using this card, you're better off not
    using the installer's RAID setup, installing and fixing Grub, then setting up
    a RAID when all the devices are set up properly.

    I'm not sure, because I had an unusual situation, but you may need to
    edit /etc/fstab as well to reflect the change in devices and mountpoints as
    well.  I can't verify that due to my configuration.

    Hope this helps!

    Hal


  • Next message: Jeff D: "Re: bind9 in debian vserver wont start"

    Relevant Pages

    • Re: redhat vs debian
      ... I think maybe in terms of video games Linux is week, ... I have UT 2003 and did successfully install it on my RH linux box. ... Finally I switched back the original video card and rebooted. ... monitor and the gforce card. ...
      (linux.redhat)
    • Re: SD card as HDD
      ... How SD cards cooperate with linux machines? ... You really should not install Linux to an SD card or USB ... that distro can't be easily loaded into netbook like EEE ...
      (comp.os.linux.hardware)
    • System Management/Information isses re CD-DVD and SCSI
      ... subheading Drives a state of "Not Present" ... SCSI controller are correctly listed and in all cases ... Platinum card ... install PlexTools Pro. ...
      (microsoft.public.win2000.hardware)
    • Re: I give up on Vista! Going back to XP.
      ... BSD doesn't get the updates as often as OSX or even ... It's incredibly easy to install and update. ... I'll stick with Linux for now. ... to go with multiple drives. ...
      (alt.2600)
    • Re: Help - New A8N-SLI Deluxe freezes/lockups
      ... > enough - although it ran ten hard drives before for me in an NF3 DFI ... > drives are hooked to a SiL 3114 PCI card in Raid 0. ... the BIOS has set up the hardware properly. ... Install the OS and try again. ...
      (alt.comp.periphs.mainboard.asus)