cupsaddsmb - export printers to samba for windows clients


cupsaddsmb [ -H samba-server ] [ -U samba-user[%samba-password] ] [ -h cups-server[:port] ] [ -v ] -a
cupsaddsmb [ -H samba-server ] [ -U samba-user[%samba-password] ] [ -h cups-server[:port] ] [ -v ] printer [ ... printer ]


cupsaddsmb exports printers to the SAMBA software (version 2.2.0 or higher) for use with Windows clients. Depending on the SAMBA configuration, you may need to provide a password to export the printers. This program requires the Windows printer driver files described below.


cupsaddsmb supports the following options:
-H samba-server
Specifies the SAMBA server which defaults to the CUPS server.
-U samba-user[%samba-password]
Specifies the SAMBA print admin username which defaults to your current username. If the username contains a percent (%) character, then the text following the percent is treated as the SAMBA password to use.
Exports all known printers. Otherwise only the named printers are exported.
-h cups-server[:port]
Specifies a different CUPS server to use.
Specifies that verbose information should be shown. This is useful for debugging SAMBA configuration problems.

Samba Configuration

cupsaddsmb uses the new RPC-based printing support in SAMBA 2.2.x to provide printer drivers and PPD files to Windows client machines. In order to use this functionality, you must first configure the SAMBA smb.conf(5) file to support printing through CUPS and provide a printer driver download share, as follows:

	load printers = yes
	printing = cups
	printcap name = cups

	comment = All Printers
	path = /var/spool/samba
	browseable = no
	public = yes
	guest ok = yes
	writable = no
	printable = yes

	comment = Printer Drivers
	path = /etc/samba/drivers
	browseable = yes
	guest ok = no
	read only = yes
	write list = root

This configuration assumes a FHS-compliant installation of SAMBA; adjust the [printers] and [print$] share paths accordingly on your system as needed.

Microsoft Postscript Drivers For Windows

The base driver for Windows 2000 and higher is the Microsoft PostScript driver, which is available on any system running Windows 2000 or higher in the %WINDIR%\SYSTEM32\SPOOL\DRIVERS\W32X86\3 folder for 32-bit drivers and %WINDIR%\SYSTEM32\SPOOL\DRIVERS\X64\3 folder for 64-bit drivers.

However, currently only Windows 2000 and higher is supported by the Microsoft driver, so you will also need to get the Adobe driver to support Windows 95, 98, and Me clients. The Adobe and Microsoft drivers for Windows 2000 are identical.

Once you have extracted the driver files, copy the 32-bit drivers to the /usr/share/cups/drivers directory and the 64-bit drivers to the /usr/share/cups/drivers/x64 directory exactly as named below:

    [Windows 2000 and higher]

Note: Unlike Windows, case is significant - make sure that you use the lowercase filenames shown above, otherwise cupsaddsmb will fail to export the drivers.

Adobe Postscript Drivers For Windows 95, 98, And Me

cupsaddsmb can use the Adobe PostScript printer driver for Windows 95, 98, and ME, which are available for download from the Adobe web site (

The Adobe driver does not support the page-label, job-billing, or job-hold-until options.

Once you have installed the driver on a Windows system, copy the following files to the /usr/share/cups/drivers directory exactly as named below:

    [Windows 95, 98, and Me]

Note: Unlike Windows, case is significant - make sure that you use the UPPERCASE filenames shown above, otherwise cupsaddsmb will fail to export the drivers.

Known Issues

Getting the full set of Windows driver files should be easier.

See Also

smbd(8), smb.conf(5), http://localhost:631/help


Copyright 2007-2013 by Apple Inc.