It was a dark and stormy night.  Well in the office around the misbehaving Mac anyway.   Outside was bright and sunny. A typical day here.

(OK, no more novel-noir)

I had been called in to help install printer drivers on a new Mac Laptop (running 10.5.2).  The good folks at the company had done everything right in trying to install them, but they never worked.   A quick re-try showed me that the description on the phone had been correct. The installation reported no errors, but the printer was still unusable.

I did what I usually do when a printer problem was involved: I repaired disk permissions  (Google for disk-utility repair permissions  if you need info on this.)   It did its work and reported a few things, but nothing that seemed related to the printer drivers (at the time.)

Since this did not clear up the problem as it usually doea  (yes,  I told them to do this on the phone before I drove over), I started probing around with the terminal.   What I found was surprising.   After running a search for files with the printer’s name, I found various non-English language versions of  the driver in the system.

I couldn’t imagine how we managed to wind up with only some of the driver parts in the system.  I switched the preferred language and yes, I can now access the printer driver (or at least as much as I can tell since I don’t really speak the language I’m using.)

After switching back, I went back to the Disk Utility and checked a new report from repairing permissions more closely.   The only thing odd I found was a complaint in there about finding ACLs (Access Control Lists) in the system.  A quick trip to the terminal with (ls -laR /System | grep “+ ” )  showed that there were indeed some ACLs here and there in the system.  (Note that the grep comand is looking for plus character with a space following. That prevents false positives for most other appearances of + in the ls output. )

A trip through Google eventually revealed notes that ACLs should not be applied to items in the system folder.  So now I’m wondering why I’m finding them there.   Was it perhaps a bad installer?  Did something cough at the wrong moment?   (When I sat down to write this blog entry, I could not find an official Apple web page that specifically said “no ACLs in the System folder”, but I do recall reading this.  A different website about Mac support does mention the dangers of changing the permissions of a System folder.)

One article from Apple tells us that we can probably ignore “ACL found but not expected” messages in Disk Utility
<http://support.apple.com/kb/TS1448?viewlocale=en_US>
But that is not the case this time.

It seems that some of the ACLs were preventing files access to the english and spanish folders for printer drivers.  Other language folders were fine, and thus got their driver files.  Strangely,  I noticed that these folders didn’t have correct permissions either, but the problem was minor.

To shortcut to the solution,   I used this terminal command to remove all the ACLs from the system folder:

sudo chmod -R -N /System

You must be logged in as an administrator and give your password for sudo to run the chmod command with superuser privileges.   The “-R” option makes it do this to all the files and folders in all sub-folders of /System.   The “-N” command makes it remove ALL  ACLs in all those files and folders.

(For those not comfortable with terminal commands, there are alternative programs that will do this.)

After this,  running Disk Utility to fix disk permissions worked fine.   It reported a LOT of printer-related folders that it adjusted.   And after that was done, running the installer for the printer driver worked perfectly.  We added the printer and tested it.  It printed fine.