Remote Boot Service

G

Guest

we have created runtime image and copied the post FBA image to the
development system. we have used SDI loader utility to create a virtual disk
of 400MB, and initiailzed it. Then we chose "New parition" and used default
values , now we have a partition labeled E: . Now we copied image into this
partition and imported into a new .sdi using

sdimgr /new c:\ramdisk.sdi
sdimgr c:\ramdisk.sdi /readpart:e:

This gave me error called
Error - 2147467259 (0x80004005) in "SDIAUT.SDIFile.1": Access is denied.

Is the procedure i followed correct? The default values i used in making
new parition are NTFS settings.

Could you please help me out to solve this problem?

I have one more query....
Is it possible to update the embedded OS in client system(deployment
system) from Development system using remote boot service like a procedure to
copy the files in the ram into hard disk. my client system has hard disk.

-Embedded_msit
 
K

KM

Embedded_msit,

The error you mentioned I only saw when I had read-only access to a sdi file.
Make sure that:
- you have enough space on C: drive to capture the entire volume e: in the new SDI file.
- sdiaut.dll is registered (it likely is since you saw the message coming from one of its classes)
- your c: drive is not removable
- you can copy files to the volume e: and you can copy the files from it.
we have created runtime image and copied the post FBA image to the
development system. we have used SDI loader utility to create a virtual disk
of 400MB, and initiailzed it. Then we chose "New parition" and used default
values , now we have a partition labeled E: . Now we copied image into this
partition and imported into a new .sdi using

sdimgr /new c:\ramdisk.sdi
sdimgr c:\ramdisk.sdi /readpart:e:

This gave me error called
Error - 2147467259 (0x80004005) in "SDIAUT.SDIFile.1": Access is denied.

Is the procedure i followed correct? The default values i used in making
new parition are NTFS settings.

Could you please help me out to solve this problem?

I have one more query....
Is it possible to update the embedded OS in client system(deployment
system) from Development system using remote boot service like a procedure to
copy the files in the ram into hard disk. my client system has hard disk.

Do you mean you want to use RBS in a deployment scenerio?
Yes, it is possible and has been implemented by some of us here.
Basically, you can create a small network based XPe image to remote boot from. From within that image you can use SDIMgr (with
sdiaut.dll properly registred and WSH added) to "deploy" your main image (downloaded SDI from net) onto the local hard drive.
 
D

Desi

KM said:
Embedded_msit,
Basically, you can create a small network based XPe image to remote
boot from. From within that image you can use SDIMgr (with
sdiaut.dll properly registred and WSH added) to "deploy" your main
image (downloaded SDI from net) onto the local hard drive.
I was also able to seal the image and then XCOPY it to a network share.
When I PXE boot the target I can automate the partitioning of the CF
(Using Diskpart), format it (Using format command), and then XCOPY the
target files down.

This has a benefit over sdi files because I can have multiple clients
running in parallel from a single "image", where I would have had to
create a separate sdi file for each target that I wanted to run in
parallel (And then manage which image went to which target). Since SDI
files don't offer compression, XCOPY was actually faster than cloning
the sdi image to the media, since most of the media was empty but SDI
still had to write it all.

SDI was tempermental for me - partially due to the post-sp1 fix that
was released (Updated sdiaut.dll) and the issues that the earlier one
had, but also partly due to the error messages that popped up
frequently and didn't give me much to go on. After a while I did get it
working as it should, but it didn't feel "polished" at all.

A solution like Ghost is ideal as it offers improvements over all other
methods. The downside is the cost - To do it legally you would have to
purchase a copy of Ghost for every target that you deploy to. When will
they ever figure out that this is too much?

Desi
 
G

Guest

We have created .sdi file successfully and placed in \Remote Boot
Service\Downloads folder. We tried to boot the deployment system from LAN. It
gave me an error "Windows failed to open the RAMDISK image". Our .sdi file
is 300MB and deployment system RAM is 256MB. Is this the reason for that
error?
 
G

Guest

Desi,
could u plz elaborate more on using XCOPY and how to use it for copying
the file from my development system to Deployment system. Do i need to
create .sdi file for that? Is their any constraint on deployment system's RAM
for that? How do we use this procedure for the first time if deployment
system has no OS in it?
 
K

KM

embedded_msit,

SDI file = 300Mb, RAM=256Mb? No way.

Please read in the product documentation about SDI and RAM boot. Then you would know that you would need RAM for SDI image in memory
and enough RAM to run the XPe itself. Sometimes it is a good idea to have twice more RAm than the size of your image (not required,
though, and totaly depends on your image components included). But you must have RAM >= SDI size + memory enough for system run
time.

KM
 
K

