[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 342
  • Last Modified:

ARC path for a mixed SCSI/IDE environment

I want to add an IDE drive to an NT4 server that curently has a single SCSI disk.  This disk is on a controller with a BIOS.

To add the drive caused the BIOS to attempt to boot off the IDE drive, rather than the SCSI drice, which is okay if I copy across boot.ini, ntldr and ntdetect.com.

However, I need to work out what arc path to use to reference the SCSI disk.  The current path is "multi(0)disk(0)rdisk(0)partition(1)\WINNT".  If I leave it as this, then it will try to boot off the newly installed IDE disk as this path will then point to the primary IDE disk on the primary IDE controller, and the first partition on that disk.

There is a MS KB article that relates to this (Q102873) which says...

"In a pure SCSI system, the MULTI() syntax will work for the first two drives on the first SCSI controller (that is, the controller whose BIOS loads first). In a mixed SCSI and IDE system, the MULTI() syntax will work only for the IDE
drives on the first controller."

Therefore I need to use the SCSI() syntax (I think), and use a ntbootdd.sys, which is a copy of the device driver for the adapter in use.  I would expect to have to copy this across from the SCSI drive at the root level, but of course because the system was a pure SCSI system at install time, there is not ntbootdd.sys there.  I guess I can just copy it from some other media and rename it... but, I'd really like to know for sure before I do it.

So, has anyone added an IDE drive to a pure-SCSI NT installation and succeeded?

I think this is a hard question, so have set it at 200 points.  I will only really give the points to someone who has done this and know the answer, not a theorist who says "yeah that should work", and then it turns out not to..
0
tvanlint
Asked:
tvanlint
  • 4
  • 3
  • 3
  • +5
1 Solution
 
barttCommented:
What you also can try is disable the BIOS from the SCSI card

Good luck

Bartt


0
 
barttCommented:
What you also can try is disable the BIOS from the SCSI card

Good luck

Bartt


0
 
tvanlintAuthor Commented:
how does disabling the scsi bios help?  what would the arc path then become?
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
robandrwCommented:
I've done this several times without having to boot from the IDE drive. The SCSI controller I used controlled the system boot order (SCSI, IDE, Floppy). To do this I had to disable all boot entries in the standard computer BIOS.

What type of SCSI card do you have? Maybe this is where the problem lies.
0
 
hiandrasCommented:
Also I haven't tried it before, I would go for:
multi(1)disk(0)rdisk(0)partition(1)\WINNT
0
 
tvanlintAuthor Commented:
to hiandras:
read the KB article I mentioned, it clearly states that the multi() syntax only works for IDE disks in a mixed environment
to robandrw:
the SCSI card is an Adaptec 2940UW PCI.  So, you are saying you have a PC BIOS that allow you to select a boot order of no boot order, and then leave it to the SCSI?  Or you are selecting something in the SCSI BIOS?
0
 
hiandrasCommented:
multi()/scsi() - "... All other adapters or disk controllers are represented by multi. These include SCSI disk controllers with the BIOS enabled so that the SCSI disk accessed by the SCSI BIOS. ..."
from Microsoft Windows NT Technical Support book published by Microsoft Press (Page 254).
Anyhow it worth a try, it wouldn't harm. You can always write it back if it does not work.
BTW: I will read MS Article, just don't have time know...
0
 
onehouseCommented:
I have removed a scsi and inserted an ide.
Long time ago...but follow these rules and you should be fine.
The Advanced Risc Computing (ARC) path is located in the BOOT.INI and is used by NTLDR to determine which disk contains the operating system.

multi(x) Specifies SCSI controller with the BIOS enabled, or non-SCSI controller.
x=ordinal number of controller.
scsi(x) Defines SCSI controller with the BIOS disabled.
x=ordinal number of controller.
disk(x) Defines SCSI disk which the OS resides on.
When multi is used, x=0. When scsi is used, x= the SCSI ID number of the disk with the OS.
rdisk(x) Defines disk which the OS resides on. Used when OS does not reside on a SCSI disk.
x=0-1 if on primary controller. x=2-3 if on multi-channel EIDE controller.
partition(x) Specifies partition number which the OS resides on.
x=cardinal number of partition, and the lowest possible value is 1.

multi(0)disk(0)rdisk(0)partition(1). These are the lowest numbers that an ARC path can have.
I hope this helps.

Regards
Onehouse


0
 
carmineCommented:
Make sure that your IDE device is NT bootable. (perform an NT repair - boot environment)  Copy over the ntldr, boot.ini, ntdetect.com files

Copy the file %systemroot%\drivers\aic78xx.sys
to
C:\ntbootdd.sys

Change the arc path from "multi(1)" to "scsi(1)" - assuming that you only have 1 scsi adapter in your system

BUT if your BIOS setup supports setting a SCSI device as the boot volume rather than an IDE, it is much easier to change this than change the boot environment.

Mark
0
 
carmineCommented:
Ooops, forgot... Change the "disk(0)" to "disk(scsi-id)" for the drive you want to load NT from.

Mark
0
 
tvanlintAuthor Commented:
I know and understand the ARC naming convention, but it is tricky in a mixed IDE/SCSI environment.  Please reread my question if you are interested in answering this question, points to note 1. read the Knowledgebase article I mentioned, it points out you cannot use multi for a BIOS enable SCSI card in a mixed environment, and 2. I am looking for someone who has experience doing this, not just someone taking a guess.  I can do that.  I am well aware I can try a few different things, but this is an important server that I want to minimise downtime, and so would like to have decided the correct action to take prior to shutting the system down
0
 
davidtalCommented:
HI!
There is another option to solve your problem
Do not set the HD ide in the pc BIOS, on the NT server you have to add the ide adapter (control panel - SCSI adapters-
drivers- ADD (even this an IDE controler).
After the restart and the IDE driver will started you have to open the disk administratr utility for NT will recognize the new IDE HD.
Good luck
David Tal
0
 
syatesCommented:
In a previous post, I saw multi(1)disk(0)rdisk(0)partition(1)

It is not valid to have both rdisk and disk to be 0. on an IDE and SCSI disabled controller, RDISK is 1, SCSI is 0. If scsi is enabled, RDISK is 0, DISK is at least 1
0
 
onehouseCommented:
Im sorry Just trying to help you !
If you want more suggestions I think you should apologize.

Regards
Onehouse
0
 
hiandrasCommented:
onehouse,
I don't think tvanlint should apologize. (S)he wants a definite answer for the question. I would just try out, the suggestions, but as twanlint wrote, the server could not be off line for long, so there is no time for 'trying'.
I need some time, and I would try it out myself. I hope I can do it during the weekend and can give a definite answer. You just decribed ARC path meaning, which tvanlint knew, so why should (s)he accept your Answer. It did not answer the original question.
0
 
tvanlintAuthor Commented:
Well, the answer to my problem lies somewhere between my own thoughts and the ideas proposed in the answer.  What I did was install the new HDD and enabled the BIOS IDE controller, and added an IDE controller in the SCSI control panel applet as proposed.  If I didn't enable the IDE controller in the system BIOS, then the system effectively shut down the IDE controller, so I couldn't get the NT IDE driver to detect the new drive, however when I enabled it in BIOS I could.  Having done that I could use disk administrator to create some partitions and drive leters on the new drive.  Important here to make the drive letters other than what already exists on the system.

Then the tricky part begins.  Because the system BIOS is enabled, you have to set one of the partitions on the new IDE disk as active, and copy the system files there (boot.ini, ntldr, ntbootdd.sys and ntdetect.com.  The reason for this is that when the system boots, the system BIOS allocates drive letter C: to the active primary partition on the first IDE drive on the primary IDE controller, and initiates a boot from there. (it would be possible to disable boot from system boot devices in the BIOS, but then you wouln't be able to boot off of a floppy if need be).  

So, the system begins to boot off of the primary active IDE partition which has a boot.ini ARC path of scsi(0)disk(0)rdisk(0)partition(1)\WINNT, which loads the ntbootdd.sys file (a renamed copy of aic78xx.sys) and then it can boot off the SCSI disk.  When the system comes up, NT allocates drive letters how it wants, and so the SCSI disk is still C:\ and the new IDE has the drive letters allocated in disk administrator.

I also tried this on my home test system with a SCSI drive and an IDE drive, and the trick to getting it all to work is to make sure the new IDE disk has no existing partitions, or you can really get into trouble.  Glad I tried it at home first.  Also I created an NT boot floppy which I tested the SCSI syntax and SCSI driver (ntbootdd.sys) on to see how it went prior to going too much further.

It is worth noting that syates is wrong, rdisk can be anything you like as when you are using the SCSI() syntax, rdisk is ignored. disk() contains the SCSI id of the disk you want to boot from.

Also, to onehouse - there will be no apology, your answer was outright incorrect, especially as I had made it quite clear I was not after aspertions, but accurate answers. Also, all you offered was an explaination of ARC paths, which I had made clear was not the question.  I doubt you read the KB article prior to rushing in with your bad answer.  And you indicated that you removed a SCSI and replaced it with an IDE.  I was adding an IDE to a SCSI environment, which it turns out needs all the knowledge of NT booting and ARC paths you can muster up.  I doubt you could have none it.

Thanks to davidtal for pointing me in a direction I hadn't thought of.
0
 
onehouseCommented:
Ok, I give up.
I just think you handled it in a rude way !

Regards
Onehouse
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

  • 4
  • 3
  • 3
  • +5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now