Jump to content

Installing XP from USB to an already running Windows 7 system


SteveOC

Recommended Posts

hd(0,0) is Active NTFS partition - hd(0.1) is unknown type(0x21) occupying last 63 sectors of the USB drive (I don't know where this came from)

The 0x21 is a "special" partition made by RMPREPUSB on the USB stick to increase the compatibility with pesky BIOS when (you used the option C: 2 Partitions or something lke that in RMPREPUSB, right?). THis is "normal" if you used RMPREPUSB.

So, (hd0) is still the USB stick (which is allright, since you have rebooted and you did not run any .lst entry).

But what do you mean by "and hd(1) is FDD" ? :w00t:

A device is either a Hard Disk or a floppy.

If the USB stick is (hd0) and it has two partitions (hd0,0) and (hd0,1), the latter being the "special" one cylinder partition made by RMPREPUSB, the (hd1) must be (or at least SHOULD be) the internal hard disk.

You should be able to access 5 (five) partitions on (hd1):

(hd1,0) <- the "recovery" partition

(hd1,1) <- the Windows 7 100 Mb "boot" partition

(hd1,2) <- the Windows 7 "system" partition

(hd1,4) <- the fist Logical volume

(hd1,5) <- the second logical volume

See:

http://diddy.boot-land.net/grub4dos/files/syntax.htm

There exists NO "root" on device (hd0) as it is a "WHOLE" hard disk, nor there is one on (hd1) which is again a "WHOLE" hard disk.

A partition/volume/filesystem has an accessible "root", the "root" of the whole hard disk contains no files (as it has not even a filesystem).

When you issue the command:

root (hd1,1)

grub4dos will provide some feedback, like:

http://diddy.boot-land.net/grub4dos/files/basics.htm

Filesystem type is NTFS, partition type 0x07

Again I am more interested on the output/feedback of the commands than to the description of them, if you could simply post the exact commands you issued and the exact feedback that you had, it would be more straightforward, right now I have to guess :ph34r: , based on your description:

  1. what command you issued
  2. what feedback you had
  3. what you assumed from that feedback or from something else that you didn't cite

As an example, this:

Commands show that hd(0) is USB and hd(1) is FDD

is what I call "vague" and can be read in at least three or four different ways.....

  • WHICH exact commands?
  • WHAT was the exact feedback? <. this is what they actually show
  • HOW you derived from the feedback of the commands your colcusions? <- this is what you represented as "shown" by the "commands".
  • NEVER use an acronym unless it is "universally accepted", FDD means "Floppy Disk Drive" but could also mean "Fixed Disk Drive", sometimes spending a couple more words can help

If the USB device is (hd0) and the (hd1) is NOT the internal hard disk :w00t: , then there is an "earliier" issue (at BIOS level detection of connected disks).

jaclaz

Edited by jaclaz
Link to comment
Share on other sites


Sorry - I tried in vain to find a way to redirect the output from the commands to a file but to no avail so I made some rough notes and paraphrased as I have to reboot the only working PC to post back. I have booted back into Grub and tried to write everything down, so here goes............................

Geometry (hd0)

drive 0x81 (LBA) C/H/S=993/2/255/63, Sector Count/Size=15952543/512

Partition Num 0, Active, Filesystem Type is NTFS Partition Type 0x07

Partition Num 1, Filesystem Type is Unknown Type 0x21

Geometry (hd1)

drive 0x81 (LBA) C/H/S=19457/255/63, Sector Count/Size=312576705/512

Partition Num 0, Filesystem Type is NTFS Partition Type 0x27

Partition Num 1, Active, Filesystem Type is NTFS Partition Type 0x07

Partition Num 2, Filesystem Type is NTFS Partition Type 0x07

Partition Num 3, Filesystem Type is NTFS Partition Type 0x07

Partition Num 4, Filesystem Type is NTFS Partition Type 0x07

root (hd1,1)

Filesystem type is NTFS, partition type 0x07

ls

$Attrdef

$Badclus

$Bitmap

$Boot

$Extend

$Logfile

$Mft

$Mftmirr

$Secure

$Upcase

$Volume

Boot

bootmgr

System \ Volume \ Information

So the above is the *System partition on the internal hard drive and as you can see no ntldr, boot.ini or ntdetect.com

root (hd1,2)

Filesystem type is NTFS, partition type 0x07

ls

I recognise the files listed as being from my c: drive so haven't written them down, but again there se no ntldr, boot.ini or ntdetect.com there

Thanks

Steve O.

Link to comment
Share on other sites

I recognise the files listed as being from my c: drive so haven't written them down, but again there se no ntldr, boot.ini or ntdetect.com there

Yep, this is the issue.

In order to boot the XP the files NTLDR, BOOT.INI and NTDETECT.COM are NEEDED.

Theoretically they should go to the Primary Active partition (i.e. (hd1,1) in your case) or at least in a Primary partiton (booting from a Logical Volume, though possible with a few tweaks is not "standard" nor "normal").

Check also the other partitions for the above files (it is possible that they went inside the recovery partition or to one of the two logical volumes).

Since you have seen (during the Blue text part of the setup that you ran) that files were copied, they must exist *somewhere*.

You should also check for directories named:

  • $WIN_NT$.~BT
  • $WIN_NT$.~LS

at least the first one should exist :unsure:

and for files:

  • SETUPLDR.BIN
  • TXTSETUP.SIF

jaclaz

P.S.:

Are you sure about partition numbers here?:

Geometry (hd1)

drive 0x81 (LBA) C/H/S=19457/255/63, Sector Count/Size=312576705/512

Partition Num 0, Filesystem Type is NTFS Partition Type 0x27

Partition Num 1, Active, Filesystem Type is NTFS Partition Type 0x07

Partition Num 2, Filesystem Type is NTFS Partition Type 0x07

Partition Num 3, Filesystem Type is NTFS Partition Type 0x07

Partition Num 4, Filesystem Type is NTFS Partition Type 0x07

There should be no Partiion Num 3, but a Partition Num 5 (maybe a typo?)

Edited by jaclaz
Link to comment
Share on other sites

What I would do:

1) Move Win7 boot files out of the small partition and put them in hd0,2, that's the third partition and set it active.

