Jump to content

Install XP from a RAM loaded ISO image


cdob

Recommended Posts


Oh well, at least now I know it's something I'm doing wrong!

I've been doing some testing with XP install files on the HD and it seems the errors I'm getting in Vmware are caused by an incorrect "SetupSourceDevice = " line in TXTSETUP.sif.

So, what should I set this to before making the ISO?

Edited by doveman
Link to comment
Share on other sites

Yes, I did RAM load this way by linking the usb drive as a virtual drive.

Is this how you tested it in a vm or did you use a different method?

As far as I know VirtualBox mount the USB stick to a virtual internal hard disk.

There are no USB drivers used. This does not test USB boot.

Installation way work anyway, but test internal hard disk behaviour.

I'm using VMWare Player, mount the USB drive, boot a PLoP Boot Manager floppy image and continue USB boot.

Windows setup use USB drivers for the USB drive. This does test USB boot.

What can I do to slipstream IE7 without generating missing file errors in text setup?
Try file names used by a default XP CD: that's 8.3 names.

Long names are renamed at installation.

aaclient.mui = 100,,,,,,,,3,3,aaclient.dll.mui
The CD does contain file name aaclient.mui, not aaclient.dll.mui.

nLlite breaks XP defaults

icardie.dll.mui = 1,,,,,,,1974,0,0
A long name is used at CD. Try a 8.3 file name at ISO image.
I've been doing some testing with XP install files on the HD and it seems the errors I'm getting in Vmware are caused by an incorrect "SetupSourceDevice = " line in TXTSETUP.sif.
A XP default CD dosn't contain SetupSourceDevice, delete this line.

And if you use one hard disk, dosn't use grub4dos hd swap.

Link to comment
Share on other sites

Actually neither of the ISOs I'm using contain the SetupSourceDevice line either. I just noticed that when I had the wrong settings in that line, whilst trying to do an install from the XPCD files copied to HD, that I got the same errors that I'm seeing with the ISO install.

I'm not using the HD swap when installing from the same HD either.

I had another problem in that the XP install was assigning C: to the third partion, but that turned out to just be because that partition was active. Setting the first partition active fixed that.

Edited by doveman
Link to comment
Share on other sites

NTLDR expects NTDETECT.COM in the active partition of the first disk, not on the second, as would be if no swapping is made, hence the need of swapping.

Thanks ilko_t, this works now.

There are several reports that nLited sources do NOT work well when booted not from a CD

To clarify, the nlited source installed via RAM load works fine. However, nlited source + IE7 slipstreamed creates errors in text mode.

I was considering cdob's post on how nlite breaks the naming convention in txtsetup.sif and yet this is functional if the source is an ISO created by nlite. I noticed these ISOs are Joliet, whereas XP_RAM.ISO was not. I simply added

set mkisofs_option=-R -J

to mkISO_RAMload_sort.cmd to enable Joliet. This works; no missing file errors in text mode.

Thank you for your help guys. I will test this on real hardware soon.

Link to comment
Share on other sites

After reading travis_san's message, I thought "maybe I shouldn't be building my ISOs with Nero" (although it seems to make ISOs that work in the VCD-ROM) and recalled what I'd learnt about mkisofs only last week (and mostly forgotten already :whistle: ).

Anyway, I rebuilt my "Vanilla" XP ISO with the below command, but it didn't help :(

mkisofs -v -volid XPPSP3 -R -l -iso-level 4 -J -joliet-long -duplicates-once -b boot.ima -no-emul-boot -boot-load-size 4 -boot-load-seg 0x07C0 -o XPPROSP3Un.iso "XPProSP3-Vanilla-Unattend"

Link to comment
Share on other sites

To try and troubleshoot, I thought I'd just make an ISO, containing only XP_RAM.iso, XP_INST.IMA, grldr and menu.lst, to boot in VMware's VCD-ROM. It seems to be working OK, but I can't get it to respect my unattended settings in winnt.sif.

I've tried putting it in the root and in setup\I386\ of the IMA, but I still get the EULA every time. Where exactly am I meant to put this file?

Link to comment
Share on other sites

To try and troubleshoot, I thought I'd just make an ISO, containing only XP_RAM.iso, XP_INST.IMA, grldr and menu.lst, to boot in VMware's VCD-ROM. It seems to be working OK, but I can't get it to respect my unattended settings in winnt.sif.

I've tried putting it in the root and in setup\I386\ of the IMA, but I still get the EULA every time. Where exactly am I meant to put this file?

Try to reread Post #73

Edited by kDn
Link to comment
Share on other sites

Thanks, but I'm not trying to do a multiple unattended-mode installation, so all that tells me is that it goes in the root of the IMA, which I've already tried.

