System Administration Guide: Printing

Chapter 5 Setting Up Printers by Using LP Print Commands (Tasks)

This chapter describes how to set up printers and make those printers accessible to systems on the network by using LP print commands.

This is a list of the information that is in this chapter:

For overview information about printing, see Chapter 1, Introduction to Printing in the Oracle Solaris Operating System.

Setting Up Printers by Using LP Print Commands (Task Map)

Task 

Description 

For Instructions 

Add a new directly attached printer by using LP print commands. 

Use LP print service commands to make the printer available for printing after you physically attach the printer to a system.  

How to Add a New Directly Attached Printer by Using LP Print Commands

Use the lpadmin command to add a printer queue with localhost specified as the host name.

Use the lpadmin command with the -s option to specify localhost as the host name when setting up a local print queue. This modification was added to enable print servers to maintain the same print host name, localhost, independent of the machine host name.

How to Add a Print Queue With localhost Specified as the Host Name (LP Print Commands)

Add a new network-attached printer by using LP print service commands. 

Use LP print commands add a new network-attached printer. 

How to Add a New Network-Attached Printer by Using LP Print Commands

Add a remote print queue for a printer that is connected to a Oracle Solaris print server by using IPP. 

To add access to a remote print queue by using IPP, there are two methods that you can do one of the following:

  • Use the lpadmin command.

  • Use the lpset command.

How to Set Up a Remote Printer That is Connected to a Print Server by Using IPP

Add a new network-attached printer by using the printer vendor-supplied software. 

Use Printer vendor supplied tools to configure a network-attached printer after you physically connect the printer to the network. 

How to Add a Attached Network Printer by Using Printer Vendor-Supplied Tools

Setting Up Directly Attached Printers by Using LP Print Commands

The following table describes each of the printer definitions that you can define when setting up a new printer or modifying an existing printer by using the lpadmin command.

Printer Definition 

Print Command Option 

Description 

Example 

Default Setting 

Required/Optional? 

Printer Name

-p

Name of printer 

laser1

N/A 

Required to install an attached or network-attached printer 

Print server

 

Name of print server 

venus

Use localhost for Printer Server

Required to install an attached or network-attached printer 

Description

-d

User defined string 

laser printer near breakroom

N/A 

Optional 

Printer Port

-v

Device that the printer is attached to 

/dev/term/a

/dev/term/a

Required to install an attached printer 

Printer Type

-T

Type of printer 

unknown

PostScript

Required to install an attached printer or a network-attached printer without PPD files 

File Content Type

-I

Content to be printed 

any

PostScript

Required to install an attached printer or a network-printer printer without PPD files 

PPD file name 

-n

Full path to the PPD file and file name with .ppd extension.

path/necprinter.ppd

N/A 

Optional 

Fault Notification

-A

Specifies how to notify user of errors 

-A mail

Write to superuser

Optional 

Default Printer 

-d

Identifies the default printer 

N/A 

N/A 

Optional 

Banner Page control Menu: 

-o

Select whether to print banner page 

-o banner=never

-o banner=optional

Optional 

Specifying a PPD File When Setting Up a Printer

To specify a PPD file when adding or modifying a printer by using LP print commands, use the lpadmin command with the -n option. For example, to add a print queue named foobar for a Lexmark printer, you would type the following command:


# lpadmin -p foobar -v device -I postscript -m standard_foomatic \
-n /path/Lexmark-Optra_E312-Postscript.ppd.gz

When using the lpadmin -n command to specify a PPD file, you must provide the full path to the PPD file.

If you use the lpadmin -n command to add a PPD file, and the repository that you specify in the PPD file path does not exist on the system, a copy of the PPD file is stored in the user label directory, within the user repository. This directory is located at /var/lp/ppd/user/manufacturer/ppd-file. The Solaris Print Manager cache is then updated to reflect the printer information from the recently added PPD file. For more information, see the ppdmgr(1M) man page.

ProcedureHow to Add a New Directly Attached Printer by Using LP Print Commands

