Off-Line Windows Updates With CTUpdate
Currently in our environment we have 2 ways of imaging:
1. On the local network
2. On a private network
The issue that we ran into was that we wanted to update the machine with the latest Windows updates on either network.
The solution to this is a free product called CTUpdate.
Wiki: http://michaelboman.org/wiki/index.php?title=CTUpdate
CTUpdate is an application that downloads windows updates for Windows 2000 - server 2008. Both x86 and x64 flavors. Also it will update office 2000 - 2007 including service packs.
Now it can also update .Net and use your current WSUS servers to ensure that only the updates that are approved are going to be installed.
Summary of Use
Currently we have a folder with all the updates that copy to the machine before the machine starts into windows. Once the machine starts up and auto logs-in a quick script is run that will run the updates that CTUpdate had downloaded, with a restart when it is done with the updates it can install at that point. (Many updates require a restart before more updates can be installed) It then repeats the CTUpdate script and restart 3 more times to make sure that all updates are installed and then it moves on with the job. Keep in mind that in sysprep auto admin login is set to login 4 times for the updates to install.
How to Use CTUpdate with DS
- Download CTUpdate 5.0 http://www.heise.de/ct/projekte/offlineupdate/down...
- Extract it on a desktop machine, anywhere you like. This does not install anything. NOTE: It is not advised to try to run this on a server due to internet restrictions on most servers.
- Run UpdateGenerator.exe from the ctupdate50\ctupdate4 folder. Select the OS that you want to download the updates for and also select the Office versions that you would like it to update also and click Start. when it is done the client folder in the ctupdate50\ctupdate4 folder now contains everything you need to install updates that you had the update generator download.
NOTE: XP and Office 2007 with service packs included is 1.38GB. You will see why this is important in the next step. - Copy the Client folder in ctupdate50\ctupdate4 to a removable storage device such as a thumb drive or external hard drive.
- Create an update folder in the express folder on your DS and copy the Client folder from the removable storage device to the Update folder. (The removable storage device must be connected to the actual server, otherwise in Windows Server 2003 SP1 all of the .exe will be blocked and you will have to unblock them all for everything to run correctly)
- In an imaging job, after the image has been copied down, copy the contents of the Updates folder to the root of C:
We use Linux to do our imaging. I think there are ways to copy with Windows PE. I know DOS will not work due to the 8.3 naming conventions.
Linux way:
#!/bin/bash # # Systems Support -- Illinois State University 2008 # By: Andrew Williams (williams.andrew@gmail.com) # # Use: Used by Altiris Deployment Server for copying files to host machine # # REMEMBER CASE SENSITIVTY !!!!!!!! # # DS server mount point -> This is equal \\DSSERVER\eXpress in windows PREFIX="/mnt/ds/" # Folder/file underneath DS DS_LOCATION="updates" # Destination.. do NOT include drive letter DEST="" # # Dont change this line, change everything above firm -recurse copy $PREFIX$DS_LOCATION prod:/$DEST 2>&1 1>/dev/tty1
- Once windows has auto logged-in Run DoUpdate.cmd
Below is an example of running it so it will install IE 7 and the latest .Net script task.
REM Run Updates c:\client\cmd\DoUpdate.cmd /instie7 /instdotnet
All of the command switches are in the Doupdates.cmd in the Client\cmd folder. Just open it with notepad.
- When it has installed the updates that it can for that round it will send a 0 on close of the DoUpdate.cmd. Create a power control task to restart.
- Run the tasks from steps 8 and 9 over and over as many times as you think you need to, it really depends on how old your image is.
Updating the CTUpdate with the Latest Windows Updates
To update the client folder just do Steps 3,4,&5
If you have any questions or suggestions please feel free to contact me or leave a comment.


Large Files
You could also skip sending the files down to your newly imaged machine. Just simply call the
\\DSSERVER\EXPRESS\cmd\DoUpdate.cmd /instie7 /instdotnet
from a task this way when you don;t have to keep firming over the patches.
Also I could recommend skipping this process all together and updating your core image utilizing your methods and recutting your image, this will save a a ton of time since you only need to do it once instead of each and everytime you image a pc.
It is not that bad
All the updates go over in less than 2 minutes. One issue is service SP3 takes the most time to run. All this does is makes sure that the job is as up-to-date as possible with out human interaction. I only really need to touch my build every few months instead of every other week.
Thank you for replying.
For more Linux imaging checkout TheDude05 articles
SP3
I would highly recommend that you update your image with SP3 since the install time alone would be a cost saving measure. Not to mention a machine with SP3 as its base will not have to the additional space wasted for the installer and its BACKUP saving on the lines of 200-400mb of space :)
True, Butt.....
I have a build that has SP3, but this is nice for me because now I dont need to touch my build every week to make sure that it is current. Instead I just run the updater and upload the client folder.
One of the last steps in my current build process is to delete the client folder.
For more Linux imaging checkout TheDude05 articles
For more Linux imaging checkout TheDude05 articles
UPDATE
2 main updates to report
2. Since I now have a SP3 XP build I was able to not have have the SP3 installer (and the updates leading to it). I now download the Client folder in less than a minute.
For more Linux imaging checkout TheDude05 articles
Would you like to reply?
Login or Register to post your comment.