We previously noted that iTunes 7.0.2 (and versions 7.0.1 and 7.0) makes a minor change to the way permissions are set on an executable that is located within the iTunes application package. As such, if you use Disk Utility (located in Applications/Utilities) to repair permissions after installing iTunes 7.0.x, you will see that the following changes have been made:
Permissions differ on ./Applications/iTunes.app/Contents/Frameworks/ InternetUtilities.bundle/Contents/MacOS/InternetUtilities, should be -rw-rw-r-- , they are -rwxrwxr-x
Essentially, this means that the InternetUtilities executable (located inside the InternetUtilities.bundle, inside the iTunes application package) has had its permissions changed to be executable for all users (Owner, group, and others).
This change would seem to make sense -- InternetUtilities is, after all, an executable file. In fact, this is the trend most Mac OS X applications have been following as of late, setting the executable bit for all users to on.
It would be natural to assume, however, that since Disk Utility looks at files in the /Library/Receipts folder to determine correct permissions, the iTunes-related receipt would be updated alongside iTunes 7.0.x, and the new permissions would be identified as correct.
The reason Disk Utility doesn't recognize the new permissions as correct, and changes them back to they way they were before iTunes 7.0.x (executable bit off for all users) is that -- as we've discussed in previous permissions coverage -- not all receipt files are scanned by Disk Utility. Only a hard-coded set of files is scanned, and this does not include the file iTunesX.pkg, which is the receipt updated alongside iTunes 7.0.x. The result is that, while iTunesX.pkg may included information about the updated permissions, it is ignored by Disk Utility which instead uses a different iTunes receipt (iTunes.pkg) to determine correct permissions.
What's not clear is the benefit of this change, and whether or not having the old permissions (executable bit turned off, as enacted by a permissions repair) can cause any problems. So far we haven't received any reports from readers indicating issues with iTunes 7.0.x after repairing permissions.
This case example is a good reminder that you should use the "Verify Permissions" option in Disk Utility first, and examine the intended changes before using the "Repair Permissions" option. You can then decide if you want to make all the permissions changes suggested.
[Thanks to Rosyna at Unsanity Software for engaging the above discussion]
- iTunes 7.0.2 (#3): Slow podcast downloads; Problems with long playlists; more
- iTunes 7.0.2 (#2): Language/country erroneously switched; Problems playing podcasts; more
- iTunes 7.0.2 released: Adds iPod Shuffle 2G support; "stability, performance enhancements"