Do not delete the small partition yet, just in case, if you need you could simply mark it back as active from GParted or DiskPart launched from Win7 setup and get back Win7 boot.

http://www.terabyteunlimited.com/kb/article.php?id=409

2) Once you got Win7 working and booted from the third partition which should be already the active one, delete the small one if you haven't yet.

3) Use latest WinSetupFromUSB 1.0 beta8 if you used another version and install XP.

You will lose Win7 boot, that's ok. XP boot files should go to now second partition, the small one is deleted prior to XP Setup so it doesn't mess up boot.ini.

4) Once you get XP working, fix Win7 boot:

From command prompt during Win7 Setup:

bootrec /fixmbr
bootrec /fixboot

The same can be achieved using BootIce, MBRWiz or similar tool from within XP. Just need to change PBR to NT6 (bootmgr) one on the active partition.

5) When you get back Win7 boot, add and entry for XP (ntldr) in BCD using bcdedit or even easier, with EasyBCD, or BootIce.

@Jaclaz

Since 1.0 versions WinSetupFromUSB no longer uses the ~BT and ~LS folders and method, it's WINSETUP folder containing all source files.

Link to comment
Share on other sites

@Ilko_t

Thanks for the update.

2) Once you got Win7 working and booted from the third partition which should be already the active one, delete the small one if you haven't yet.

NO :no: , the currently active one is the second.

@SteveOC

You want to play "safe". :ph34r:

When you are in the grub4dos prompt, input these commands:

map (hd0) (hd1)
map (hd1) (hd0)
map --hook
root (hd0,1)

Now run

ls

you should see the files BOOTMGR listed.

Now:

chainloader /bootmgr
boot

You should boot to Windows 7 "normally".

Now copy the BOOTMGR and the \boot\ directory to the "main" Windows 7 partition.

Reboot, and again at the grub4dos prompt run:

map (hd0) (hd1)
map (hd1) (hd0)
map --hook
root (hd0,2)
chainloader /bootmgr
boot

(please note how this time we are loading the bootmgr from (hd0,2) i.e. from the "main" "third" partition).

You should be able to boot again the Windows 7 normally.

If this happens, then open Disk Management and set the "main" "third" system partition as the Active one, and reboot, this time without the USB stick/grub4dos.

If everything is OK, then, and only then you can remove the contents of the (hd0,1) or even delete that partition allright.

jaclaz

Link to comment
Share on other sites

2) Once you got Win7 working and booted from the third partition which should be already the active one, delete the small one if you haven't yet.

NO :no: , the currently active one is the second.

...

Jaclaz, you must have missed some bits and pieces from what I posted :unsure:

At that point, if he followed the tutorial posted, the active one should be the third one.

http://www.terabyteunlimited.com/kb/article.php?id=409

...

13. Remove the drive letter assignment from the System Reserved partition and set the Windows 7 partition as the Active (booting) partition.

...

And, as mentioned, it's to be deleted only when it's confirmed that Win7 boots alright with its partition(third) set as active and boot files copied on it, to stay on the safe side.
Link to comment
Share on other sites

.

Jaclaz, you must have missed some bits and pieces from what I posted :unsure:

At that point, if he followed the tutorial posted, the active one should be the third one.

Not really, different linguistical interpretation, nothing of much relevance :).