I tested by copying the XP_RAM.iso and XP_INST.IMA to a usb stick and booting from that, starting the RAM install with drive mapping, and that worked fine.

It turns out that it's just a problem with my test CD ISO, to do with case. I don't even have to put WINNT.SIF in the IMA, it works fine from the XP_RAM.ISO once the problem's fixed.

After a lot of testing, it turns out that XP_RAM.iso needs to be XP_RAM.ISO for the WINNT.SIF to work from a CD ISO in Vmware. I've got no idea why it should work with a lower-case extension from a USB stick but not a CD ISO but there you are.

Link to comment
Share on other sites

this is functional if the source is an ISO created by nlite. I noticed these ISOs are Joliet, whereas XP_RAM.ISO was not.
Sorry I didn't understand there are different ISO files. I understood you used the nLite ISO image always.

To allow multiple dots at ISO 9660: mkisofs -allow-multidot

Yes, or add Joliet file system: mkISO_RAMload_sort.cmd -joliet-long

Rock Ridge extension won't matter in that case. Anyay use -r instead of -R at windows in future.

It turns out that it's just a problem with my test CD ISO, to do with case. I don't even have to put WINNT.SIF in the IMA, it works fine from the XP_RAM.ISO once the problem's fixed.
Yes, winnt.sif is not WINNT.SIF.
After a lot of testing, it turns out that XP_RAM.iso needs to be XP_RAM.ISO for the WINNT.SIF to work from a CD ISO in Vmware. I've got no idea why it should work with a lower-case extension from a USB stick but not a CD ISO but there you are.
Grub4dos ignore case at (floppy, hard) disk file system, your USB stick.

Grub4dos is case sensitive at ISO 9660 file system, your CD.

Link to comment
Share on other sites

Yes, winnt.sif is not WINNT.SIF.

I didn't have any problems with that, the problem was purely with XP_RAM.iso .

Grub4dos ignore case at (floppy, hard) disk file system, your USB stick.

Grub4dos is case sensitive at ISO 9660 file system, your CD.

Yeah, it turns out that Grub4dos was actually finding the XP_RAM.iso on my VHD third partition, so was set root and loading XP_RAM.iso from there, which was an old, incorrectly built one, which wasn't loading WINNT.SIF. I've got round that problem by changing the first line to "find --set-root /XPRAMCD.lst" and making that file in the root of the CD. Very confusing, but I've finally managed to successfully install from USB, CD and HD, in VMware at least :thumbup

Link to comment
Share on other sites

Just wanted to report that thanks to TigerWhite's post #26, I've successfully installed from an Nlited Driverpacked XP_RAM.ISO contained in an ISO mounted in VMware's VCD-ROM. I was getting an error about unable to find firadisk in TXT-mode, until I added the line to mount the IMA to (fd1). :thumbup

Only downside is it isn't installing the stuff in the I386\SVPACK folder for some reason, but pretty good job nonetheless.

Link to comment
Share on other sites

A few years ago I remember someone saying that this sort of thing would never be possible with XP, so when I saw this I had to have ago.

Everything seams pretty straight forward and I'll test installing XP from a USB stick in the next day or so but I have one question.

Is there any additional steps required to mount a PE (UBCD4Win) in RAM using this method?

Link to comment
Share on other sites

Someone may well correct me, but I'm not sure you need to go through all this just to boot a PE ISO in RAM.

I've had success using the following menu.lst entries. I think you just need to make sure your PE build includes the BootSDI plugin.

title PE iso

find --set-root /iso/PE.iso

map /iso/PE.iso (hd32)

map --hook

chainloader (hd32)

title PE.iso - mem

find --set-root /iso/PE.iso

map --mem /iso/PE.iso (hd32)

map --hook

chainloader (hd32)

Link to comment
Share on other sites

Is there any additional steps required to mount a PE (UBCD4Win) in RAM using this method?
No, there are no addional steps required.

However it's reccomended to "gzip.exe -9 UBCD4WIN.ISO" Required disk space and boot time is reduced.

http://www.gzip.org/ and ubcd4win\plugin\Add-Ons\UnxUtils\files\gzip.exe

title mem Loading UBCD4Win.GZ /I386/SETUPLDR.BIN
ls /images/UBCD4WIN.GZ || find --set-root /images/UBCD4WIN.GZ
map --mem /images/firadisk.ima (fd0)
map --mem /images/UBCD4WIN.GZ (0xFF)
map --hook
chainloader (0xFF)/I386/SETUPLDR.BIN

Someone may well correct me, but I'm not sure you need to go through all this just to boot a PE ISO in RAM.
A classic XP/2003 won't boot without additional drivers.

Yes, a BootSDI version does work, because this use RAM load already (2003 SP1 setupldr.bin based).

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