Where are USB serial drivers installed on the Mac? How can I check which drivers are installed, and how do I remove a driver?
MacOS – drivers installed on the Mac
drivermacos
Related Solutions
Since Mac OS 10.2, printing is handled by the CUPS system. While drivers are typically found in /Library/Printers
, the folder can contain support files and many other things which are not themselves print drivers, and in the real world there is no canonical location within the folder where the actual driver files are stored.
The only authoritative list of available print drivers on OS X is that returned by lpinfo -m
(specifying the host is not necessary for the local machine). CUPS specifies that drivers can consist of an arbitrary number of files, but they must all be declared in a central PPD file. lpinfo -m
will parse any valid PPDs found; if it doesn't have a PPD that CUPS can parse, then it isn't a valid print driver. A sample of the output:
MacBook-Pro:~ user$ lpinfo -m
Library/Printers/PPDs/Contents/Resources/CNPZUD450ZU.ppd.gz Canon D400-450
Library/Printers/PPDs/Contents/Resources/CNPZUD490ZU.ppd.gz Canon D460-490
Library/Printers/PPDs/Contents/Resources/CN6300.ppd.gz Canon iPF6300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6300S.ppd.gz Canon iPF6300S(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6350.ppd.gz Canon iPF6350(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300.ppd.gz Canon iPF8300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300S.ppd.gz Canon iPF8300S(CUPS)
[...]
drv:///sample.drv/okidata9.ppd Oki 9-Pin Series
drv:///sample.drv/okidat24.ppd Oki 24-Pin Series
raw Raw Queue
[...]
Each line specifies the path to that driver's PPD file, followed by the display name of the printer as declared in the PPD. As you can see, some drivers are internal to CUPS and do not even have a PPD file in /Library/Printers
, so lpinfo -m
is the only way to be certain of everything available to the printing system.
There doesn't seem to be much consistency regarding version numbers; I've seen some vendors include the version in the make-and-model string that's returned by lpinfo -m
(Xerox, for example), but it's certainly not universal. However, the PPD file is just plaintext (optionally compressed). If you open the PPD in a text editor you should find a *FileVersion
line that lists the driver version.
Deleting a printer using the 'minus' button in System Preferences does not delete/uninstall the driver, it just deletes the queue that has been created for the printer in question. (Technically, when you create a printer queue, a copy of the PPD is created for that printer, which will be deleted when deleting the queue.) The 'Reset printing system...' option will also not remove any drivers; it will only delete all configured print queues and reset some CUPs configuration to defaults.
Deleting a PPD file listed by lpinfo
will effectively delete the driver, as it will no longer be loaded by the CUPS system, though as explained above there may be additional support files left behind. There is no standard way to remove these because each driver can include support files in different places, but there is no cause to delete them unless you are intending to reinstall the driver. In that case, the original installer package from the manufacturer should handle re-installation of all relevant files.
I have sometimes seen people manually copying PPD files as a means of installing printers; do not rely on this! Some drivers require only a PPD but others may need support files as well. The only way to be sure all necessary files are installed is to use the original installer package.
Since you didn't mention you had a backup of the system or if you are equipped to troubleshoot a driver issue, you should probably not update things unless you have a problem.
Apple vets the drivers it provides to be sure they work well with Mac hardware - so although you are free to update drivers, you are skipping that vetting process. Unless the driver manufacturer messed up, you will should be as fine as any other user updating the driver so it's more an edge case of them not testing the new driver on Mac hardware than something that should break.
Apple's drivers are typically for the screen resolution, trackpad, system sensors and it's unlikely those need a change since your Mac hardware hasn't changed in most cases.
Related Question
- MacOS – the latest drivers for the Intel HD Graphics 4000
- Windows – The Boot Camp USB drivers paradox
- MacBook – j5create USB to HDMI drivers saved
- Scanner drivers located, and what (file) form do they take
- MacOS – CP2102 device is not listed in /dev on macOS 10.13
- How to Reset all Drivers to Factory Default
- Mac – Cannot find serial device
- MacOS – Intuos 3 Drivers for Mac OSX Sierra (10.12)
Best Answer
Hardware Drivers in OS X are typically in the form of Kernel Extensions and the primary location is
/System/Library/Extensions/
however they can also be within an Application Bundle. You can usekextunload
to unload a Kernel extension. To see what Kernel extensions are loaded use thekextstat
command in a Terminal.Have a look at the manual page KEXTUNLOAD(8) and also the Unloading a Kernel Extension with kextunload section in How to Load & Unload Kernel Extensions in OS X, excerpt show below.