This procedure describes how to add a new attached printer specifying a PPD file by using the lpadmin command with the -n option. Two examples follow this procedure. The first example illustrates how to add a new attached printer that is associated with a PPD file. The second example shows how to add a new attached printer that is not associated with a PPD file.

  1. Connect the printer to the system, then turn on the power to the printer.

    Consult the printer vendor's installation documentation for information about the hardware switches and cabling requirements.

  2. Log in to the print server and become superuser or assume an equivalent role.

  3. Collect the information that is required to configure an attached printer with PPD files.

    • Printer name and port device

    • File content type

    • PPD file

    To determine the PPD file that the printer will use, first define the printer make, model, and driver.

    For overview information about using PPD files when adding a new printer or modifying an existing printer by using LP print commands, see What's New in Printing?.

  4. Define the printer name, port device, file content type, and PPD file that the printer will use.

    When using PPD files, the file content type is typically PostScript.

    1. Specify the printer name and the port device that the printer will use.


      # lpadmin -p printer-name -v /dev/printers/0
      

      The device to use is /dev/printers/0.

      You can now use the -s option with the lpadmin command to specify the print service host name as localhost. For more information, see How to Add a Print Queue With localhost Specified as the Host Name (LP Print Commands).

    2. Specify the interface script that the printer will use.


      # lpadmin -p printer-name -m standard_foomatic
      
    3. Specify the file content type and the PPD file that the printer will use.


      # lpadmin -p printer-name -I content-type -n /path/ppdfile
      

      The PPD file that you supply is located in the /path directory.


      Note –

      If /path is not a PPD file repository on the system, then a copy of the PPD file is placed in the user label directory in the user PPD file repository. For more information, see Administering PPD Files by Using the PPD File Management Utility (Task Map).


    4. Specify the printer description.


      # lpadmin -p printer-name -D "printer-description"
      

    For more information, see the lpadmin(1M) man page.

  5. (Optional) Add filters to the print server.


    # cd /etc/lp/fd
    # for filter in *.fd;do
        > name=`basename $filter .fd`
        > lpfilter -f $ name-F $ filter
        > done
    
  6. Enable the printer to accept print requests and to print those requests.


    # accept printer-name
    # enable printer-name
    
  7. Verify that the printer is correctly configured.


    # lpstat -p printer-name -l
    

    The output of the lpstat command will list the PPD file that you used.


Example 5–1 Adding a New Directly Attached Printer by Specifying a PPD File

This example shows how to add a new attached printer with PPD files. Using he -n option with the lpadmin command enables you to add a new print queue by specifying PPD files. The following information is used as an example only.


# lpadmin -p paper -v /dev/printers/0 (1)
# lpadmin -p paper -I postscript (2)
# lpadmin -p paper -m standard_footmatic (3)
# lpadmin -p paper -n /path/Lexmark-Optra_E312-Postscript.ppd.gz(4)
# lpadmin -p paper -D "Color printer on third floor, rm 3003" (5)
# cd /etc/lp/fd

# accept paper
	destination “paper” now accepting requests 
# enable paper	(6) 
printer “paper” now enabled 
# lpstat -p paper (7)
printer paper is idle. enabled since Feb 28 11:21 2004...
  1. Defines the printer name and the port device that the printer will use

  2. Sets the file content types to which the printer can print to directly

  3. Specifies the interface script for utilizing PPD files


    Note –

    This command also copies the PPD file to the user label in the user PPD file repository, if /path is not in an existing PPD file repository on the system.


  4. Specifies the path to the PPD file and the PPD file name

  5. Adds a description for the printer

  6. Accepts print requests for the printer and enables the printer

  7. Verifies that the printer is ready for printing



Example 5–2 Adding a New Directly Attached Printer Without Specifying a PPD File

This example shows how to add a new attached printer without associating it with a PPD file. The commands in this example must be executed on the print server where the printer is connected. The following information is used as an example only.

  1. Gives lp ownership and sole access to a port device

  2. Defines the printer name and the port device that the printer will use

  3. Sets the printer type of the printer

  4. Specifies the file content types to which the printer can print directly

  5. Adds a description for the printer

  6. Accepts print requests for the printer and enables the printer

  7. Verifies that the printer is ready for printing


See Also

ProcedureHow to Add a Print Queue With localhost Specified as the Host Name (LP Print Commands)

This procedure shows how to use LP print commands to add a local print queue with the localhost option specified as the host name in the print system databases. Note that you can also modify a configured print queue to use localhost as the host name.

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. Set the print host name to localhost.


    # lpadmin -p new-print-queue -s localhost -v device
    
  3. Check the entry in the /etc/printers.conf file.


    # lpget new-print-queue
    new-print-queue:
            bsdaddr=abc,new-print-queue,Solaris

    If the print queue was created or modified successfully, the output of the lpget command returns the name of the new or modified print queue.


