Saturday, January 5, 2008

AirPortAtheros5424.kext and pkgutil

So I boot my Mac in verbose mode, mostly for the geekiness factor. But sometimes, you see a problem that needs fixing.

First off, to turn on verbose booting permanently, simply run "sudo nvram boot-args=-v" on the command line. nvram is the interface to the OpenBoot BIOS environment of PowerPC based macs. To my surprise, this works with Intel systems as well. It's one of those little things that make Apple such a great software company.

The error that caught my attention was:

a link/load error occured for kernel extension /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortAtheros5424.kext
You can grep for this error in your /var/log/system.log .

I did some searching and came up empty-handed, which is why I'm posting this. I think this is a leftover from upgrading my system from 10.4 to 10.5.

I'm pretty sure, because 10.5 now has a package database! You can actually find out which package installed a file now (provided the file was part of a package and not a drag'n'drop installer of course).

You can query this database using the command pkgutil. Just typing it at the command line will give you a lengthy usage statement. The option we're interested in is --file-info:

$ pkgutil --file-info /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortAtheros.kext
volume: /
path: System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortAtheros.kext

pkgid: com.apple.pkg.BaseSystem
pkg-version: 10.5.0.1.1.1192168948
install-time: 1194966975
uid: 0
gid: 0
mode: 40755

So we know that the AirPortAtheros.kext plugin is installed by Leopard. The same search for AirPortAtheros5424.kext comes up empty, however.

Therefore we can conclude that AirPortAtheros5424.kext isn't owned by anything Leopard installed, and therefore I moved it away. The error is now gone and my wireless card is still functional.

I guess doing this doesn't buy you much but at least reading this taught you about the pkgutil command ;-)