KM

embedded_msit,

There are XCOPY implemented for pretty much any OS. But for simplicity, you can use WinPE that you can boot remotely (RIS, RBS) or
from CD/HDD.

Type xcopy /? command there to see how to use it.

There are almost no constraint on using xcopy, other than you would want to have a support for long file names.
How much RAM you need to run WinPE - please see its documentation.

Instead of WinPE you can create and use our own XPe image (small one). Then it may be easier to automate any procedure/deployment
steps there as you would want to. You will need RAM there at least enough to run XPe image + RAM for whatever method you choose to
load up the XPe image (SDI, local ElTorito, etc.).

KM
 
G

Guest

KM,
we have created a minimal .sdi file of 100MB and we could load the
ramdisk from the development system.. After it was loaded , gave the eroor:

Windows could not start because the following file missing or corrupt:

<Windows root>\system32\ntoskernel.exe
Please re-install a copy of the above file.

We have checked the ntoskernel.exe file in System32 in my image. What could
be the reason for the eroor. What does <Windows root> means ?
 
K

KM

embedded_msit,

<Windows root> means the folder where your system files goes (usually
\Windows).

If you provided you own boot.ini in RBS, please check out what ARC path you
used there.

If you didn't provid the boot.ini (default one used from RBS download
directory), you must have \Windows dir specified as is in TD.

KM
 
G

Guest

KM
i have checked boot.ini in Downlaods folder of RBS, i m using the default
one.It sill gives

Windows could not start because the following file missing or corrupt:

<Windows root>\system32\hal.dll
Please re-install a copy of the above file.
 
K

KM

embedded_msit,

What is your Windows folder path? (the exact path at run time)
What was the image directory layout when you captured it in the SDI file?

Also show us the output of command like "sdimgr <your sdi file>".

KM
 
G

Guest

KM,

Drive E is my SDI virtual drive and i have copied all my files on to E. So
we have E:\WINDOWS,E:\Documents and Settings etc. Then used the cmd

sdimgr /new image.sdi It gave output

SDI File Manager version 1.00.621
Copyright <c> 1999-2001 Microsoft Corp.

Sdi File : c:\Program Files\Windowd Embedded\utilities\image.sdi
MDB Type: ---
Boot Code Offset : 0x00000000.00000000
Boot COde Size : 0x00000000.00000000
Vendor ID : 0x0000 <0>
Device ID : 0x0000 <0>
Device Model : <00000000-0000-0000-0000-000000000000>
Device Role: 0
Runtime GUID : <00000000-0000-0000-0000-000000000000>
Runtime OEM Rev :0
Page Alignment : 1 <4096 bytes>

Then i used the cmd

sdimgr image.sdi /readpart:e: It gave output

SDI File Manager version 1.00.621
Copyright <c> 1999-2001 Microsoft Corp.

*Reading from volume: "\\.\E:" ...

image.sdi was successfully created and i copied it to C:\Program
Files\Windows Embedded\Remote Boot Service\Downloads folder

I used the default boot.ini is that folder.Its contents are
[boot loader]
default=ramdisk(0)\WINDOWS
[operating systems]
ramdisk(0)\WINDOWS="Windows Embedded XP" /fastdetect

Then i booted the deployment from LAN.
 
K

KM

embedded_msit,

Actually I have asked for the output of "SDIMgr <your sdi file>" command only.
But regardless, your steps looks good to me so, I think, the image is ok. (Only caveat: please add "SDIMgr yourSDIfile.sdi /pack"
command at the end)

What do you specify as Boot Image and Boot Parameters in the RBM GUI? (Remote Boot Manager)
You should specify the Boot Image at least since the boot.ini you used is the default one and doesn't use the /rdpath switch.

--
Regards,
KM, BSquare Corp.

PS. Btw, you can "test" your image locally on the device.
Just copy the SDI image to root of partitioned and formatted local HDD. Also put ntldr, ntdetect and boot.ini there.
The boot.ini ARC path should be include this:
/rdpath=multi(0)disk(0)rdisk(0)partition(1)\yourSDIfile.s-di /rdimageoffsett=4096

KM
 
Joined
Jul 4, 2005
Messages
1
Reaction score
0
Update on this problem

Hi;

I have been reading your thread about the problems you are having trying to deploy a custom Windows XP Embedded OS. Our problems are exactly the same as yours and you seem to have gone through the same steps and errors that we have. I have raised a support request with Microsoft, but that may take some time. I just though I would see if you had any luck in getting a Windows XPe system deployed.

Please contact me on (e-mail address removed) of you have any information, likewise if i get any information back from Microsoft I will post it into this thread.

Thanks in advance

Ian
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top