Jump to content

Adding SATA drivers to a working system before clone


Recommended Posts

Posted

First, nLite is great, and I know how to integrate text-mode SATA drivers into an install CD image. I have a slightly different but related question that the people here surely know the answer to...

My underlying question is, "Where (on disk) do the drivers for the boot device (boot disk) ultimately end up, on a working XP system, *after* the "F6" or nLite integrated installation from CD?"

I am considering moving a working XP installation from an IDE drive to a SATA drive. After I move all of the data, do I *have* to do a Repair reinstall, or can I get the drivers and INF files for the boot device into the right place(s) before copying all of the data?

(Side note: I am comfortable with system installs, and I know there are several ways to clone the disk. My preference is XXClone, so those are not really my questions.)

Searching Google for "how to move XP from IDE to SATA" gives articles that talk at length about how to integrate the text-mode drivers into an install CD, and the topics also talk about doing a repair reinstall after cloning.

But it seems that since some of you *must* know where the files end up on disk, on the running system, after the install: when you start from a working system on an IDE drive, it should be possible to put the SATA drivers in the right place before cloning the disk.

I predict that the entry in boot.ini needs to be changed to the SCSI syntax instead of the IDE syntax also.

Thanks. I appreciate any insight into this. [bTW, how is the system able to read the disk driver from the disk in the first place? THAT seems like a circular problem.]

David Walker


Posted

Yep :), but as you know nlite has NOTHING to do with the "installed" system.

What you need to use is Offline Sysprep:

http://www.911cd.net/forums//index.php?showforum=43

either the "whole thing" (STRONGLY recommended) or just either the Driver Injection GUI:

http://www.911cd.net/forums//index.php?showtopic=22523

or the MSSTMake:

http://www.911cd.net/forums//index.php?showtopic=22313

:hello:

jaclaz

nLite has NOTHING to do with the "installed" system? I disagree! if nLite didn't put the drivers in the right place, then the drivers wouldn't end up in the right place on the "installed" system, and the installed system wouldn't boot!

It seems like the nLite creators have to know where the drivers end up on the installed system, in order to know how to correctly integrate them into the install CD. (I might be incorrect, but that was my hope.)

I'll look at the links you provided. But for Offline Sysprep, and even for nLite, I am hoping to NOT have to reinstall on this currently-running system. I know what Sysprep does; it is broadly similar to nLite as far as driver integration goes.

Thanks.

David Walker

Posted (edited)

It looks like the Driver Injection program is what I need. Thanks for the help! I'll report back in a few days, after I have time to test.

Thanks much, I appreciate the help.

Edited by dwalker59
Posted

nLite has NOTHING to do with the "installed" system? I disagree! if nLite didn't put the drivers in the right place, then the drivers wouldn't end up in the right place on the "installed" system, and the installed system wouldn't boot!

It seems like the nLite creators have to know where the drivers end up on the installed system, in order to know how to correctly integrate them into the install CD. (I might be incorrect, but that was my hope.)

It's one of your rights (to disagree) but in this case won't get you very far :whistle:, you seem like missing the very basics of the way a XP is setup.

In a nutshell when you install Windows, you boot from SETUPLDR.BIN that uses settings in TXTSETUP.SIF to "load" drivers and install them, by copying them to the \drivers\ folder AND create a .pnf AND write in the Registry the needed.

So what nlite does is simply to modify the TXTSETUP.SIF to take into account the "new" drivers.

The alternative being using the "F6 floppy" to add the drivers during install (which simply "adds" some settings to TXTSETUP.SIF and of course provides the actual driver files).

When you boot an installed windows, you boot from NTLDR, that knows NOTHING about TXTSETUP.SIF so you CANNOT add drivers after install in the same way (well, you can, of course, add them once booted, but since without the SATA Mass Storage drivers you cannot boot, you are in a nice CATCH 22 situation).

The "traditional" way to migrate an XP was to set the Mass Storage drivers to the "standard" "Dual PCI Ide" drivers because they are "universal" in the sense that they work both with actual IDE devices and with SATA devices as long as you choose "IDE compatibility" or a similar setting in the computer BIOS. (typically all desktops have this possibility as well as most laptops, but a number of the latter do miss this possibility).

The whole idea of Offline Sysprep is to:

  • access Offline a working install (booting ANOTHER OS instance)
  • make it hardware independent (so that it can be transferred and boot on different hardware)

The Mass Storage driver injection ONLY injects Mass Storage drivers ;), so if any other "critical" driver in the offline image is "incompatible" with the new "target" hardware, it won't boot :ph34r: .

jaclaz

Posted

Yes, you're right, I was wrong about Sysprep.

The Driver Injection GUI program *looks* great, but it gives me an error loading the offline System hive... along the lines of "unable to parse the System hive". I know I pointed to the right hive file...

I don't build large numbers of computers, so I had not looked at Sysprep, but twice recently I have replaced a failing IDE drive in a working system with a new SATA drive. Well, once recently and then once coming up this week. :-)

The one I replaced last weekend magically worked after I cloned the IDE disk to a SATA disk! No blue screen. The BIOS was kind of confusing; it seemed to know that the SATA drive was a SATA drive, but there were contradictions in two places. It asked whether I wanted SATA RAID mode or IDE mode in one place... if I selected SATA RAID mode, I then couldn't select that drive as a boot disk at all, which is weird. (It was an MSI K9M6PGM2, and the manual is pretty sparse on the CMOS description.) So I said I wanted the SATA disk in IDE mode. BUT, once booted, the boot disk shows up in device manager as a SATA disk, and the controller shows up as a SATA controller.

I'm doing the same thing on a different board later this week, so we'll see what happens.

I just wish that the Driver Injection GUI had not failed for me. The forums for that tool are pretty sparse, and the tool is in beta, so maybe I should learn more about sysprep. I wish nLite would add drivers to a running system!

Posted (edited)
when you start from a working system on an IDE drive, it should be possible to put the SATA drivers in the right place before cloning the disk.
The SATA Controller, where your SATA hdd is connected, only needs 1 single SATA driver (that is the file with the extension ".SYS"). The place where Windows stores all drivers is the WINDOWS\SYSTEM32\DRIVERS folder. So you have to copy the appropriate SATA driver into that folder, but this action will not be sufficient to let Windows boot from the related SATA hdd. You have to change the registry settings as well.

By the way: As jaclaz alredy has stated, you have posted your problem into the wrong Forum, because it has nothing to do with nLite. NLite is a tool, which has been developed for being used for the customization of original XP sources and not for the manipulation of an already exististing XP installation.

Regards

Fernando

Edited by Fernando 1

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...