Jump to content

Win PE 2.0 for XP build - Disk problems


duncan-1gp

Recommended Posts

Hi all,

trying to create a WinPE 2.0 CD for building XP workstations. I have an .hta app that gathers all the required info, edits the Xp unattend etc, maps drive, copies drivers locally etc to a network source, then I run WINNT32.exe /s:z:\xp\i386 /unattend:c:\config\unattend.txt /syspart:C:

This runs OK, copies all installation files to disk which has been prepped with diskpart and formatted.

select disk 0
clean
create partition primary size=2000
select partition 1
active
assign letter=c
exit

But I've then been seeing all sorts of "Disk Read Error", "Missing operating System" etc errors when I expect to be rebooting into XP setup. At first I thought it was this http://support.microsoft.com/kb/931760, but have tried the workarounds/resolution there without success. Then thought I might be missing bootsect.exe /nt52 C: but that doesn't seem to help either. I'm stumped. Does anyone have advice on a disk prepping procedure that will work in this scenario? Or am I just doing something really stupid??? :blushing:

Thanks in advance for any help! I'm a new member so hello all and hope I can also help some of you out once I've got over this one!

Cheers

Duncan

Link to comment
Share on other sites


I just found this in regards to the /syspart sitch for WINNT32.exe

On an x86-based computer, this parameter specifies that you can copy Setup startup files to a hard disk, mark the disk as active, and then install the disk onto another computer. When you start the computer onto which you have installed the disk, it automatically starts with the next phase of Setup. You must always use the /tempdrive parameter with the /syspart parameter.

I found that here.

Link to comment
Share on other sites

If I may, check this:

http://www.microsoft.com/technet/prodtechn...y.mspx?mfr=true

/syspart: drive_letter

Specifies that you can copy Setup startup files to a hard disk, mark the disk as active, and install the disk in another computer. When you start that computer, Setup automatically starts with the next phase. Remember the following points when you use this switch:•

You must always use the / syspart option together with the / tempdrive option.

Both / syspart and / tempdrive must point to the same partition of a secondary hard disk.

You must install Windows 2000 on the primary partition of that secondary hard disk.

You can use the /syspart switch only from a computer that is running Windows NT 3.51, Windows NT 4.0, or Windows 2000. You cannot use this switch from a computer that is running a Windows 95 or Windows 98 operating system.

(bolding is mine)

Are you sure this does not apply to the version you are using as well? :unsure:

What is the need of /Syspart in your setup?

The procedure could be this:

select disk 0

clean

create partition primary size=2000

select partition 1

active

format quick

assign letter=c

exit

This way the partition is formatted by diskpart, but since it is Diskpart from WinPE 2.0, the bootsector will be that of Vista, and you need to later run the bootsect.exe /nt52 C:

Is it possible that when run under (Vista) WinPE 2.0 WINNT32.EXE behaves differently? :unsure:

In "normal" BartPE it works:

http://www.911cd.net/forums//index.php?sho...c=21192&hl=

but after the primary partition is formatted and active....

jaclaz

Edited by jaclaz
Link to comment
Share on other sites

I'll give anything a shot at the moment, but I was figuring it was more to do with theway the disk is prepped, aren't there issues trying to boot xpsetup from a disk prepped with winPE 2.0?

Well, there are the problems with CHS/LBA, but those ones should NOT affect the booting:

http://www.911cd.net/forums//index.php?sho...c=21186&hl=

jaclaz

Link to comment
Share on other sites

Try importing this reg file before running setup:

fixboot.reg

Windows Registry Editor Version 5.00

;Settings for Windows XP and 2003 disk alignment issues
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\vds\Alignment]
@="Alignment Settings in Bytes"
"Between4_8GB"=dword:00000000
"Between8_32GB"=dword:00000000
"GreaterThan32GB"=dword:00000000
"LessThan4GB"=dword:00000000

Edited by Jazkal
Link to comment
Share on other sites

Hi jaclaz,

It's been a long story, my original winnt32 line was just

WINNT32.exe /s:z:\xp\i386 /unattend:c:\config\unattend.txt

but I was getting an error from Winnt32 saying it couldn't find a valid partition to install to.

I've tried the formatting both from Diskpart and using winpe's format tool, at the moment it's running outside the diskpart script, and I am running bootsect.exe /nt52 C: after diskpart/format. Lemme give it a try without syspart, and see if it can see the partition.

Cheers all!

Link to comment
Share on other sites

OK, first of all, tried without syspart and that doesn't work. Winnt32.exe cannot find a valid partition to install to. So why am I using Syspart? So XP setup can see the partition.

Next up, I thought go with the flow, and tried Kyor's summary from http://www.msfn.org/board/Installing-Winxp....html&st=20

ok i think here is the complete workaround to solve

the installation issue with winnt32.exe

do the following only for xp and win2003 installations.

On vista you will get performance problems with raid controllers

if you use the fixbootxp.reg

1. run winpe 2.0

2. regedit /s fixbootxp.reg (attached in this post)

3. diskpart

4. bootsect /nt52 c:

5. start winnt32

It works's for me. But i do additional test's

So I do exactly as above. Boot into winPE, then importing

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vds\Alignment]
@="Alignment Settings in Bytes"
"Between4_8GB"=dword:00000000
"Between8_32GB"=dword:00000000
"GreaterThan32GB"=dword:00000000
"LessThan4GB"=dword:00000000

... then diskpart using

sel disk 0
clean
cre par pri
sel par 1
active
format fs=ntfs quick
assign letter=c

Do the bootsect thing, then my winnt command line which now

z:\xp\i386\winnt32 /m:z:\xp\i386\ /syspart:c: /tempdrive:c: /makelocalsource /unattend:z:\unattend.txt

Setup happily copies all the files to C:\ and if I take a moment to look after setup has quit back to the command line, I can see everything I expect to be there. So then I reboot and hey presto "Missing operating system" - what am I doing wrong here.

Currently using Virtual PC 2007 if that's relevant!

And cheers for all the advice so far, much appreciated!

Duncan

Edited by duncan-1gp
Link to comment
Share on other sites

The "Missing operating system" comes from the MBR, not from the bootsector.

This can be caused by either "wrong" address info in the partition table or it not being set as active with hex code 80.

Try examining the MBR with beeblebrox:

http://students.cs.byu.edu/~codyb/

Or, if you wish so, do the following:

1) Get HDHACKER here:

http://dimio.altervista.org/eng/

2) Use it to make a copy of BOTH MBR and bootsector (respectively Physical and Logical drive)

3) zip together the files and post the .zip file here, so I can have a look at them

Ideally you should create six set of files (first four sets with just the MBR, as the bootsector data should not exist at that time)

1) before anything

2) after the diskpart CLEAN command

3) after the diskpart CREATE command

4) after the diskpart ACTIVE command

5) after the diskpart FORMAT command

6) after the bootsect.exe /nt52 C:

It is also possible that it is Virtual PC's BIOS that creates problems, the user on the thread on 911CD forum reports this method to be working on real hardware, exception made for the "alignment" problem, that should be solved by the use of the Registry fix.

Can you try the same approach on another VM, say VirtualBox or Qemu?

jaclaz

Edited by jaclaz
Link to comment
Share on other sites

I use a similar procedure except that I manually copy the i386 directory to c:\i386 first the run winnt32 /s:c: /syspart:c: tempdrive:c: and have no problems on both physical machines and in VMware workstation. There are strange rare occasions where I have to reboot for PE 2 to see the newly created partition but those are few are far between and it is less hassle to reboot than to try and figure out what was happening.

I also do not run bootsect. just the diskpart script to partition, format, etc.

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...