changing boot SCSI controller on Solaris 7/x86

changing boot SCSI controller on Solaris 7/x86

Post by Christian Groessle » Tue, 27 Apr 1999 04:00:00



Hi all,

Ive got a Solaris 7 installation (upgraded from 2.5)
which sits on SCSI disk which is connected to an
Adaptec 1542 ISA controller.

Now I want to replace the 1542 with an Adaptec 2940 PCI
host controller.

I switched the controllers and booted into the
configuration assistant. It detects the new controller fine
and I can boot the kernel via the new controller.
The kernel is able to mount / but then bombs out
because he cannot mount /usr.

He cannot mount /usr, because the /dev/dsk/c0t0d0sx
links still point to the old /devices/isa/aha....
devices.
There are also no entries in the /devices tree for
the new controller.

boot -r or touch /reconfigure do not work,
as it seems the kernel wants to mount /usr before
reconfiguring :-(

So what can I do? Is there a way to create these entries/
links "by hand" (I am able to boot the installation CD
and access the partitions thru the new controller.)

Thanks for any help,
Christian Groessler

 
 
 

changing boot SCSI controller on Solaris 7/x86

Post by Toshio Kumaga » Wed, 28 Apr 1999 04:00:00


Hi Christian,

        Execute following steps:

  1:    Remove 1542 from your system and insert 2940, connect
        your HDD to 2940, then boot from CD-ROM.
  2:    Start commandtool and run fsck under OpenWindows
        (Ignore install windows).
  3:    Mount HDD's root, usr and var partition to /a.
                For example,
                mount /dev/dsk/c0t0d0s0 /a
                mount /dev/dsk/c0t0d0s5 /a/usr
                mount /dev/dsk/c0t0d0s3 /a/var
  4:    Chroot to /a and get shell.
                chroot /a /sbin/sh
  5:    Delete /dev/rdsk/*, /dev/dsk/* and /devices/isa/aha*.
        (These files and directories are under /a, don't worry
        about it).
  6:    Run /usr/sbin/drvconfig and /usr/sbin/disks.

        and new partition entry under /dev/dsk and /dev/rdsk.
  7:    Edit /boot/solaris/bootenv.rc to specify correct
        device path (bootpath entry, bottom of file).


  8:    Edit /etc/vfstab if required.
  9:    Exit, unmount under /a, sync and reboot from the HDD.

        Once the devic path have been fixed, you cannot move your
        2940 card to another slot.
        If you will move your card to another slot, you have to
        re-execute these steps shown above.

  TIA.
  Good luck :)

  ###


> Hi all,

> I $B 4 (B ve got a Solaris 7 installation (upgraded from 2.5)
> which sits on SCSI disk which is connected to an
> Adaptec 1542 ISA controller.

> Now I want to replace the 1542 with an Adaptec 2940 PCI
> host controller.

> I switched the controllers and booted into the
> configuration assistant. It detects the new controller fine
> and I can boot the kernel via the new controller.
> The kernel is able to mount / but then bombs out
> because he cannot mount /usr.

> He cannot mount /usr, because the /dev/dsk/c0t0d0sx
> links still point to the old /devices/isa/aha....
> devices.
> There are also no entries in the /devices tree for
> the new controller.

> boot -r or touch /reconfigure do not work,
> as it seems the kernel wants to mount /usr before
> reconfiguring :-(

> So what can I do? Is there a way to create these entries/
> links "by hand" (I am able to boot the installation CD
> and access the partitions thru the new controller.)

> Thanks for any help,
> Christian Groessler

--


 
 
 

changing boot SCSI controller on Solaris 7/x86

Post by Christian Groessle » Thu, 29 Apr 1999 04:00:00


Hi Toshio,

it does not work :-)

I did everything as you said, it completed w/o errrors,
but when I boot the system, it still cannot mount /usr etc.

I dont understand this. modinfo shows the adp driver loaded,
but when I try to "mount /dev/dsk/c0t0d0s6 /usr" it responds
with no such device or similar. The dev/dsk links are
correctly pointing to the pci controller now.

If I boot from CD I can mount it, but when I boot from HD
it doesnt work.
Are there somewhere still relicts from the old controller
on the disk?

thanks for any help
Christian Groessler

> Hi Christian,

>    Execute following steps:

>   1:       Remove 1542 from your system and insert 2940, connect
>    your HDD to 2940, then boot from CD-ROM.
>   2:       Start commandtool and run fsck under OpenWindows
>    (Ignore install windows).
>   3:       Mount HDD's root, usr and var partition to /a.
>            For example,
>            mount /dev/dsk/c0t0d0s0 /a
>            mount /dev/dsk/c0t0d0s5 /a/usr
>            mount /dev/dsk/c0t0d0s3 /a/var
>   4:       Chroot to /a and get shell.
>            chroot /a /sbin/sh
>   5:       Delete /dev/rdsk/*, /dev/dsk/* and /devices/isa/aha*.
>    (These files and directories are under /a, don't worry
>    about it).
>   6:       Run /usr/sbin/drvconfig and /usr/sbin/disks.

>    and new partition entry under /dev/dsk and /dev/rdsk.
>   7:       Edit /boot/solaris/bootenv.rc to specify correct
>    device path (bootpath entry, bottom of file).


>   8:       Edit /etc/vfstab if required.
>   9:       Exit, unmount under /a, sync and reboot from the HDD.

>    Once the devic path have been fixed, you cannot move your
>    2940 card to another slot.
>    If you will move your card to another slot, you have to
>    re-execute these steps shown above.

>   TIA.
>   Good luck :)

>   ###

 
 
 

changing boot SCSI controller on Solaris 7/x86

Post by Andrew Gabri » Thu, 29 Apr 1999 04:00:00




Quote:>I did everything as you said, it completed w/o errrors,
>but when I boot the system, it still cannot mount /usr etc.

>I dont understand this. modinfo shows the adp driver loaded,
>but when I try to "mount /dev/dsk/c0t0d0s6 /usr" it responds
>with no such device or similar. The dev/dsk links are
>correctly pointing to the pci controller now.

Are you really sure? Are they really c0 and not c1?

Quote:>If I boot from CD I can mount it, but when I boot from HD
>it doesnt work.
>Are there somewhere still relicts from the old controller
>on the disk?

/etc/path_to_inst

However, if you create one device node link as you want them
(say the s0 node in /etc/dsk/ and /etc/rdsk/), /usr/sbin/disks
ignores /etc/path_to_inst and creates the rest of the node
links to match the one it finds inplace already.
(Actually, I think /usr/sbin/disks may always ignore
/etc/path_to_inst.)

--
Andrew Gabriel
Consultant Software Engineer

 
 
 

changing boot SCSI controller on Solaris 7/x86

Post by Toshio Kumaga » Fri, 30 Apr 1999 04:00:00


Christian,

        Hmmmm...
        Okay, what's your 2940's controller number ?
        In most case, Primary IDE is c0 and secondary IDE is c1.
        My SCSI interface is c2 (U2W SCSI) and c3 (Fast SCSI).
        So, the device path (logical) of my boot disk is c2t0d0s0.
        Please boot from CD-ROM again and look at /dev/rdsk.
        May be like this...

        lrwxrwxrwx   1 root     other          49 Mar  4 10:16 \

        lrwxrwxrwx   1 root     other          49 Mar  4 10:16 \


        the controller number is 2 (c2).

        IS your device path correct ?
        If your 2940 is not c0, then boot from CD-ROM and mount HDD
        root partition, edit etc/vfstab and boot/solaris/bootenv.rc
        on the HDD, then reboot.

        I've changed SCSI controller 3 times with this way :)
        If you still have any trouble, please e-mail to me.

  Good luck!

  ###



> Hi Toshio,

> it does not work :-)

> I did everything as you said, it completed w/o errrors,
> but when I boot the system, it still cannot mount /usr etc.

> I don't understand this. modinfo shows the adp driver loaded,
> but when I try to "mount /dev/dsk/c0t0d0s6 /usr" it responds
> with 'no such device' or similar. The dev/dsk links are
> correctly pointing to the pci controller now.

> If I boot from CD I can mount it, but when I boot from HD
> it doesn't work.
> Are there somewhere still relicts from the old controller
> on the disk?

> thanks for any help
> Christian Groessler

--

 
 
 

1. Adding a SCSI controller changing boot drive to SCSI drive

I have replaced all my IDE drives with SCSI ones.
I know which SCSI hard drive my doot disk is on sda7.

I have a boot floppy that was created for the IDE system
I can not boot linux from HD and do not want to re-install.

Can I modify the boot floppy to add a driver for my adaptec 2940 card. Do I
have to rebuild anything on the boot floppy.

Any instructions.

2. SLS and networking {Q}

3. Booting Solaris x86 after changing SCSI cards???

4. NSAPI & Virtual Servers

5. Swap SCSI controller on Solaris 2.6 x86

6. X + net + 4meg? (no server)

7. VLB vs. soundcard SCSI controllers (Solaris x86 compatibility)

8. Colorized ls?

9. SCSI controllers for Solaris x86

10. Solaris 2.5 x86 adding 2nd PCI SCSI Controller

11. Adaptec 21960 SCSI controller + solaris 2.6 x86

12. Driver for Adaptec 2842VL SCSI Controller on Solaris x86?

13. Adaptec 3950U2 or other SCSI controllers for Solaris 7 x86?