X

Re-running Mac OS X combo updater does not overwrite newer updates

Newer files are not overwritten by re-installed Mac OS X combination updater.

CNET staff
3 min read

We routinely recommend that users re-apply the most recent Mac OS X combo updater (available from Apple's software download page) when significant issues arise after applying a major system update. The reasons this workaround is so effective are varied, but one is that re-installing the combination update can replace components that were damaged during the initial update process (the combo update is larger in size than the version-to-version [i.e. 10.4.8 -> 10.4.9] or "delta" update and makes any incremental release current [e.g. 10.4.1 -> 10.4.9])

Recently, some readers have inquired whether this process overwrites changes made by newer updates. For instance, will re-applying the Mac OS X 10.4.9 combo updater undo changes enacted by Security Update 2007-004, reverting system components to their earlier versions?

MacFixIt reader Nelson presents the query thusly:

"A friend of mine running Mac OS X 10.3.9 with WiFi issues related to the Security Update 2007-004 regained Airport function by reinstalling the 10.3.9 Combo Installer. Afterwards I started wondering - does he need to redo the Security Updates? However, when he ran Software Update it reported that 'all was well' with no updates needed. I wonder though if this is really the case? Does Software Update check a listing that is unaffected by the Combo reInstaller - and hence think that the Updates have been applied when actually the software is reverting to a pre-Updated condition? Or, does the 10.3.9 Combo Installer include Security Updates?"

The answer is no, re-applying the most recent Mac OS X combination updater willnot undo changes made by subsequent system updates. The Mac OS X installer application is smart enough to only overwrite file versions that are older than those contained in the designated package.

UPDATE: We verified this phenomenon as such:

  1. Inspected the startup volume of an Intel-based Mac running Mac OS X 10.4.9 that had not yet received Security Update 2007-004, and noted the following component versions:
    • /System/Library/CoreServices/loginwindow.app -- version 4.6.5
    • /System/Library/Extensions/AirPort.kext -- version 3.4.8
  2. Inspected the Universal Security Update 2007-004 package and noted the versions of several components that are replaced with new versions by the update, including:
    • /System/Library/CoreServices/loginwindow.app -- version 4.6.6
    • /System/Library/Extensions/AirPort.kext -- version 3.4.9
  3. Applied Security Update 2007-004
  4. Took note of the versions of several components replaced by the update. After applying the update, the following components carried these version numbers on the startup volume (as expected):
    • /System/Library/CoreServices/loginwindow.app -- version 4.6.6
    • /System/Library/Extensions/AirPort.kext -- version 3.4.9
  5. Looked inside the Mac OS X 10.4.9 combo updater package and noted the versions of the same components listed above, which were as follows:
    • /System/Library/CoreServices/loginwindow.app -- version 4.6.5
    • /System/Library/Extensions/AirPort.kext -- version 3.4.8
  6. Re-applied the Mac OS X 10.4.9 combo updater.
  7. Again inspected the versions of the aforementioned components on the startup volume, which remained as follows:
    • /System/Library/CoreServices/loginwindow.app -- version 4.6.6
    • /System/Library/Extensions/AirPort.kext -- version 3.4.9

As is obvious, these components -- updated by Security Update 2007-004 -- were not overwritten by the older versions included in the Mac OS X 10.4.9 combo updater.

You can, however, force the installation of older versions of specific components with the aid of Pacifist. This can be useful in situations where a newer component causes problems that can be alleviated by reverting to the older version. For instance, if a new version of the AirPort kernel extension (/System/Library/Extensions/AppleAirport.kext) breaks wireless connectivity, you can force installation of an older version of this kernel extension via these steps:

  1. Download the appropriate combo updater from Apple's download page.
  2. Download and install the shareware application Pacifist
  3. Drag the Mac OS X combo installer package (e.g. MacOSXUpd10.4.9Intel.pkg) onto the Pacifist application icon.
  4. Find the file you are looking for by clicking the disclosure triangles to reveal the targeted location.
  5. Select the file in question and click the Install button in Pacifist. You will be required to enter your administrator password.
  6. Restart your Mac

You should generally not mix and match components from different system versions because of potential compatibility issues. You will also lose any refinements brought about by the revision. Still, in a bind, replacing newer items with older ones can solve otherwise insoluble issues.

Reference:

Feedback? Late-breakers@macfixit.com.

Resources

  • software download page
  • Pacifist
  • Apple's download page
  • Re-installing components t...
  • Late-breakers@macfixit.com
  • More from Late-Breakers