Slipstream and burn SP2 from within Linux:
Let's face it: Being a technician, in most cases, requires performing tasks that are rather Windows Specific.
I've had some trouble getting this to work, but I'm almost there. Please help me finish this up if you can.
##########################
Getting Started - Get Boot image & Files
##########################
All of the Windows XP CDs have the same boot image, "Microsoft Corporation.img" which must be extracted for use later.
Code:
I can't figure out how to extract it from linux yet...
:(
HELP ME
Now copy the original cd files:
(to bad you can't write to an iso file....)
Code:
# mount /dev/cdroms/cdrom1 /mnt/cdrom -o uid=1000,gid=100
$ mkdir ~/WinXP_ISO
$ mkdir ~/WinXP_ISO/SP2
$ cp -a /mnt/cdrom ~/WinXP_ISO/SP2
##########################
Slipstreaming - Wine Away
##########################
Download SP2 from microsoft and apply it to the CD files
(I use tinyurl.com to shorten the real microsoft url)
Code:
$ nano -w ~/.wine/config
> [Drive D]
> "Path" = "../WinXP_ISO"
> "Type" = "hd"
> "Label" = "SP2"
> "Filesystem" = "win95"
$ cd ~/WinXP_ISO
$ wget http://tinyurl.com/6j4xb
$ mv WindowsXP-KB835935-SP2-ENU.exe SP2.exe
$ wine -- SP2.exe -s\"D:\\SP2\"
I assume that that should work if you have a drive D in your wine configuration. but I never get past this error:
Code:
Unable to find a volume for file extraction.
Please verify that you have proper permissions.
then go here, and make some magic happen - like pre-patching uxtheme.dll
http://unattended.msfn.org/
##########################
Burninating - k3b that sucker
##########################
FYI: I maintain a few identical directory structures - one for the original slipstreamed ISO, and another with only the experimental tweaks, another with drivers per machine, another with settings per user (I make enough of these that it is worthwhile to learn how to do it without windows), and so on. My eventual hope is that I could have the temporariry ISOs made for me by selecting options on a web interface and having php write my unattended scripts and selecting drivers and such (though I don't make enough of these for that to be anything more than fun).
Select the boot image
Code:
$ k3b
> File >> New >> New Data CD Project
> Project >> Edit Boot Images
>> New
>>> [Select "Microsoft Corporation.img"]
>>> Emulation Type: None
>>> [Click] Show Advanced Options
>>> Boot-info-table: Uncheck
>>> Boot Load Segment: 0x07C0
>>> Boot Load Size: 0x4
>>> OK
>> [Select Virgin Slipstreamed Files; Right Click 'Add to Project']
>> [Select Enhanced Files; Right Click 'Add to Project']
>>> [Click Replace All]
I tried burning the cd a few different ways and I got a few different errors, ordered here by 'worseness':
Code:
: [blinking curser] - filesystem error?
: CDBOOT: Couldn't find NTLDR - file system error?
: usbehci.sys could not be found - Case error?
: cannot find asms, please insert your WinSP2 CD - Case error?
I was able to traverse all of these errors, excluding the later, however, by adjusting the burn settings. I'm not saying that all of these settings are necessary, but I'll narrow it down later. The important thing is that I know this produces a cd without the aforementioned errors. I starred what I think is necessary
It's very interesting how case sensitivity plays a huge roll in the NT Kernel when you are installing windows... and not suprising that the SP2 patch will write lowercase filenames which it assumes your burner software will correct...
Code:
>> Burn
>>> Writing:
Device: [auto]
Speed: [auto]
* Writing Mode: DAO
Options: (changing these shouldn't bother anything)
>>> Settings:
* Datatrack Mode: 1
* Multisession: No Multisession
>>> Volume Desc:
Volume name: WXPOEM_EN
Volume set name: WXPOEM_EN
everything else I left default
>>> Filesystem:
* File Systems: Generate Joliet Extensions
Whitespace Treatment: No Change
>>> Advanced:
iso9660 Filesystem:
Allow 103 characeter Joliet filenames: unchecked
* Allow untranslated filenames: unchecked
Allow 31 character filenames: checked
* Allow full ASCII charset: checked
Allow leading period: checked
* Allow lowercase characters: unchecked
Allow max length filenames (37 characters): checked
Allow multiple dots: checked
* Allow ~ and #: checked
Omit trailing period: unchecked
Omit version numbers: unchecked
Create TRANS.TBL files: unchecked
Follow symbolic links: unchecked
Hide TRANS.TBL files in Joliet: unchecked
ISO level: level 2
Input Charset:
Force input charset: unchecked
Any suggestions on how to implement this procedure entirely in linux would be appreciated.
ORIGINAL POST:
http://www.linuxquestions.org/questi...postid=1159723