Re: booting a clone from a Slave HD



The operating system is not jumper-aware, and neither is it
cable-position aware.  All it knows is that what partition it was
loaded from and that there are other partitions in the system
associated with various HDs.  To understand how an OS is
selected and loaded, you have to know the boot sequence:

The BIOS checks the HD that is at the head of its HD boot order,
and it passes control to that HD's Master Boot Record (MBR).
The code in the MBR looks for the partition marked "active",
and the MBR passes control to the Boot Sector in that partition.
The boot sector finds the boot loader, ntldr, in that partition, and
it passes control to that ntldr.  ntldr reads the boot.ini file to see
where the partition is that contains the OS - which may be the
same partition or any other partition in the system (either primary
or logical), or even a partition on another HD.  In the language
of boot.ini, "rdisk(0)" is the HD that is at the head of the HD boot
order - i.e. "the HD at relative position 0" - and "partition(1)"
means the 1st partition on the HD.

Obviously, which HD is at the head of the BIOS's HD boot order
determines the path that the boot process takes, and only by
*default* is that order determined by the Master/Slave settings.
That default order is:

Master on IDE channel 0, Slave on IDE channel 0,
Master on IDE channel 1, Slave on IDE channel 1,
Master on IDE channel 2, Slave on IDE channel 2, etc.

If you remove the Master on IDE channel 0, the Slave on IDE
channel 0 moves to the head of the HD boot order.  Therefore,
the Slave can contain the partition which starts the loading
process.

But that is only the *default* order.  At any startup, one can
change the HD boot order in the BIOS, and that order will
persist until the ROM's battery runs down.  So *any* HD in the
system can be put at the head of the HD boot order, and its
MBR will direct control to its "active" partition, and the boot
files in that partition will control the loading of the OS under the
direction of its boot.ini file, and the boot.ini file can designate
any partition in the entire system to be the source of the OS.

Getting back to the "vanilla" case, that in which an OS from a
Master HD is copied to the Slave HD, all one has to do to
make the Slave boot up the clone OS is to remove the Master
HD.  And one can do that by merely unplugging the Master HD,
leaving the Slave still connected.  When one re-connects the
Master, it will again be at the head of the default HD boot order,
and *it* will subsequently boot.  To make the clone on the Slave
be the booted OS, merely leave the Master disconnected,
or reverse the jumpering, or go into the BIOS and reverse their
positions in the HD boot order.  Notice that if one uses jumpers
(and not Cable Select) to designate Master vs. Slave, one can
leave the previous Master at the end of the cable and jumpered
as Slave, and leave the previous Slave at the mid-point of the
cable and jumpered as Master.  Master/Slave is only for the
IDE controller to differentiate two HDs sharing the same cable,
and beyond that, it's only to determine their relative *default*
boot order.

In short, a Slave HD can contain the "System Partition", i.e. that
partition that contains the ntldr/boot.ini/ntdetect.com files, and
any HD in the system can contain the "Boot Partition", i.e. that
partition that contains the OS.  Ultimate control lies with the setting
of the BIOS, not with whether a HD is jumpered Master or Slave
or what its position on its cable is.

*TimDaniels*


"Richard Urban" wrote:
The operating system is drive and partition aware. If the original
operating system was seen as the first partition on drive 0, the
clone must be presented as the same when it boots. You do this
by changing the drive cable and jumper positions.

Regards,

Richard Urban
Microsoft MVP Windows Shell/User


"Timothy Daniels" wrote:
Both points are untrue.

1) All that is necessary for the destination drive to boot
   is for the destination drive to at the head of the
   BIOS's hard drive boot order, and that the destination
   partition be marked "active".

   To put the destination HD at the head of the HD boot
   order, enter the BIOS at startup time and manually
   change the boot order.  Directions will be in the user's
   manual.

   To mark the destination parition "active" (if there are
   more than one partition on the destination HD), use
   Disk Manager (rt-clk MyComputer/Manage/DiskManagement).
   Rt-clk the graphic of the destination partition and if
   "Mark Partition as Active" isn't grayed out, click on it.

2) One can *certainly* boot from a Slave HD.  Master/Slave
   settings have no meaning at all to the boot loader.  All that
   is necessary is that the booting HD be at the head of the
   BIOS's HD boot order.  That can be done in either of two
   ways:

   a) Enter the BIOS at startup time and manually put the
       the HD at the head of the HD boot order.

   b) Remove the Master HD, and the Slave HD will
       automatically move to the head of the HD boot order.

       No diddling with the jumpers is necessary in either
       case.

(MVPs:  Please test these statement yourselves so as to
stop propagating popular myths.)

Use the usual precautions when booting a WinNT/2K/XP
clone for the 1st time:

   Don't let the new clone OS see its "parent" when it
   starts up for the 1st time.  The easiest way to do this
   is to remove the source HD before booting the clone.
   Thereafter, you can reconnect the HDs (jumpered
   however you wish) and the clone can be booted with
   the "parent" OS present - which will be seen by the
   clone as just another Local Disk having its own file
   structure, and files can be dragged 'n dropped
   between the tw HDs' file structures just as between
   partitions on the same HD.

   If the clone OS is *not* on the HD at the head of the
   BIOS's HD boot order, it can still be started if the
   the boot.ini file on the booting HD is amended to
   "point" to the partition on the HD that does have the
   clone OS.  IOW, you can implement multi-booting by
   amending the boot.ini file.  But amending boot.ini and
   using WinXP's built-in boot manager to multi-boot is
   a topic for another thread.

*TimDaniels*

"Richard Urban" wrote:
If you want to boot from the hard drive you just copied "to",
you have to change the cables and jumpers on the drive so
the drive is the primary master drive. You can not boot from
the 2nd drive while it is connected as a slave unit.

--


Regards,

Richard Urban
Microsoft MVP Windows Shell/User



.



Relevant Pages

  • Re: Booting to D
    ... Since it's possible to have the lone partition on a HD not ... When I cloned SATA 0 to SATA 1 and switched cables - no boot past Windows ... called "D:" is in control of booting. ... BIOS's HD boot order to determine which HD gets ...
    (microsoft.public.windowsxp.general)
  • Re: XP elsewhere needs files on 1st partitoin primary master?
    ... I disconnected the main primary master drive (which I ... at first overcome using your BIOS suggestion. ... is responsible for the decision to choose where to boot from. ... MBR code has something to say about an active partition on the first ...
    (microsoft.public.windowsxp.general)
  • Re: dual-boot - how to make second hard drive on XP machine a separate XP bootable OS?
    ... install it with XP Pro and make it a dual boot machine until I am ... By cloning the old HD, you will get EVERYTHING - even the ... Ghost's single partition capability. ... in the HD boot order of the BIOS. ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: dual-boot - how to make second hard drive on XP machine a separate XP bootable OS?
    ... install it with XP Pro and make it a dual boot machine until I am ... By cloning the old HD, you will get EVERYTHING - even the ... Ghost's single partition capability. ... in the HD boot order of the BIOS. ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: Booting to D
    ... I think there is something wrong with the HD at SATA 1 - I want to ... so if the BIOS's HD boot order hasn't been ... the SATA drive containing the partition ... BIOS's HD boot order to determine which HD gets ...
    (microsoft.public.windowsxp.general)