Example 5–3 Adding a Print Queue With localhost Specified as the Host Name

This example shows how to add a new print queue, paper, by using the lpadmin command with the -s option to specify localhost as the host name.


$ su - root
# lpadmin -p paper -s localhost -v /dev/ecpp0

# lpget paper
paper:
        bsdaddr=localhost,paper,Solaris


Example 5–4 Adding a Print Queue by Using the Default Behavior of lpadmin to Specify the Host Name

This example shows the default behavior of the lpadmin command for using system host name, abc, when adding a new print queue.


$ su - root
# lpadmin -p newspaper -v /dev/printers/0

# lpget newspaper
fargo:
        bsdaddr=abc,newspaper,Solaris


Example 5–5 Modifying a Print Queue to Use localhost as the Host Name

This example shows how to modify an existing print queue, newspaper, and specify localhost as the new print server name.


$ su - root
# lpadmin -p newspaper -s localhost

# lpget newspaper
newspaper:
        bsdaddr=localhost,newspaper,Solaris

See Also

For information about specifying localhost as the print server's host name when adding or modifying a print queue with Solaris Print Manager, see How to Add a Print Queue With localhost Specified as the Host Name (Solaris Print Manager).

Setting Up Network-Attached Printers by Using LP Print Commands

A network-attached printer is a hardware device that is directly connected to the network. This printer can be accessed from a print server without physically connecting the printer to the print server with a cable. The network-attached printer has its own system name and IP address.


Caution – Caution –

Configuring a network-attached printer without utilizing queue configuration on a print server is an unsupported method that results in printer misconfiguration.

You can correctly configure a network-attached printer by using Solaris Print Manager. Select the New Network Printer option. Or, you can use the lpadmin command to correctly configure a network-attached.

Do not use the lpadmin -p queue-name -s printer-name command or the Add Access to Printer option of Solaris Print Manager to add a network-attached printer. These methods should be used exclusively to point to an already existing queue on a remote print server. The print server includes queuing, filtering, and print administration capabilities for a network-attached printer. Printing directly to a network-attached printer results in a printer misconfiguration that is likely to cause a number of problems. Additionally, job options, such as copies, the use or disuse of burst page, and filtering, are lost.


Network printers might use one or more special protocols that require a vendor-supplied printing program. The procedures that are used to set up the vendor-supplied printing program can vary. If the printer does not come with vendor– supplied support, Oracle Solaris network-attached printer support can be used with most devices. Use the printer vendor-supplied software, whenever possible.

The vendor might supply an SVR4 printer interface script to replace the standard printer interface script. If so, that SVR4 interface script calls the vendor-supplied printing program to send the job to the printer. If not, you need to modify the standard interface script to call the vendor-supplied printing program. To do so, edit the per-printer copy of the standard interface script to call the vendor-supplied printing program.

The following are the terms that are used in network-attached printer configuration. For a complete description of printing terms, see Glossary.

Oracle Support for Network Printers

If the network printer vendor does not provide software support, Oracle supplied software is available. The software provides generic support for network printers and is not capable of providing full access to all possible printer attributes.

A general discussion of how to add a network-attached printer is provided in Setting Up Network-Attached Printers by Using LP Print Commands. The following is a discussion of printer management when you use the Oracle supplied software.

Invoking Network Printer Support

The software support for network printers is called through the network interface script netstandard. Configuring a network-attached printer with this script causes the network-attached printer support module to be called. Here is the command to configure the printer with the network support.


lpadmin -p printer-name -m netstandard 

Selecting the Printer Node Name

You select the printer node name. This name must be unique, as with any node on the network. The printer node name is associated with the IP address of the printer.

Selecting the Destination Name (Also Called the Network Printer Access Name)

The print subsystem requires access information for the printer. The subsystem uses the destination name when making the network connection to the printer. You supply this name to the print subsystem by using the lpadmin command. This name then becomes part of the printer configuration database. The printer access name is the name of the printer node, sometimes qualified by a port name. Port designation varies across printer vendors. You can find information about port designation in the printer documentation.

Here is the format of printer access name:

printer-node-name[:port-designation]

Destination names can be specified in one of three forms:

Atomic (simple)

(destination) - Is resolved by locating a printer-uri-supported key/value pair for the named destination in the printers.conf or the printers configuration database. If no printer-uri-supported key is found for an entry, it's bsdaddr value is converted to printer URI form and used.