I read "already" as "already" ;) as opposed to "at that point",or, if the actions suggested in #1 were carried:

1) Move Win7 boot files out of the small partition and put them in hd0,2, that's the third partition and set it active.

Do not delete the small partition yet, just in case, if you need you could simply mark it back as active from GParted or DiskPart launched from Win7 setup and get back Win7 boot.

http://www.terabyteunlimited.com/kb/article.php?id=409

2) Once you got Win7 working and booted from the third partition which should be already the active one, delete the small one if you haven't yet.

the bolded part in 2) would be a truism. :ph34r: (double one :w00t:, as in #1 the third partition is made active and also in #13 of the linked tutorial) on the other hand, IF the thrid partiion had not been made active, the system wouldn't have booted at all.....

The "play safe" was actually refered to the "Move" (as opposed to "copy"):

What I would do:

1) Move Win7 boot files out of the small partition and put them in hd0,2, that's the third partition and set it active.

I am pretty sure that your approach is very correct :thumbup:, but as I see it missed a "what if something goes wrong" wayback provision, IMHO when dealing with disks/data always "better be safe than sorry" ;).

jaclaz

Edited by jaclaz
Link to comment
Share on other sites

Yep, correct, copy instead of move, just as the tutorial posted instructs. I might have been more precise if was typing the exact steps and commands to be performed.

Instructions:

Part 1 - Copy the Booting Files and Configure the Windows 7 Partition for Booting

As for the truism- correct, kinda happens when thinking out loud.

As for the safe part:

Do not delete the small partition yet, just in case, if you need you could simply mark it back as active from GParted or DiskPart launched from Win7 setup and get back Win7 boot.

Anyway, I think the OP should now clearly get the idea what is to be done, thanks for the corrections.

Link to comment
Share on other sites

Thanks to both of you for posting, Ilko_t and Jaclaz.

I haven't gone away or given up - just fighting problem after problem (mainly with unreadable SD cards).

I now have some further inkling about where the problem lies - it appears to be in the first part of the Windows Install phase, during Setup, immediately after the message about Windows Starting. I think that there is a default setting somewhere along the lines of reboot-on-error and I think that this is what happens when Windows fails to start - it just reboots and goes back to the (GRUB?) menu.

The messages that flashed up during Setup about 'copying' files actually said 'loading' and not 'copying' - which I presume means loading into memory, hence nothing found on disk - as I discovered after trying again and again.

I don't know if this is a disk/controllerdriver issue - I have tried downloading the Intel F6Floppy driver package for my controller, creating an IMA file from it, and including it in the build (I see it under WINSETUP directory) but when I try to use it during the install it still fails. It is an AHCI driver - My BIOS says it will AUTO detect XP and not use AHCI, and I even tried disabling it long back but it makes no difference.

I am still trying to digest all your recommendations for the best way forward - it may take me a while.

As this is my only working machine, I would like to be able to adopt an approach whereby I was able to boot x number of OS'es without compromisng the ability to recover the W7Starter system using the standard Samsung build so I would prefer to leave the *SYSTEM and *RECOVERY partitions untouched even if that means manually setting things up.

Thanks for all the help to date - interesting stuff.

Steve O.

Link to comment
Share on other sites

I don't know if this is a disk/controllerdriver issue - I have tried downloading the Intel F6Floppy driver package for my controller, creating an IMA file from it, and including it in the build (I see it under WINSETUP directory) but when I try to use it during the install it still fails. It is an AHCI driver - My BIOS says it will AUTO detect XP and not use AHCI, and I even tried disabling it long back but it makes no difference.

Yes, this may be an issue.

You might want to try another approach, slipstreaming the actual AHCI driver to the source (by itself or using the DriversPack) as to remove this possible issue.

I am not sure to understand the reference to the SD cards.

More loosely, you have a working OS (Windows 7) and a USB stick (or SD card reader?) that can boot to grub4dos, so you have in any case a way of booting.

Before making other experiments I would create (on the USB whatever) a Windows 7 boot floppy image, see here:

http://www.multibooters.co.uk/floppy.html

For a quick howto.

And test it from the USB.

Something like:

map --mem /myfloppy.img (fd0)
map --hook
root (fd0)
chinloader /bootmgr

should do nicely.

If you need more info on how to make the floppy image (I would personally use IMDISK) , just say so.

Once you have this "failsafe" provision, you can try to copy the Windows XP source to the internal hard disk and install it through WinntSetup:

jaclaz

Link to comment
Share on other sites

  • 1 month later...

需要这么复杂吗? 直接进入系统按F8进入安全模式——选在带命令行的安全模式——在xp包解压出来放任意一个盘符里面去——输入你的路径.........——运行i386文件夹里的winnt32.exe

Edited by wcy0236
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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