Go to main content

Managing SMB File Sharing and Windows Interoperability in Oracle® Solaris 11.3

Exit Print View

Updated: December 2017
 
 

Configuring SMB Printing

SMB printing enables you to gain access to all of the CUPS (Common UNIX Printing System) printers. Each printer can be made accessible as SMB shares. The share names match the printer names, and the shared path is inherited from the print$ share that you create.

To enable support for SMB printing on your Oracle Solaris system, you must create a share called print$. The share path can point to any directory, which is used as the spool path for all SMB shared printers. This share must exist before you can print.

SMB printing is disabled by default, due to the print_enable property being set to false.


Note -  You cannot map the print$ share as a disk share. Attempts to do so might result in the Password prompt being issued but access being denied. This type of failure is reported in the system log.

After SMB printing is enabled, you can use the Windows Add Printer wizard to attach your Windows client to shared printers. The SMB shared printers are connected to the network and can be selected by name.

The following table points to the tasks that you can use to configure SMB printing.

Task
Description
For Instructions
Add a printer to the system.
Use the CUPS Print Manager tool to administer remote print queues.
Share a printer.
Use the CUPS Print Manager tool to share a printer.
Enable the SMB print service.
Use the sharectl command to enable the SMB print service.

How to Enable the SMB Print Service

  1. Become an administrator.

    For more information, see Using Your Assigned Administrative Rights in Securing Users and Processes in Oracle Solaris 11.3.

  2. Create and publish a share called print$.

    The share path can point to any directory, which is used as the spool path for all SMB shared printers.

    # zfs share -o share.smb=on -o share.path=/pool/dataset pool/dataset%print$
  3. Set permissions on the directory to permit root access.
    # chmod A=user:root:full_set:allow pathname
  4. Enable the SMB print service.
    # sharectl set -p print_enable=true smb
  5. Verify that the SMB print service is enabled.
    # sharectl get -p print_enable smb

    If the SMB print service is enabled, the print_enable property is set to true.

  6. (Optional) Refresh the SMB service if a CUPS printer is added after the SMB print service is first enabled.
    # svcadm refresh smb/server
Example 15  Enabling the SMB Print Service

This example assigns the print$ share to an existing directory, /tank/printspool, and enables the SMB print service.

# mkdir /tank/printspool
# zfs share -o share.smb -o share.path=/tank/printspool tank%print$
# chmod A=user:root:full_set:allow /tank/printspool
# sharectl set -p print_enable=true smb