For more information, see the printers(4) and printers.conf(4) man pages.

Printer URI

(scheme://endpoint) - Is completely resolved and specifies the protocol and communication endpoint to contact for print services. This form of destination name is useful for accessing print services outside of your system's current management domain. Since the name includes the protocol to use when contacting the print service, you can select a richer protocol than the RFC-1179 protocol.

POSIX

(server:queue[:extensions]) - Is complete and resolves to an equivalent printer URI form of lpd://server/printers/queue[#extensions] This form is being maintained for backward compatibility only. The printer URI form is the preferred replacement.


Example 5–6 Destination Name (or Network Printer Access Name) With Port Designation (Number)

A common port designation with TCP is 9100. If the printer node name is pn1, and the printer vendor defines the port as 9100, then the printer access name is pn1:9100. To configure a printer in this case, use the following command:


lpadmin -p printer_name -o dest=pn1:9100


Example 5–7 Destination Name (or Network Printer Access Name) With BSD Port Designation (Name)

When you use the BSD protocol, the port designation might not be a number, but some name defined by the printer vendor, for example: xxx_parallel_1. If the printer node name is cardboard, then the printer access name is cardboard:xxx_parallel_1. To configure a printer in this case, use the following command:


lpadmin -p printer-name -o dest=cardboard:xxx_parallel_1


Example 5–8 Destination Name (or Network Printer Access Name) With No Port Designation

If there is no port designation, and the printer node name is newspaper, the printer access name is the printer node name: newspaper. To configure a printer in this case, use the following command:


lpadmin -p printer-name -o dest=newspaper

Selecting the Network Printing Protocol

By default the LP print service uses the BSD print protocol and raw TCP to communicate with the printer. The printer vendor documentation provides information about which protocol to use. In general, the TCP protocol is more generic across printers.


Note –

The Device URI protocol was introduced in the Solaris 10 5/08 release. This protocol enables remote printer access. You can specify a device-uri when adding a network-attached printer by using the lpadmin command or by using Solaris Print Manager.


To select the BSD protocol, type:


lpadmin -p printer-name -o protocol=bsd

To select the TCP protocol, type:


lpadmin -p printer-name -o protocol=tcp

If the protocol that is selected is the BSD print protocol, you can further select the order of sending the control file to the printer. Some printers expect the control file, then the data file. Other printers expect the reverse. For this information, see the printer vendor documentation. The default is to send the control file first.

To select the order, type one of the following commands:


lpadmin -p printer-name -o bsdctrl=first

lpadmin -p printer-name -o bsdctrl=last

Setting the Timeout Value

The timeout option allows the user to select the amount of time (in seconds) to wait between successive attempts to connect to the printer. Some printers have a long warm up time, and a longer timeout value is advised. The default is 10 seconds.

The timeout value does not impact the success or failure of the print process. The value is a seed value that the software uses as the initial timeout count. On repeated failures, this count is increased. A message is sent to the spooler when repeated attempts to connect to the printer fail. This message alerts the user that intervention might be required. The failure could be anything from the printer being turned off to the printer being out of paper. If these messages are produced too often, for example when the printer is warming up, increasing the timeout value will eliminate spurious messages.

You can experiment to find the optimal timeout value. Type the following command to set the timeout value:


lpadmin -p printer-name -o timeout=n

Managing Network-Attached Printer Access

Each network-attached printer should have only one server that provides access to the printer. This restriction enables the server to manage access to the printer and keep jobs coherent.

The default device for the network-attached printer is /dev/null. This device is sufficient when the printer has only one queue. If more queues are required, set the device to a file. This setting enables the print system to restrict access to the printer across queues. The following commands create a device file and configure it as the network-attached printer device.


touch /path/filename
chmod 600 /path/filename
lpadmin -p printer-name -v /path/filename

The following is an example of how to create a device file called devtreedown.


# touch /var/tmp/devtreedown
# chmod 600 /var/tmp/devtreedown
# lpadmin -p treedown -v /var/tmp/devtreedown

ProcedureHow to Add a New Network-Attached Printer by Using LP Print Commands

This procedure describes how to add a new network-attached printer with the expanded printer support that enables you to associate a PPD file with a printer during its configuration. There are two examples that follow this procedure. The first example illustrates how to add a new network-attached printer with PPD files by using lp commands. The second example shows how to add a new network printer without PPD files by using lp commands.

The following steps are required to set up a network-attached printer by using the network printer support software. The use of this software is intended for printers that do not come with vendor-supplied software.

  1. Connect the printer to the network, and turn on the power to the printer.

    Consult the printer vendor's installation documentation for information about the hardware switches and cabling requirements. Get an IP address and select a name for the printer node. This step is equivalent to adding any node to the network.

  2. Collect the information that is required to configure a new network-attached printer with PPD files.

    • Printer name and port device

    • Network printer access name

    • Protocol

    • Timeout

    • File content type

    • PPD file

    To determine the PPD file, first define the printer make, model, and driver that the printer will use.

    For more information, see the terms that are described in Setting Up Network-Attached Printers by Using LP Print Commands.

  3. On the print server, log in and become superuser or assume an equivalent role.

  4. Define the printer name, port device, file content type, and PPD file that the printer will use. When using PPD files, the file content type is usually PostScript.

    1. Specify the printer name and the port device that the printer will use.


      # lpadmin -p printer-name -v /dev/null
      

      The device to use is /dev/null.

      You can use the -s option with the lpadmin command to specify the print service host name as localhost. For more information, see How to Add a Print Queue With localhost Specified as the Host Name (LP Print Commands).

      You can use the -v option to specify a device-uri. The protocol enables you to access remote printers. For more information, see Using Printing Protocols in the Oracle Solaris Release.

    2. Specify the interface script that the printer will use.


      # lpadmin -p printer-name -m netstandard_foomatic 
      

      The interface script that is supplied with the support software for a network-attached printer is /usr/lib/lp/model/netstandard_foomatic.

    3. Specify the file content type and PPD file that the printer will use.

      When using PPD files, the file content type is usually PostScript.


      # lpadmin -p printer-name -I content-type -n 
      /path/ppdfile
      

      The PPD file that you specify is located in the /path directory.


      Note –

      If /path is not a PPD file repository on the system, then a copy of PPD file is placed in the user label directory in the user PPD file repository. For more information, see Chapter 11, Administering Printers by Using the PPD File Management Utility (Tasks).


      For more information, see lpadmin(1M) man page.

    4. Specify the printer description.


      # lpadmin -p printer-name -D  "printer-description"
      
  5. Set the printer destination, protocol, and timeout values.


    # lpadmin -p printer-name -o dest=access-name:port -o protocol=protocol
    -o timeout=value
    
    -p printer-name

    Specifies the network printer name.

    -o dest=access-name:port

    Sets the printer destination to the network printer access name and a designated printer vendor port, if the port is defined in the printer vendor documentation.

    -o protocol=protocol

    Sets the over-the-wire protocol used to communicate with the printer. Both BSD and raw TCP are supported.

    -o timeout=value

    Sets a retry timeout value that represents a number of seconds to wait between attempting connections to the printer.

  6. (Optional) Add filters to the print server.


    # cd /etc/lp/fd
    # for filter in *.fd;do
        > name=`basename $ filter .fd`
        > lpfilter -f $name -F $ filter
        > done
    
  7. Enable the printer to accept print requests and to print those requests.


    # accept printer-name
    # enable printer-name
    
  8. Verify that the printer is correctly configured.


    # lpstat -p printer-name
    
  9. Add client access to the new printer.

    After the printer has been configured , create access to the printer for the print clients. For more information, see Adding Printer Access by Using LP Print Commands. For information about how to define a print client by using a naming service, see Printing Support in the Naming Service Switch.

  10. Complete any optional tasks.

    There are several optional tasks that you might want to complete when setting up a printer. For pointers to the remaining tasks, see Configuring the Internet Printing Protocol (Task Map). For information about how to define print clients by using the naming service, see Printing Support in the Naming Service Switch.


Example 5–9 Adding a New Network-Attached Printer by Specifying a PPD File

This example shows how to add a new network-attached printer with PPD files. The -n option of the lpadmin command enables you to add a new print queue by specifying a PPD file. The commands that are used in this example must be executed on the print server. The following information is used as an example only. The information that you provide will vary.

  1. Defines printer name and sets the device to /dev/null

  2. Defines the interface script for network printers

  3. Sets the destination, protocol, and timeout

  4. Specifies the file content types to which the printer can print to directly

  5. Specifies the PPD file to use

  6. Adds a description for the printer

  7. Adds print filters to the print server

  8. Accepts print requests for the printer and enables the printer

  9. Verifies that the printer is ready for printing



Example 5–10 Adding a New Network-Attached Printer Without Specifying a PPD File

This example shows how to add a new network-attached printer without specifying a PPD file. These commands must be executed on the print server. The following information is used for example purposes only.


# lpadmin -p luna1 -v /dev/null (1)
# lpadmin -p luna1 -m netstandard (2)
# lpadmin -p luna1 -o dest=nimquat:9100 -o protocol=tcp 
-o timeout=5 (3)
# lpadmin -p luna1 -I postscript -T PS (4)
# lpadmin -p luna1 -D "Room 1954 ps" (5)
# cd /etc/lp/fd
# for filter in *.fd;do	
	   > name =`basename $ filter .fd`	
	   > lpfilter -f $ name -F $ filter	
	   > done (6)
# accept luna1
	destination "luna1" now accepting requests
# enable luna1 (7)
printer "luna1" now enabled 
# lpstat -p luna1 (8)
printer luna1 is idle.enabled since Feb 28 11:21 2003.available.
  1. Defines printer name and sets the device to /dev/null

  2. Defines the interface script for network printers

  3. Sets the destination, protocol, and timeout

  4. Specifies the file content type to which the printer can print directly, and the printer type

  5. Adds a description for the printer

  6. Adds print filters to the print server

  7. Accepts print requests for the printer and enables the printer

  8. Verifies that the printer is ready for printing


ProcedureHow to Set Up a Remote Printer That is Connected to a Print Server by Using IPP

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To set up a remote printer, choose one of the following methods:

    • Use the lpadmin command:


      # lpadmin -p printer -s ipp://printer-ip-address/printers/printer-name
      
    • Use the lpset command:


      # lpset -a printer-uri-supported=ipp://printer-ip-address/printers/printer-name
      

      Using the lpset command with the -a option accepts key/value pairs. In the preceding output, the key that is specified is printer-uri-supported, with the value being ipp://printer-ip-address/printers/printer-name. Typically, you would not configure this value to refer directly to a printer, but rather a print queue on a print server.

  3. (Optional) To determine the URI you have supplied, type the following command:


    $ lpstat -p ipp://printer-ip-address/printers/printer-name
    

    When you use the lpstat command and specify the URI as the destination, the local printing configuration is bypassed, connecting you directly to the network-attached printer or the remote print server.

Adding a New Network-Attached Printer by Using Printer Vendor-Supplied Software

Network printers often have software support provided by the printer vendor. If your printer has printer vendor- supplied software, use the printer vendor software, when possible. The software is designed to support the attributes of the printer and can take full advantage of the printer capabilities. Read the printer vendor documentation to install and configure the printer, so that it can operate with the LP print service.

ProcedureHow to Add a Attached Network Printer by Using Printer Vendor-Supplied Tools

  1. Connect the printer to the network. Turn on the power to the printer.

    Consult the printer vendor's installation documentation for information about the hardware switches and cabling requirements. Get an IP address and select a name for the printer node. This method is equivalent to adding any node to the network.

  2. Follow the printer vendor instructions to add the network-attached printer.

    Use the printer vendor instructions to configure the network-attached printer. These instructions are specific to the vendor and printer.

  3. Add client access to the new printer.

    Now that the printer has been added, create access to the printer for the print clients. For more information, see Adding Printer Access by Using LP Print Commands.

  4. Complete any optional tasks.

    There are several optional tasks that you might want to complete when setting up a network-attached printer. For pointers to these tasks, see Configuring the Internet Printing Protocol (Task Map).

Setting Up and Administering Printers on a Print Client (Task Map)

Table 5–1 Printer Setup and Administration on a Print Client (Task Map)

Task 

Description 

For Instructions 

Add printer access by using LP print commands. 

Use LP print commands to add printer access on the print client. 

How to Add Printer Access by Using LP Print Commands

Set up a .printers file.

Use a $HOME/.printers file so that users can establish their own custom printer aliases.

How to Set Up a .printers File

Delete a printer and remove printer access. 

If a printer needs to be replaced or moved to a different location, you can delete information about the printer from the print-client.

How to Delete a Printer and Remove Printer Access by Using LP Print Commands

Adding Printer Access by Using LP Print Commands

A print client is a system that is not the server for the printer. Yet, this system has access to the printer. A print client uses the services of the print server to spool, schedule, and filter the print jobs. Note that one system can be a print server for one printer and be a print client for another printer.

Access to a printer can be configured on a domain-wide basis or on a per-machine basis. If you add the printer information to the naming service database, access is configured on a domain-wide basis.

ProcedureHow to Add Printer Access by Using LP Print Commands

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. Add access to the printer.


    # lpadmin -p printer -s print-server -D description
    
  3. Set the printer as the system's default printer destination.


    # lpamin -d printer
    
  4. Verify that the printer is ready for printing.


    # lpstat -p printer
    

Example 5–11 Adding Printer Access by Using lp Print Commands

If you want to print to a remote printer, you must add access to the remote printer. This example shows how to configure access to a printer named luna, whose print server is saturn.


# lpadmin -p luna -s saturn (1)
# lpadmin -p luna -D "Room 1954 ps" (2)
# lpadmin -d luna (3)
# lpstat -p luna (4)
  1. Identifies the printer and the print server

  2. Adds a description for the printer

  3. Sets the printer as the system's default printer destination

  4. Verifies that the printer is ready for printing


Setting Up a .printers File

The .printers file is located in a user's home directory. This file includes information about a user's default printer and other frequently used printers. Having a .printers file enables users to establish their own printer aliases. For example, a _default alias can be used to specify a user's default printer. Also, a special _all alias can be used to define a list of printers that are affected when a print job is canceled or to check the status of printers.

The use of the .printers file by the LP print service is controlled by the naming service switch (/etc/nsswitch.conf). The default configuration specifies that the print service checks a user's home directory to locate printer configuration information before it checks the other naming services. So, you can tailor a user's printer configuration file to use custom printer information rather than the shared information in the naming service.

For more information about the .printers file, see the printers(4) man page. For more information about the naming service switch, see the nsswitch.conf(4) man page.

ProcedureHow to Set Up a .printers File

This procedure shows users how to set up .printers file in their own home directories.

  1. Log in to the system with your user name and password.

  2. If necessary, change directories to $HOME.


    $ cd $HOME
    
  3. Start the text editor that you want to use to create a .printers file.

  4. (Optional) Set up the _default alias to make a specific printer the default printer. Use an entry that is similar to this entry.


    _default printer-name
    
  5. (Optional) Set up the _all alias to define the printers affected when you cancel a print request or check the status of printers. Use an entry similar to this entry.


    _all printer1,printer2,printer3
    
  6. Save the file as .printers.

ProcedureHow to Delete a Printer and Remove Printer Access by Using LP Print Commands

  1. Log in as superuser, lp, or assume an equivalent role on a print client with access to the printer that you want to delete.

  2. On the system that is the print client, delete information about the printer.


    # lpadmin -x printer-name
    
    -x

    Deletes the specified printer.

    printer-name

    Specifies the name of the printer you want to delete.

  3. Log in as superuser, lp, or assume an equivalent role on the print server.

  4. On the system that is the printer server, stop accepting print requests for the printer.


    # reject printer-name
    

    reject printer-name rejects print requests for the specified printer.

    This step prevents any new requests from entering the printer's queue while you are in the process of removing the printer. For a detailed description, see How to Accept or Reject Print Requests for a Printer.

  5. On the system that is the print server, stop the printer.


    # disable printer-name
    

    This step stops print requests from printing. For a detailed description on how to stop printing, see How to Enable or Disable a Printer.

  6. Move any print requests that are still in the queue to another printer.

    For information about how to move print requests to another printer, see How to Move Print Requests to Another Printer.

  7. On the system that is the print server, delete the printer.


    # lpadmin -x printer-name
    
  8. Verify that the printer information has been deleted:

    1. Confirm that the printer information has been deleted on the print client.


      $ lpstat -p printer-name -l
      

      In the command output, you should receive an error indicating that the printer does not exist.

    2. Confirm that the printer information has been deleted on the print server.


      $ lpstat -p printer-name -l
      

      In the command output, you should receive an error indicating that the printer does not exist.


Example 5–12 Deleting a Printer and Remote Printer Access

The following example shows how to delete the printer luna from the print client terra and from the print server jupiter. This example also shows how to delete the print client terra from the print server.


terra# lpadmin -x luna
Removed “luna”.
terra# lpstat -p luna -l 
jupiter# lpadmin -x luna
Removed “terra”.
jupiter# lpstat -p luna -l