I just installed service pack 2 for my Windows XP Home Edition. Can I remove
the service pack files folder in my windows folder?
Yes, but you probably don’t really want to.
Let me explain why.
Become a Patron of Ask Leo! and go ad-free!
The short answer is that if you remove it, you may at some future date be
asked to insert the Windows installation CD if Windows believes it needs to
install or repair an operating system file. The problem is that your CD
probably only has SP1 on it, if that. Windows will insist on your inserting the
SP2 disk – which you likely don’t have.
If you leave the folder, usually C:\WINDOWS\ServicePackFiles, and its
contents in place, then Windows can simply pick up what it needs, when it needs it
from there without ever bothering you.
It’s very much like the I386 folder that I’ve
discussed before. In fact, on my machine at least, there’s an I386 folder
within C:\WINDOWS\ServicePackFiles that actually contains all the
files updated by service pack 2. So the best way to think of that
ServicePackFiles is as an SP2 update to the I386 folder that may be elsewhere
on your machine.
your original installation CD if Windows ever needs it, as well as an SP2 CD if
you have one.”
•
In a sense the I386 folder (and the ServicePackFiles\I386 folder) are
conveniences. They’re really just there because the disk space to hold them is
small these days compare to drive sizes, and they allow Windows to silently and
quickly grab files it needs. The best example is when you install a new device.
Normally Windows would ask you for the installation CD in order to get the
drivers needed for that device. With the I386 folders already on your machine,
Windows can simply get what it needs from there. Presumably it first checks the
ServicePackFiles\I386 folder for updated files and if none are found it looks
in the original I386 folder.
You can delete it, just be prepared to need to insert your original
installation CD if Windows ever needs it, as well as an SP2 CD if you have
one.
The good news is that like the I386
folder, you can move your ServicePackFiles instead of deleting it. You just
need to change a registry setting to do so.
Using Registry Editor, locate the key
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup\SourcePath.
Here’s mine right now:
Here you can see that I’ve altered the SourcePath setting
to control where my I386 folder lives (I’ve placed it on a server named
“freenas” on my network in a shared “notenmax”, and in a folder
“\machine_specific\leo\i386” – note that the i386 portion isn’t specified in
the registry).
We can make a similar change for the ServicePackFiles by changing the
ServicePackCachePath and
ServicePackSourcePath entries. Here’s mine after making that
change:
Here you can see that I’ve told Windows to find the service pack files out
on that other server on my network. After copying the contents of the folder to
that location on that server, I can now safely delete ServicePackFiles on my
machine.
Thanks the inform yr new post.
It’s good answar for every question.
Thanks agan.
I noticed in your registry path to source the folder called machine_specific does this mean that I need a seprate folder for each of my Windows 2003 servers or can I create one and point all of my servers to the the same source path?
—–BEGIN PGP SIGNED MESSAGE—–
Hash: SHA1
I happen to have various versions of things, so I definitely need
machine-specific instances.
If the contents of the I386 directories on your various machines are identical,
then yes, you can point them all to the same location. My guess, though, is
that they may often be slightly different, in which case to be safe I’d keep
separate copies.
Leo
—–BEGIN PGP SIGNATURE—–
Version: GnuPG v1.4.7 (MingW32)
iD8DBQFHSFL8CMEe9B/8oqERAkpQAJ9uP6gSqKuyJh3buDd/IcCVkP+KFACfUFST
bNjHnYNoR9S7smpQte/r264=
=Z3/r
—–END PGP SIGNATURE—–
Well, I’ve removed my service pack files from WINDOWS folder 3 months ago and it never bothered me
Hey. The “ServicePackCachePath” has “/ServicePackCache” on it’s tail before you made the change, but not afterward! Shouldn’t that stay on there, making it’s value “\\freenas\notenmax\machine_specific\leo\ServicePackFiles\ServicePackCache”?
I have a windows\i386 file and not a c:\i386 file. Is this the same? Can I move it save to the D drive and change the registry??
I don’t mind the ServicePackFiles being on the disk but I want to exclude them from my weekly antivirus scan. How can I exclude files from anti-virus? My virus scan is running too long.
28-Oct-2008
Leo,
Are there other folders that can also be relocated, like the Fonts folder?
Also, the shortage of space on the boot drive can be a real a problem on upgraded machines. My wife’s computer was upgraded from Win98 to XP years ago, and I suspect there are other files and folders that could simply be deleted. Have you considered an article covering this aspect of the space problem?
Thanks Leo. I have a win32 partition that’s dead out of space and I can’t specify directory for a particular setup.exe. Now I can have both ServicePackFiles on an external and this gynormous phone application coexisting. Woohoo!
The files cannot be copied as they are in use.
Its always preferable to compress the folder servicepackfiles\I386 rather than deleting.
Just FYI, If you make this registry change, you may need to point the location in all the Windows Side-By-Side Assemblies to the same location. Once an assembly is installed, it retains the full path to the old service pack files folder. Notice about 80 entries of the following under codebases… so be preparred to actually edit each assembly’s location in the registry, because you still may wind up with the insert cd issue otherwise.
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionSideBySideInstallationsx86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.9792.0_x-ww_08A6620ACodebasesU_KB924667]
“Prompt”=”Windows Server 2003 KB924667 Source Files”
“URL”=”D:\Support\ServicePackFiles\i386/vcrtl.man”
To Leo & Jason Raymond
Thankyou both very much for this tip, you’ve just allowed me to resurrect my EeePC which was struggling badly with 10MB of free disk.
BTW I’ve also relocated the contents of “C:\WINDOWS\SoftwareDistribution\Download” (some 750MB) and am looking into the Fonts issue.
Q: What about “C:\WINDOWS\Installer” (700MB) any ideas on moving that beastie??
Cheers, Ian.
Trying to create a recovery/install CD for Windows XP Pro w/SP3. I cannot locate i386 folder in c:\ or c:\windows but there is an i386 folder at c:\windows\spervicepackfiles\i386. Is this what I need to make my CD? I’ve tried several methods and keep getting error messages like, cannot find NTLDR,and others even though said file(s) exist in the directory I am trying to burn to CD.
Wonderful clue, solved my disk space problem – I have a small partition for system. Thanks a lot!