CNE Training Guide NetWare 4.1 Administration

Previous chapterNext chapterContents


- 8 -

Configuring NetWare 4.x Printing


Configuring NetWare 4.x Printing

This chapter describes the printing concepts used in NetWare 4.x and the basic components of network printing. You will learn how to create and configure Print objects. The properties of Print objects such as Print Queue, Printer, and Print Server objects are described in detail. The critical properties needed to configure these objects to provide network printing are discussed. The tools used for network print configuration are also discussed, and you are presented with a guided tour of print configuration. You are also presented with different methods used to print jobs to a network printer.

Understanding Network Printing Concepts

NetWare allows you to share printers with several users. Con-figuring a network printer requires that you understand how network printing works and the basic terms that are used to describe network printing.

When an application on a NetWare workstation prints, or when you use an explicit network command such as the NPRINT (Network Print) command, the data that is sent to a network printer is called a print job. The nature of printers is such that they can print only a single print job at a time. This is usually not a problem for single user stations that are not connected to the network and print to a local printer, because there is usually only one outstanding print job to be printed.

On a network, workstations can send print jobs to a shared network printer. Print jobs are temporarily stored in an area on a server volume called the print queue. The characteristics of this print queue are modeled by the NDS Print Queue object. Each print job contains information identifying the owner of the print job, the time it was submitted, the number of copies to print, and so on. The information about a print job and how it is to be printed is called the print job configuration.

One of the parameters in a print job configuration is the form parameter. A form is a logical description of the type of paper in the printer and is identified by a form name and a form number. If you are using 8.5 x 11 inch printer paper, you can define a form for this type of printer paper. If you use other types of printer paper, such as for invoices or checks, you can define forms for them. The form definitions are created using the PRINTDEF utility or the NetWare Administrator.

A print job will print only if the form used in the print job configuration matches the form that is currently mounted on the printer. The NetWare print software keeps track of the form number that is currently being used on the printer. You can use tools such as PSC or PCONSOLE to change the currently mounted form on the printer. Using forms for print job configurations and keeping track of the current form on the printer ensures that a print job will be printed only on the desired type of printer paper.

Another parameter that you can specify in a print job configuration is the print banner. The print banner page contains information on the user, the file or data that is being printed, and so on. The purpose of the print banner page is to identify print jobs and to separate print jobs from different users.

When you install a NetWare 4.x server, it does not have a default network print service configuration. You have to explicitly configure print services to NetWare 4.x before you can use network printing. The primary tools to add print services are as follows:

Other support utilities such as PRINTDEF, PRINTCON, and PSC still exist in NetWare 4.x. Because much of the scope of this book is to describe only the differences between NetWare 3.x and NetWare 4.x, these tools are not described here.


STUDY NOTE: The primary tools used for network print configuration are the NetWare Administrator and PCONSOLE.

To enable printing in NetWare 4.x, you need the following:

Administrators of NetWare 4.x networks will recognize that these are the same concepts that were used with NetWare 3.x. The big difference here is that these components are objects in an NDS tree. The objects model physical and logical concepts. Thus the Printer object corresponds to the printer device attached to the network (directly or via a server or workstation). In NetWare 4.x you can submit a job to the Printer object. This is done by specifying the NDS name of the Printer object when printing a job. The Printer object contains a logical association with the Print Queue and Print Server object so that the job ends up being processed by the appropriate print server and ends up in the correct network queue.


STUDY NOTE: The NDS object classes needed to configure network printing are Print Queue, Printer, and Print Server.

Figure 8.1 shows the physical components of network printing, and figure 8.2 shows the logical components as part of the NDS tree. Figure 8.1 shows that print jobs submitted by the workstation are processed by the print server and stored in a queue on a storage volume, then printed to a network printer. These physical print components are represented as objects in the NDS tree in figure 8.2. The print jobs are submitted by the user objects (User A and User B) to the printer object HP_PRINTER. Printer jobs can also be submitted to the print queue object HP_QUEUE, which is the traditional way printing is done in NetWare 3.x.

If an application does not understand the network Printer objects or Print Queue objects, the CAPTURE command can be used to redirect a local printer to a Printer object or Print Queue object. The CAPTURE command for NetWare 4.x contains appropriate options to support this mode of operation.

Figure 8.1 Physical components of network printing.

Figure 8.2 Logical (NDS) components of network printing.


STUDY NOTE: Throughout this chapter the term Print objects refers to network print-related NDS objects such as Print Queue, Printer, and Print Server objects.

Understanding the Print Queue Object

The Print Queue object is a logical representation of the physical print queue. The physical print queue is a directory on a storage volume where the print jobs are kept while they are waiting to be printed. The Print Queue object can be created using the NetWare Administrator or the PCONSOLE utility. The Print Queue object should be placed in the context in which it is most likely to be used. Figure 8.3 shows the NDS tree where the Print Queue object is placed in the O=SCS container. It is expected that users throughout the SCS organization will have access to the Print Queue object. This includes users in the departments CORP, ENG, and SALES, represented by the organizational unit containers. Figure 8.4 shows a Print Queue object in the OU=CORP.O=SCS container. The Print Queue object in this container is expected to be used by users of OU=CORP in the organization O=SCS.


STUDY NOTE:The Print Queue object is a logical representation of the physical print queue.

One of the properties of a Print Queue object is the physical location of the queue. This queue is always located on a storage volume that must be specified when the Print Queue object is created. The print queue is placed in a subdirectory of the QUEUES directory (see fig. 8.5). If the QUEUES directory does not exist at the time of creating the queue, it is automatically created.

Figure 8.3 The Print Queue object in an Organization container.

Figure 8.4 The Print Queue object in an Organizational Unit container.

Figure 8.5 The Print Queue object and the QUEUES directory.


STUDY NOTE: The Volume property for a Print Queue object is mandatory. It describes the volume that will be used to hold print jobs waiting to be printed.

The print queue is placed as a subdirectory of the QUEUES directory.


Figure 8.6 shows the properties of the Print Queue object. Notice that the Volume property is set to CN=NW4CS_SYS.OU=CORP.O=ESL. The properties such as Other Names, Description, Location, Department, and Organization are not set when the queue is initially created via PCONSOLE. It is a good practice to set these values to a meaningful description of the Queue object.

Figure 8.6 Print Queue object properties.

Figure 8.7 shows that the Queue_0 has the authorized print server CN=PS-CORP.OU=CORP.O=SCS and the printer that services this queue is CN=Printer_0.OU=CORP.O=SCS. This shows you how the logical association to the Printer object and Print Server object is made. The Operators property of the Print Queue object is a list of users who can perform administrative tasks on the queue.

Figure 8.7 Print queue assignments.

Figure 8.8 shows that the print queue operators are the creators of the print queue, CN=Admin.O=ESL, and the print server object, CN=PS-CORP.OU=CORP.O=ESL. The Users property of the queue consists of those users who can send print jobs to this queue. Figure 8.9 shows that these are the users CN=Admin.O=ESL and the container OU=CORP.O=SCS. Assigning a container to the Users property of the print queue means that all users within that container can send print jobs to the queue.

Figure 8.8 Print queue operators.

Figure 8.9 Print queue users.

Figure 8.10 shows the queue directories that were created for the Queue objects CN=HP_QUEUE.O=SCS and CN=Queue_0.OU=CORP.O=SCS.

Figure 8.10 Print queue directories.


STUDY NOTE: Assigning a container object to the Users property of the print queue means that all users within that container can send print jobs to the queue.

From figures 8.7 through 8.10, you can tell that the Print Queue object has the following important properties:

The Job List property of the queue object can be used to view the print queue jobs (see figure 8.11). You can see that print jobs are assigned sequence numbers and a Job ID. The print job status, the name of the file being printed, and the form number used are also displayed.

Figure 8.11 The Print Job List property.


STUDY NOTE: The Print Job List property of the Print Queue object can be used to view the print jobs in the queue.

The Printer Object

The Printer object is a logical representation of the physical printer. The physical printer can be directly connected to the network (if it has a network interface), or to a workstation or a file server. The Printer object can be created using the NetWare Administrator or the PCONSOLE utility. The Printer object should be placed in the context in which it is most likely to be used. Figure 8.3 shows the NDS tree where the Printer object is placed in the O=SCS container. It is expected that users throughout the SCS organization will have access to the printer. This includes users in the departments CORP, ENG, and SALES, represented by the organization unit containers. Figure 8.4 shows a Printer object in the OU=CORP.O=SCS container. The Printer object in this container is expected to be used by users of OU=CORP in the organization O=SCS.

Figure 8.12 shows the properties of the Printer object. The Name property (Common Name) is the only property that is set on this screen. The other properties such as Other Names, Description, Location, Department, and Organization are not set when the queue is initially created. It is a good practice to set these values to a meaningful description of the Print Queue object.

Figure 8.12 Printer object properties.

The Printer Features property, shown in figure 8.13, can be used to describe features specific to a Printer object such as the printer languages supported, amount of memory in the printer, and supported typefaces. This information can be accessed through NDS searches. For example, you could search for PostScript printers with at least 4 MB (4096 KB) of memory and the Futura font.

Figure 8.14 shows the assignments for Printer_0. The printer is assigned to the print server CN=PS-CORP.OU=CORP.O=SCS (see property Print Server), and the queue CN=Queue_0.OU= CORP.O= SCS is assigned to the Printer object (see property Print Queues). This shows you how the logical association to the Print Server object and Print Queue object is made. There can be several Print Queue objects assigned to the Printer object. One of the Print Queue objects is the Default object; if no specific Queue object is specified, the default print queue is used (see property Default Print Queue).

Figure 8.13 The Printer Features property.

Figure 8.14 Printer assignments.

Figure 8.15 shows some of the configuration properties for the Printer object. This shows the printer type (LPT1, Parallel, Serial, AppleTalk, Unix, AIO, or XNP, for example).

Figure 8.15 Configuration properties for the Printer object.

The AppleTalk printer type is used for configuring AppleTalk printers that use AppleTalk's Printer Access Protocol (PAP). If you select the AppleTalk printer type, you must also select the name by which the printer is known on the AppleTalk network (the AppleTalk zone name on which the printer is located). AppleTalk zones are used for logical partitioning of an AppleTalk network. A zone name value of * (asterisk) indicates any zone, and this is the default value. You can select either Hide Printer or Don't Hide Printer (the default). Hiding an AppleTalk printer prevents it from appearing on the Macintosh Chooser's list of available printers. In this case, Macintosh users cannot send print jobs to the Printer object directly; they must send the jobs to the queue associated with the printer.

The Unix printer type is used to print to a Unix printer attached to a Unix host. The Host Name field is used to enter the name of the Unix host to which the printer is connected. The NetWare server's SYS:ETC/HOSTS file should also contain an entry for the Unix host name and the Unix host's IP address. Additionally, the Unix host's /etc/hosts file should contain an entry for the NetWare server whose volume is being used to hold print queue jobs, or it should have a way of resolving the NetWare server's IP address using a name resolution protocol such as DNS (Domain Name System) or NIS (Network Information System). The Unix host's /etc/hosts.lpd file should also contain an entry for the NetWare server's host name. The Printer Name field should be set to the name of the Unix local printer. The NetWare NFS product can be used to provide printing between NetWare-based networks and Unix-based networks.

The AIO printer type is used for printers connected to an Asynchronous Communications Server using the AIO (Asynchronous Input/Output) protocol. You must follow the manufacturer's instructions for configuring this printer type.

The XNP printer type is used for configuring printers that use the Extended Network Printing protocol. You must follow the manufacturer's instructions for configuring this printer type.

The Banner Type can be Text or PostScript. The Text setting is used to print NetWare's standard print banner. If your printer uses the PostScript page description language, and you want your printer to print a PostScript banner, you can use the PostScript setting. PostScript is a special printer command language that can be used to provide graphics output. In the case of a banner page that has graphics described in a PostScript language, you should set the Banner Type to PostScript.

The Service Interval shows how often the print server checks the print queue for print jobs assigned to this printer. This can be a value from 1 second to 15 seconds. The default setting of 15 seconds works for most situations. Selecting a small value can increase the resources that the print server consumes (such as CPU utilization) when running at the server. In addition, if the print server and the volume object on which the network queue resides are not at the same server, network traffic is generated when the print server polls the queue. Decreasing the service interval will generate additional network traffic.

The Buffer Size represents how large each segment of print data sent to the printer can be. The buffer size can range from 3 KB to 255 KB and has a default value of 3 KB.

The Print Server maintains a buffer that holds the information that is sent for printing. This is different from the queue, which contains the entire print job to be printed. The print buffer holds the printing data just before it is sent for printing. If the printer seems to start and stop frequently while printing, you should increase the buffer size. Increasing the buffer size to a larger value than needed to accommodate printer data will result in an inefficient utilization of memory.

The Network Address Restrictions show the network address the printer can use. If the printer is not directly connected to the network, this is the network address of the workstation or the server the printer is connected to. The Network Address Restriction is a security feature and allows only a printer attached to a designated location to be used for printing. Without this capability, it is possible for any printer attached to the network to intercept print jobs. They can do this by running the NPRINTER program and supplying the NDS printer object name.

The restricted network address is an IPX address that consists of a network number and a node number. The network number is a four-byte (eight hexadecimal digits) number and is the cable number to which the server and the workstations are attached. This number is distinct from all other cabling segment numbers or the server's internal network numbers. The node number corresponds to the MAC (Media Access Control) address of the network boards inside a workstation or a server. The MAC address is burnt into the ROM on the network adapter for Ethernet and token ring networks but is manually set for ARCnet network adapters. You can obtain a network node's IPX address by using

NLIST  USER=login_name  SHOW "Network Address"

while logged in as user login_name to a workstation. Alternatively, you can use

NLIST USER /A  /S  /CO "[Root]"

to see workstation addresses of all logged in users in the NDS tree.

The Service Mode for Forms property is the policy for changing forms. It can be set to Starting Form and Service Mode for Forms. The Starting Form number is the form number that the print server assumes the printer has when the print server is started. The print server will use this form number for print jobs, and printing will occur normally until a print job calls for a different form number. The Service Mode for Forms can be set to any of the following values:

When Change Forms as Needed is selected, the print server will stop printing when a new print job requests a different form. The printing will stop unless the correct form is mounted. The print jobs will be printed according to their print queue priority, with higher priority print queues (highest queue priority is 1) being serviced before lower priority queues (lowest queue priority is 15).

When Minimize Form Changes across Print Queues is selected, the print server will print all jobs in the highest priority queue that can use the currently mounted form. Next, it will print all jobs in the next highest priority queue that can use the currently mounted form, and so on. Only when no print jobs in any of the queues can print to the currently mounted form will the print server make the request to change the currently mounted form. When this form-handling policy is selected, there is a minimum of form changes, but jobs will not be printed according to their normal queue priority. It is possible for a high priority print job to wait in the queue until a lower priority job that uses the currently mounted form is printed.

When Minimize Form Changes within Print Queues is selected, the print server will print all jobs in the highest priority queue that can use the currently mounted form. The queue priority will be honored. This means that once jobs that use the currently mounted form are printed from the highest priority queue, the print server will make a request to change the form for the remaining jobs in the high priority queue. All jobs within the queue that can use the new form type will be printed next. Only if there are no jobs in the highest priority queue will it start printing jobs in the next highest priority queue, and so on. This means that form changes within a queue are minimized.

When Service Only Currently Mounted Form is selected, only print jobs that can use the currently mounted form will be printed. Print jobs that need another form type are held and not printed. Moreover, the print server does not issue any requests to change the currently mounted form to print remaining print jobs. To print the remaining jobs, you have to manually check if there is a need to mount a different form type.

Figure 8.16 shows the notification form for printers. The print job owner is notified of printer status changes. The notification property contains a list of users who should be notified when there is a printer problem (such as the need to change the currently mounted form or add more paper). Some of the parameters that can be set are the number of seconds to wait to inform the users listed in the notification property about a printer problem. You can also set the number of minutes that elapse between the first notice and subsequent notices to correct the problem. You can specify that the print job owner be notified by checking the box labeled Notify Print Job Owner.

Figure 8.16 Notification properties for Printer object.

From figures 8.12 through 8.16, you can tell that the Printer object has the following important properties:

Before describing the last printing object, the Print Server object, you need to understand how this object is used by the print server and the PSERVER.NLM.


STUDY NOTE: The Print Server property for a Printer object is set to the print server to which the printer is assigned.

The Print Queues property for a Printer object lists the print queues that are assigned to a Printer object.

The Notification property of the Printer object lists the users to be notified about printer problems.


Understanding the Role of the Print Server and PSERVER.NLM

The Print Server object describes the print server. The Print Server object is activated by the PSERVER.NLM and can therefore run on NetWare servers only. This program takes the Print Server object name as a parameter when it is loaded:

LOAD PSERVER  PrintServerObjectName

This command can be run on any NetWare server in the NDS tree. PrintServerObjectName is replaced by the complete name of the Print Server object. Thus, to activate the Print Server object CN=PS-CORP.OU=CORP.O=SCS, you have to run the PSERVER NLM at one of the NetWare servers as shown:


LOAD PSERVER .CN=PS-CORP.OU=CORP.O=SCS

The PSERVER.NLM is the only type of print server program that is available from Novell. The PSERVER.EXE of NetWare 3.x is no longer supported in NetWare 4.x.

The PSERVER.NLM can support up to 256 printers. Up to 5 of the 256 printers can be attached to the server where PSERVER.NLM is run (local printers). The remaining 251 printers can be attached anywhere else on the network (remote printer). These remote printers can be on other NetWare servers, workstations, or directly attached to the network.


STUDY NOTE: The PSERVER.NLM can support 256 printers: 5 local and 251 remote printers.

Figure 8.17 shows the types of printers used with a print server, and figure 8.18 shows the operation of the PSERVER.NLM. The PSERVER.NLM monitors the queue and the printer and directs print jobs in the network print queue to the appropriate network printer.

Figure 8.17 Types of printers used with print server.

Figure 8.18 Print server operation.

With this as a background, you are now ready to understand the properties of the Print Server object.

The Print Server Object

The Print Server object is a logical representation of the print server program (PSERVER.NLM) running at a server. The Print Server object can be created using the NetWare Administrator or the PCONSOLE utility. The Printer object should be placed in the context it is most likely to be used. Figure 8.3 shows the NDS tree where the Printer object is placed in the O=SCS container. It is expected that users throughout the SCS organization will have access to this Print Server object. This includes users in the departments CORP, ENG, and SALES, represented by the organizational unit containers. Figure 8.4 shows a Print Server object in the OU=CORP.O=SCS container. The Print Server object in this container is expected to be used by users of OU=CORP in the organization O=SCS.

Figure 8.19 shows the properties of the Print Server object. Besides the Name property (Common Name), the only property that is set on this screen is the Advertising Name. Server programs in the NetWare environment, such as the PSERVER.NLM, advertise their existence using the Service Advertising Protocol (SAP).

Figure 8.19 Print Server object properties of a running print server.

Figure 8.20 shows a packet trace captured using LAN Analyzer, and figure 8.21 shows the packet decode of the SAP frame. Notice that the name of the service advertised is PS-CORP, which is the value of the property shown in figure 8.19.

Figure 8.20 Print Server SAP protocol trace.

Figure 8.21 Print Server SAP packet.


AUTHOR'S NOTE: It is interesting to note that the PS-CORP has a service type of 71 (see fig. 8.21). All SAP services are identified by their SAP type value. A well-known service such as the Print Server has a published value of 71. The NetWare 4.x server, on the other hand, has a service type of 263. This is the same type used for NetWare 3.x servers. The directory tree name CNET is advertised by server type 632. For those interested in more information on how the SAP protocol works, refer to NetWare: The Professional Reference, from New Riders Publishing.


STUDY NOTE: The Advertising Name property of the Print Server object is the name used by the PSERVER NLM to advertise its existence using the Service Advertising Protocol (SAP).

The other properties, such as Other Names, Description, Location, Department, and Organization, are not set when the queue is initially created. It is a good practice to set these values to a meaningful description of the Queue object. The Network Address property is set only when the print server is running. The print server in figure 8.19 is running. This is shown by the status fields and the Version property that reports the version number of the PSERVER NLM that is running. The Network Address property shows that the print server is at F0000055:000000000001. The F0000055 is the internal network number of the NetWare server on which the PSERVER is running, and 000000000001 is its node address. The internal network number is assigned to each NetWare 3.x and NetWare 4.x server to identify the NetWare services that it provides. The node address for the server on the internal network is always 1, because the internal network number uniquely identifies the NetWare services.


STUDY NOTE: The Network Address property of the Print Server object is set only when the print server is running and refers to the internal network number and the NetWare server's logical node address on which the PSERVER.NLM is running.

You can unload the print server by selecting the Unload button (see fig. 8.19). The print server can also be unloaded directly from the NetWare console on which it was loaded, or through the PCONSOLE program. The print server password is used to secure access to the Print Server object and can be changed via the Change Password button.


STUDY NOTE: You can unload a running print server using NetWare Administrator or PCONSOLE, or at the server where it is loaded, by typing UNLOAD PSERVER.

The Print Server assignments are shown in figure 8.22. The Printers property is a list of printers assigned to print servers. The figure shows that there are two printers assigned to the Print Server object PS-CORP. These printers are CN=HP_ PRINTER.O=SCS and CN=Printer_0.OU=CORP.O=SCS.

Figure 8.22 Print Server object assignments.

Figure 8.23 shows that the Operators property for PS-CORP is set to CN=Admin.O=ESL. This property describes the list of users who can perform administration tasks on the print server. In general, the Operators property of a Print Server object can include any of the following:

When you add a Group object, for example, to the Operator property, all members of the group become print server operators. When you add User Template to the Operator property, all users that are created using the User Template will be added as operators of the Print Server object. Adding a container such as an Organization or Organizational Unit means that all User objects in that container become print server operators.

Figure 8.23 Print Server operators.

Figure 8.24 shows the Users property for PS-CORP, which is set to OU=CORP.O=SCS. This means that all users in the OU=CORP.O=SCS container can use the print server. You can add containers, groups, users, and user templates to the user's property by clicking on the Add button on the Print Server User List dialog box.

Figure 8.24 Print Server users.

To print a job to a printer under the control of a print server, you don't need to be a print server user. You need to be a queue user for a queue assigned to the Printer object. However, making a user a print server user means that the user can, in addition to printing jobs on a printer controlled by the print server, also examine the print server's operation to see if any of its printers require attention.

To prevent unauthorized users from starting the print server (by typing the LOAD PSERVER command at a server console), you can assign a password to the print server. This can be done by selecting the Change Password button under the Identification property group of the print server.

From figures 8.19 and 8.22 through 8.24, you can tell that the Print Server object has the following important properties:

Please note that the Print Server object properties are read into the server memory when PSERVER.NLM loads. Any changes made to the Print Server object are not registered with the print server, unless you bring the print server down (unload PSERVER.NLM) and bring it up again (load PSERVER.NLM).


STUDY NOTE: The Password property of the Print Server object is used to secure the print server.


STUDY NOTE: Changes made to the Print Server object properties are not registered with the print server unless you bring the print server down and up again. You can, however, create a new Print Queue object and assign it to a Printer object that has already been assigned to an active Print Server object. You can then print a job to the newly created queue, which will be printed to the printer to which the queue was assigned. This is not the same as changing a property of the Print Server object. If you were to create a new Printer object and assign it to the Printers property of an already active Print Server object, the new printer would not register with the print server unless you brought the print server down and up again.

Loading of Printer Definitions

When the PSERVER.NLM loads, it activates the Printer objects defined in the specified Print Server object's printers property list. If the printer is defined locally to the PSERVER.NLM, a program called NPRINTER.NLM is autoloaded to activate any attached local printers (see fig. 8.25). For this reason, printers attached locally to the NetWare server on which PSERVER.NLM is run are called Autoload printers. In figure 8.25 you can see that the Printer_0 was loaded successfully, but the second printer failed to load because it, too, was trying to use interrupt line 7 (which was already in use by the first printer). If the second printer was defined on a different port from LPT1, this problem would not exist.


STUDY NOTE: Printer definitions that are local to the print server are autoloaded by the NPRINTER.NLM when PSERVER.NLM is run.

Figure 8.25 Load PSERVER.NLM console messages.

Printers that are attached to other NetWare servers or workstations are called remote printers. These must have the NPRINTER program manually loaded on them. For NetWare servers, the NPRINTER program is NPRINTER.NLM; for workstations it is NPRINTER.EXE. Because the NPRINTER program has to be manually loaded for remote printers, they are referred to as Manual load printers.


STUDY NOTE: Printer definitions that are remote from the print server must be manually loaded by the NPRINTER.NLM.
NPRINTER.EXE is available for both DOS and OS/2 printers.

The NPRINTER Program

The syntax for loading the NPRINTER program is as follows:

NPRINTER [PrintServerObjectName]   [PrinterObjectName]

or

LOAD NPRINTER PrintServerObjectName  PrinterObjectName

The first form is used for DOS and OS/2 workstations; the second form is used for loading the printer definition on a NetWare server. Multiple printers can be serviced at the NetWare server by running the LOAD NPRINTER command several times and specifying a different printer object each time.


STUDY NOTE: The NPRINTER.EXE is used to load remote printers at a workstation.
The NPRINTER.NLM is autoloaded for local printers attached to the print server and must be manually loaded for printers attached to remote NetWare servers.

The PrintServerObjectName refers to the Print Server object to which the printer is assigned. Because a Print Server object can have more than one Printer object assigned to it, the second parameter, PrinterObjectName, further qualifies the statement by specifying the actual Printer object name. You can also load the printer definition directly by leaving out the Print Server object name. Thus, to load Printer object CN=HP_PRINTER.O=SCS at a workstation as a remote printer, you can use the following:

NPRINTER   .CN=HP_PRINTER.O=SCS

When the print server loads, it assigns printer numbers to all the Printer object definitions activated by it. Figure 8.26 shows the printer numbers assigned to the Printer objects CN=Printer_ 0.OU=CORP.O=SCS and CN=HP_PRINTER.O=SCS when the CN=PS-CORP.OU=CORP.O=SCS printer loads. NPRINTER supports an alternative syntax, where the printer number can be used instead of the Printer object name:

NPRINTER PrintServerObjectName  PrinterNumber


PRACTICAL TIP: If the NPRINTER command does not work, try using a complete name for the Print Server object name.

Figure 8.26 The Printer List on the print server.

The second form of the NPRINTER syntax allows it to be compatible with the NetWare 3.x RPRINTER syntax. RPRINTER.EXE, which was used in NetWare 3.x to set up remote printing, is no longer used. Its functionality has been replaced by the NPRINTER.EXE program. You need to load NPRINTER at a workstation or server to set up a remote printer. A remote printer is a network printer that is not attached to the NetWare server where the PSERVER.NLM program runs.

An example of the second type of NPRINTER syntax is

NPRINTER .CN=PSERV.OU=CORP.O=ESL  1

where printer number is used instead of the Printer object name. Figure 8.27 shows the effect of executing this command. Notice the status message says that the HP_PRINTER (printer 1) is now installed. The NPRINTER.EXE runs as a TSR (terminate-and-stay-resident) program.

Figure 8.27 Activating a printer with the NPRINTER command.

If NPRINTER is used without any options, it runs as a menu utility.

To unload the NPRINTER.EXE at the workstation, use this command:

NPRINTER /U

To see the status of a printer, use this command:

NPRINTER /S

The following listing shows the output produced by running NPRINTER /S on a workstation that had NPRINTER loaded in a prior step:

NetWare Network Printer Driver v4.01.
 Copyright 1988 - 1993, Novell, Inc.  All Rights Reserved.
    Print server:             PS-CORP
    Printer name:            HP_PRINTER
    Printer number:        1
    Printer port:             Unknown
    Using IRQ:               None (Polled Mode)
    TSR status:               Shared Mode
    PRINTER status:  Waiting for Print Job
    Printer status:           Out of Paper

Figure 8.28 shows a summary of the different types of NPRINTER programs that are possible.

Figure 8.28 Different NPRINTER types.


PRACTICAL TIP: If NPRINTER is used without any options, it runs as a menu utility.

Interactions Among the Print Queue, Print Server, and Printer Objects

When configuring network printing objects, certain critical properties for each of these objects need to be set up. You saw the use of some of these critical properties in the earlier discussion on Print Queue, Printer, and Print Server objects.

Figure 8.29 shows the important or critical properties for the Print Queue, Printer, and Print Server objects. The print queue is assigned to the Print Queues property of the Printer object, and the Printer object is assigned to the Printers property of the Print Server object. This assignment allows a link to be made between the different printing objects, regardless of their context. That is, the network print configuration objects (Print Queue, Printer, and Print Server) can be placed in the same context or different contexts. You should, however, try to create them in contexts where they are most likely to be used.

The diagram in figure 8.29 shows a one-to-one correspondence among the Print Queue, Printer, and Print Server objects. This is the simplest and most often-used setup. More complex many-to-one assignments can be made. Figure 8.30 shows that multiple queues can be assigned to a single Printer object, and multiple Printer objects can be assigned to a single Print Server object.

Figure 8.29 Setting of critical properties for print objects.

Figure 8.30 Many-to-one relationship between print objects.

To create the print configuration objects, you should at least have the Create object right to the container where these objects will be placed. The quickest way to create these objects is to use the Quick Setup option under PCONSOLE. If you do not have the Create object right (or the Supervisor object right that implies the Create object right), this option will not be shown on the PCONSOLE menu.


STUDY NOTE: To create the print configuration objects, you should have the Create object right to the container where these objects will be placed.


STUDY NOTE: The quickest way to configure network printing is to use the Quick Setup option under PCONSOLE.
If you do not have the Create object right, the Quick Setup option will not be shown on the PCONSOLE menu.

By default, the creator of the print objects is made a trustee and given all object rights and property rights to that object. Figure 8.31 shows the trustee rights to object PS-CORP. The creator of the object is Admin.ESL. This user has all rights (see fig. 8.31) to Object rights (Supervisor, Browse, Delete, Rename) and the All Properties rights (Supervisor, Compare, Read, Write, Add Self).


STUDY NOTE: By default, the creator of the print objects is made a trustee and given all object and property rights to that object.

Figure 8.31 Trustee rights of owner to Print Server object.

Configuring Network Print Services

As mentioned earlier, the primary tools for configuring network services are PCONSOLE and Network Administrator. But only PCONSOLE has the Quick Setup option. The other options in PCONSOLE are the same as in the PCONSOLE for NetWare 3.x, with the exception that they have been modified to work with NDS objects.

If you use the NetWare Administrator tool to create print objects, you have to make sure that their critical properties (see fig. 8.29) are defined, and also that the logical links between them are properly defined.

The NETADMIN.EXE program cannot be used to create print objects. You cannot use this tool to view or edit properties of print objects. Figure 8.32 shows that the Queue object Queue_0 cannot be edited or viewed using NETADMIN.

Figure 8.32 Attempt to view or edit Queue object from NETADMIN.

The PCONSOLE Utility

You will now be given a guided tour of setting up network printing by using the PCONSOLE utility to create Print Queue, Printer, and Print Server objects and configure them.

1. Log in as an Admin user and run PCONSOLE. You can log in as another user as long as you have Create, Delete, and Browse privileges to the container where you are creating the print objects. If you need to rename any print objects you create, you will need the Rename object right to leaf objects in the container.

When you run PCONSOLE, you should see the screen in figure 8.33.

Figure 8.33 The PCONSOLE main menu.

2. Select Change Context from PCONSOLE and change your context to the container where you want to place the print objects. In this guided tour the container name is OU=CORP.O=ESL_XXX. If you are practicing using PCONSOLE, you may want to create an organization with a similar name. Substitute any characters for XXX so you can experiment with different organization trees. You can always delete these trees later.

You can see your context reported on the top half of the PCONSOLE screen.

3. Select Print Queues from Available Options. You should see a list of Print Queue objects defined in the OU=CORP.O=ESL_XXX context. The list should initially be empty (see fig. 8.34) unless you have already created Print Queue objects in this container.

Figure 8.34 Initial Print Queues.

4. Press Ins to create a Queue object. You should see a screen asking you to enter the new queue name (see fig. 8.35).

Figure 8.35 Prompt to create new queue name.

5. Enter the name of the Print Queue object as QUEUE_1. (You can choose any other name, but for the purpose of this exercise it will be referred to as QUEUE_1.) You should see a screen asking you to enter the queue's volume (see fig. 8.36). The queue has to be placed on a Volume object. It is created as a subdirectory (with the name of the Print Queue ID) under the QUEUES directory.

Figure 8.36 Entering a queue's volume name.

6. Enter the name of a Volume object. For the purpose of this exercise the volume name is referred to as CORP_VOL. You can use the Volume object name on your NetWare 4.x server, or create an Alias in your current context to the server volume, name it CORP_VOL, and use this name. If you create an Alias name for the Volume object, PCONSOLE replaces it with the name of the Aliased Volume object.

You can also press Ins and browse through the NDS directory tree, searching for the volume on which to place the queue.

After you enter the Volume name to use with the Print Queue object, you should see the newly created Print Queue object in the Print Queues list (see fig. 8.37).

Figure 8.37 A newly created queue in the Queue List.

7. Your next step is to create a Printer object. Return to the main PCONSOLE menu by pressing Esc.

8. Select the Printers option from Available Options.

You should see a list of Printer objects defined in the OU=CORP.O=ESL_XXX context. The list should initially be empty (see fig. 8.38).

Figure 8.38 The Initial Printers list.

9. You are prompted by the New printer name box (see fig. 8.39). Enter the name of the Printer object as PRINTER_1. (You can choose any other name, but for the purpose of this exercise, it will be referred to as PRINTER_1.)

Figure 8.39 Prompt to create new printer.

You should see the newly created Printer Object in the Printers list (see fig. 8.40).

Figure 8.40 Newly created Printer object in the Printers list.

10. Select the Printer object you have created from the Printers list. You should see a screen on the printer configuration (see fig. 8.41).

Figure 8.41 The Printer Configuration screen.

11. Assuming that you have a parallel printer, configure the printer as follows (highlight the Configuration field and press Enter). If you have a serial printer, use one of the COMx ports.

Printer Type: Parallel
Configuration:
Port: LPT1
Location: Manual Load or Autoload
Interrupt: 7
Address restriction: No
Print Queues Assigned: Assign QUEUE_1 to this printer

Printer Type:ParallelConfiguration:Port: LPT1Location:Manual Load or AutoloadInterrupt:7Address restriction: NoPrint Queues Assigned:Assign QUEUE_1 to thisprinter

12. After making any changes, press the F10 key to save your configuration information.

13. When you assign the Queue object that you created earlier, you select the "Print queues assigned: (list)" field from the Printer Configuration screen. You can view this list by pressing Enter. You will see a Print Queue list. Press Ins and select the name of the Queue object. You can also browse the directory tree, looking for Queue objects, by selecting the .. (parent) entry. After you make your entry, you will see a screen similar to figure 8.42.

Figure 8.42 The Print Queue Priority and Status screen.

14. The Priority column displays the priority for jobs in the queue. You can select the queue name entry to change its priority from 1 (highest) to 15 (lowest).

The State column displays codes that have the following meanings:

A = Printer is actively servicing the queue.

C = Printer is configured to service this queue.

D = This is the default print queue.

15. Press Esc to return to the configuration screen.

16. In the Printer Configuration screen, you can also select the Notification field to select the users or groups that should be notified if there is a printer problem. The default Notification list contains the Print job owner value.

17. Save printer configuration changes by using the F10 key.

18. Return to the main Available Options menu.

The last step is to create a Print Server object.

19. Select Print Servers option from Available Options.

You should see a list of Print Server objects defined in the OU=CORP.O=ESL_XXX context. The list should initially be empty (see fig. 8.43).

20. Press Ins to create a Print Server object. You should see a screen asking you to enter the new print server name (see fig. 8.44).

Figure 8.43 The Printer Configuration screen.

Figure 8.44 The New print server name box.

21. Enter the name of the print server as PSRV_1 (or any other print server name). You will see a message that you should wait while the Print Server object is being created, after which you should see the newly created Printer object in the Print Servers list (see fig. 8.45).

Figure 8.45 The newly created Printer object in the Print Servers list.

22. Your next step is to configure the Print Server object. Select the Print Server object you have created from the Print Servers list. You should see a list of Print Server Information options (see fig. 8.46).

Figure 8.46 Print Server Information options.

23. Select the Printers option from the Print Server Information list. You should see a list of Serviced Printers. Initially the list should be empty.

24. Press Ins. You should see a list of Printer objects that can be assigned to the print server (see fig. 8.47), or you can browse through the NDS structure to locate the desired Printer object.

Figure 8.47 Printer objects list.

25. Select the Printer object you created earlier (PRINTER_1) and assign it to the print server. You should see a list of serviced Printer objects that are assigned to the print server (see fig. 8.48).

You can assign up to 256 Printer objects to a Print Server object. If you need to assign more than 256 printers, define another Print Server object.

Figure 8.48 Printers assigned to print server.

26. Return to the main Available Options menu by pressing Esc a few times. You have created Print Queue, Printer, and Print Server objects and configured them properly.

The next step is to load the print server (PSERVER.NLM) on a server.

The LOAD PSERVER Command

The PSERVER command syntax is

LOAD PSERVER PrintServerObject

To load the PSERVER.NLM for the Print Server object CN=PSRV_1.OU=CORP.O=ESL_XXX that you created in the previous section, use this command:

LOAD PSERVER    .CN=PSRV_1.OU=CORP.O=ESL_XXX

When the PSERVER.NLM loads, you should see a list of Available Options for the PSERVER.NLM (see fig. 8.49). Selecting Printer Status should show the list of printers that are defined for the Print Server object (see fig. 8.49). Selecting any of the printers listed shows the printer status (see fig. 8.50). Selecting Print Server Information from Available Options shows the print server information and status (see fig. 8.51).

Figure 8.49 The PSERVER main screen.

Figure 8.50 The PSERVER Printer List.

Figure 8.51 PSERVER Printer Status.

You can change the Current Status field in the Print Server Information (see fig. 8.52) from Running to Unload to unload the Print Server immediately. If you want to wait until all print jobs are finished before unloading the print server, you can set the status field to "Unload after active print jobs."

Figure 8.52 Changing printer server status.


STUDY NOTE: To activate the print server, you must run the PSERVER.NLM at a NetWare 4.x server and give it the name of the print server as a parameter.


PRACTICAL TIP: You have a choice of loading the PSERVER.NLM on any NetWare 4.x server. To avoid the overhead of polling the print queues across the network, you should activate the print server on a NetWare 4.x server that will minimize this overhead. This can be the same server whose volume is used to hold the print queue.

Examining Print Server Status Using PCONSOLE

PCONSOLE can be used to monitor print server status, also. The steps to perform this are outlined here:

1. Start PCONSOLE and change context to where the print server is defined.

2. Select Print Servers from Available Options.

3. Select a print server to examine from the list of Print Servers.

4. Select Information and Status from the Print Server Information menu.

You should see a screen showing print server information and status (see fig. 8.53). Comparing figure 8.53 with 8.52, you can see that they present the same type of information.

Figure 8.53 PCONSOLE Printer Server Information and Status.

Quick Setup Configuration

The Quick Setup information option in PCONSOLE can be used to create, in a single step, a Print Queue, Printer, and Print Server object that have all their critical properties defined. The Print objects are created to have the proper logical links between themselves. This means that the Print Queue object is assigned to the Printer object's Print Queues list property, and the Printer object is assigned to the Print Server object's Printers list property.


STUDY NOTE: The Quick Setup option in PCONSOLE can be used to create a Print Queue, Printer, and Print Server object that have all their critical properties defined.

The Print objects that are created have default names of Q1 for the Print Queue object, P1 for the Printer object, and PS-container for the Print Server object. The container in the print server name PS-container is the name of the container in which the print server is defined. When you create these objects, you can change the default names to any other names (as long as they do not conflict with leaf names of other objects in the container).

Quick Setup will also make assumptions about the printer prop- erties. For the Printer object, it defines the following property values:

Banner type:  Text
Printer type:  Parallel
Location:  Auto Load (Local)
Interrupt:  None (polled mode)
Port:  LPT1

These values can be modified during Quick Setup, but they should match your physical printer configuration.


STUDY NOTE: Any of the default parameters of Quick Setup can be modified when you create Print objects by using Quick Setup.


PRACTICAL TIP: If you want to set up a remote printer, use the Manual Load value for the Location.

You will now be presented with a guided tour of using the Quick Setup option of PCONSOLE.

1. Log in as an Admin user and run PCONSOLE.

2. If your context is not OU=CORP.O=ESL_XXX, where XXX is replaced by your group identity, select Change Context and change your context to where the Print objects will be created.

3. Select Quick Setup from Available Options.

If your context is a container such as [Root], where Print objects cannot be created, you will not see the Quick Setup option in the Available Options menu. Change to an Organization or Organizational Unit.

After selecting the Quick Setup option, you should see the Print Services Quick Setup screen (see fig. 8.54).

4. Change the names of these objects to whatever names you want to use.

5. Change the printer configuration to match your needs.
The printer location to Auto Load (Local) means local printer; a value of Manual Load means remote printer.

6. Press F10 to save changes. The Printer objects will be created after a short waiting period.

Figure 8.54 The Print Services Quick Setup screen.

Sending a Print Job

After the network printing is set up, print jobs can be submitted by using one of the following:

The NETUSER is a menu-driven tool that can be used to perform common network-related tasks such as network printing, messaging, drive mappings, and attaching to other servers. This is a new tool that was first introduced with NetWare 4.0.

NPRINT and CAPTURE are commands that take a number of options and can be used for sending a print job to a network printer.

The NWUSER is the Windows-based graphical User Tool. It can be used for sending print jobs and for network-related tasks such as messaging, drive mappings, and attaching to other servers.


STUDY NOTE: Network print jobs can be sent using the following:

NETUSER

CAPTURE

NPRINT

PCONSOLE

NWUSER


These printing tools will be briefly examined next. The CAPTURE, NPRINT, and PCONSOLE tools are similar to those available for NetWare 3.

Printing Using NETUSER

Figure 8.55 shows that one of the options available to NETUSER is Printing. Selecting the Printing option shows you a list of available printer ports local to your workstation. You can select any of these ports for network redirection. After selecting a port, you are given a choice of examining Print Jobs or redirecting the selected port by using Change Printers (see fig. 8.56). You cannot examine print jobs on a printer port that has not been captured (redirected to a network printer).

Figure 8.55 NETUSER options.

Figure 8.56 Available Printer Ports.

After selecting Change Printers, you are given a list of printers and queues in the current context. If no printers or queues are shown, you can use the Ins key to browse the NDS tree. Figure 8.57 shows that queue Queue_0 and printer Printer_0 NDS objects were found in the context OU=CORP.O=SCS. You can select either the Printer_0 or the Queue_0 object to direct the network print jobs. After redirecting a local printer, the Available Ports menu in NETUSER will show the queue name the port is redirected to (see fig. 8.58). You can now select the Print Jobs option to send a print job to the network queue. From this point on, the procedure for sending print jobs is similar to that for PCONSOLE: you can press Ins and browse directories for files to print.

Figure 8.57 Printers and Print Queues.

Figure 8.58 Available Printer Ports showing printer redirection.


STUDY NOTE: If you redirect your job to a Printer object, the name of the default queue for the Printer object appears in the NETUSER screen and not the name of the Printer object.


STUDY NOTE: NETUSER can be used to redirect a local printer port to a network queue or network printer and send print jobs.

Printing Using CAPTURE

The CAPTURE command is used to redirect a local printer port to a network queue or network printer. Table 8.1 shows the CAPTURE options.

Table 8.1 CAPTURE Options

Option Description
SHow Shows current status of local printer ports. Used as an option by itself.
Printer=name Specifies network printer to which redirected print jobs should be sent. If name is a complete NDS name with embedded blanks, quotes can be used.
Local=n Redirects local LPT port n. Please note that this option cannot be used in the NPRINT command.
Queue=name Indicates queue object to which print job should be sent.
EndCap Ends redirection to local ports.
EndCap ALL Ends redirection of all local printer ports.
CReate=path Sends print job to file path.
Keep Retains print job in queue, if workstation fails.
Job=jc Specifies print job configuration to use. No need to specify other options.
NoBanner Suppresses printing of banner page.
Banner=name Prints banner page. Limit is 12 characters for banner name. Appears in lower half of page.
NAMe=name Default is name of file being printed. Indicates text in upper part of banner page. Limit is a 12-character name.
Form=n Specifies form number or name that is to be used for print job.
Copies=n Specifies number of copies for print job (1-255).
Tabs=n Number of spaces to use for a tab character.
No Tabs Suppresses tab expansion to space characters.
TImeout=n Number of seconds to wait before closing job.
Form Feed Generates a form feed character at end of print job.
No Form Feed Suppresses form feed character at end of job.
AUtoendcap Captured data should be closed and sent to printer on exiting application.
NoAutoendcap Captured data should not be closed and sent to printer on exiting application.
NOTIfy Specifies that user receive notification of print job completion.
NoNOTIfy Specifies that user not receive notification of print job completion.
/? Help.
/? ALL Displays all help screens.
Verbose Provides detailed information on command as it is executed.

The Printer=name option can be used to specify the network Printer object name to send print jobs to.

The ENDCAP command is no longer used with NetWare 4.x. Instead CAPTURE has a new EndCap option to stop printer redirection. To stop the capture of local printport LPT1, you can use

CAPTURE EndCap

or

CAPTURE  EC

To stop printer redirection for all local printers, you can use the EndCap ALL option:

CAPTURE EndCap ALL

or

CAPTURE  EC ALL

Other examples that illustrate the use of the CAPTURE command are shown next.

To capture output of local printer port LPT1 and send it to the printer object NP_0 with form feed before every print job, use

CAPTURE  L=1  P=NP_0  FF

To capture output of local printer port LPT2 and send it to the printer object HP_3 with no form feed, and a user notification at the completion of a print job, use

CAPTURE  P=HP_3  L=2  NFF  NOTI

To capture output of local printer port LPT2 and send it to the Printer object .CN=PAN_NP.OU=CORP.O=ESL, with a tab setting of 8, and send printer output to the file C:\JOBS\REPT.TXT, use

CAPTURE  P=".CN=PAN_NP.OU=CORP.O=ESL" L=2 T=8 CR=C:\JOBS\REPT.TXT

To capture output of local printer port LPT3 and send it to the Printer object .CN= NP_0.OU=CORP.O=ESL, use

CAPTURE P=.CN=NP_0.OU=CORP.O=ESL   L=3

Notice that in the previous example, the quotation marks around CN=NP_0.OU=CORP.O=SCS are not required. The quotation marks are needed if any of the object names in the NDS printer path name contain blank characters.


STUDY NOTE: The CAPTURE command is used to redirect a local printer port to a network queue or network printer.
The ENDCAP command of NetWare 3.x is no longer used with NetWare 4.x. Instead, CAPTURE has a new EndCap option to stop printer redirection.

Printing Using NPRINT

To print a job using NPRINT, use the following syntax:

NPRINT  filename   [option]

option can be replaced by any of the options in table 8.2.

Table 8.2 NPRINT Options

Option Description
Server=name Specifies a non-NDS server (bindery server) whose bindery contains the print queue definition.
Printer=name Specifies network printer to which redirected print jobs should be sent. If name is a complete NDS name with embedded blanks, quotes can be used.
Local=n Redirects local LPT port n.
Queue=name Indicates Queue object to which print job should be sent.
Job=jc Specifies print job configuration to use. No need to specify other options.
NoBanner Suppresses printing of banner page.
Banner=name Prints banner page. Limit is 12 characters for banner name. Appears in lower half of page.
NAMe=name Default is name of file being printed. Indicates text in upper part of banner page. Limit is a 12-character name.
Form=n Specifies form number or name that is to be used for print job.
Copies=n Specifies number of copies for print job (1-65000).
Tabs=n Number of spaces to use for a tab character, where n can be from 1 to 18.
No Tabs Suppresses tab expansion to space characters.
Form Feed Generates a form feed character at end of print job.
No Form Feed Suppresses form feed character at end of job.
NOTIfy Specifies that user receive notification of print job completion.
NoNOTIfy Specifies that user not receive notification of print job completion.
/? Help.
/? ALL Displays all help screens.
Verbose Provides detailed information on command as it is executed.

Examples that illustrate the use of the NPRINT command are shown next.

To print three copies of the file SYS:USERS\KSS\ENCFILE.C to printer object PAN_PRT, and use a banner of FYEO, use

NPRINT  SYS:USERS\KSS\ENCFILE.C  P=PAN_PRT C=3 B=FYEO

To print the file .ENG_SYS.ENG.ESL:DEVELOP\DOC\README.TXT to printer object .CN=NP_1.OU=SALES.ESL., use

NPRINT .ENG_SYS.ENG.ESL:DEVELOP\DOC\README.TXT  ÂP=".CN=NP_1.OU=SALES.ESL"

To print the file MYFILE.TXT using the job configuration in the container OU=SALES.O=ESL, be notified when job is completed, suppress the banner page, and send a form feed before printing the job, use

NPRINT   MYFILE.TXT J="OU=SALES.O=ESL"  NOTI   FF  NB

Printing Using PCONSOLE

To print using PCONSOLE, select the Print Queues option from Available Options in PCONSOLE. If the print queue you want to print to is not displayed, use Change Context to change context to the container that has the Queue object.

After selecting the Queue name from the Print Queues list, you will see a menu on Print Queue Information. Select the Print Jobs option. You should see the jobs in the current queue. Press Ins, enter a directory name to print from, and press Enter. You should see a list of files in the current directory that you can select for printing (see fig. 8.59). Select the files that you want to print. You will be given a choice of Print Job Configurations to use for printing (see fig. 8.60). If no print job configurations have been defined for the current container, you can select the (Defaults) print job configuration. Figure 8.61 shows a default configuration for printing a file. You can modify any of the default values and press F10 to save your changes and send the print job to the selected queue.

Figure 8.59 Available Files for printing from PCONSOLE.

Figure 8.60 Print Job Configurations choices in PCONSOLE.

Figure 8.61 A default print job.

Network Printing Tools

Table 8.3 shows the list of network printing tools that are available for NetWare 4.x. The PCONSOLE, PSERVER, NPRINTER, and NWADMIN (Network Administrator) tools have been discussed so far. The PRINTCON and PRINTDEF tools will be discussed briefly.

Table 8.3 Network Printing Tools

Program Extension Executed On Used For
PCONSOLE EXE Workstation Creating and configuring print servers, print queues, and Printer objects.
PRINTCON EXE Workstation Creating and configuring print job configurations.
PRINTDEF EXE Workstation Defining print forms, importing/exporting print device definitions.
PSERVER NLM Server Activates the Print Server object.
NPRINTER EXE Workstation Allows a network printer attached to a station to be shared.
NPRINTER NLM Server Allows a network printer attached to a server not running PSERVER.NLM to be shared.
NWADMIN EXE Workstation GUI utility to perform printer management functions.
PSC EXE Workstation Command-line utility to control and see status of printers and print servers.

NetWare 4.x offers PRINTCON and PRINTDEF print job configuration. The print job configuration can be used as the Job Configuration parameter in CAPTURE and NPRINT to simplify the options by aggregating them under a print job configuration template. It is also used when submitting jobs to a queue using the Print Job option in NETUSER and PCONSOLE.

The PRINTCON Utility

Figure 8.62 shows the main menu for PRINTCON. The Edit Print Job Configuration is used to create new print job configurations. The Select Default Print Job Configuration allows you to select the print job configuration that will be used as a default. The Change Current Object allows you to change the Container object or User object for which the print job configuration will be defined.

Figure 8.62 The PRINTCON main menu.

Print job configurations are stored as the Print Job Configuration property of an Organization, Organizational Unit, or User object. If stored in a container, all users within the container can use the print job configuration. If the print job configuration is stored as a property of a User object, only that user can make use of the print job configuration.


STUDY NOTE: Print job configurations are stored as the Print Job Configuration property of an Organization, Organizational Unit, or User object.

PRINTCON can operate in the directory mode (the default) or the bindery mode. The function key F4 can be used to toggle between these two modes. This allows the NetWare 4.x PRINTCON to be used with NetWare 3.x bindery. In NetWare 3.x, print job configurations are stored in the bindery.

The following is a guided tour of using PRINTCON to set the print job configuration for a user.

1. Start PRINTCON. You should see the PRINTCON main screen as shown in figure 8.62.

2. The top part of the PRINTCON screen shows the object (user, container) for which PRINTCON can be used to set the print job configuration. The default is the User object under which you are logged.

To change the object for which print job configuration should be created or edited, select the Change Current Object option. After you select this option, you can use Ins to browse through and select the appropriate User or Container object.

3. To edit or create a new print job configuration, select Edit Print Job Configurations from the Available Options menu. You should see a list of any print job configurations for that user. Figure 8.63 shows that the user CN=Admin.O=ESL has three print job configurations available to it. The bnc and onc print job configurations have the description O=ESL next to them. This indicates that these print job configurations have been defined for the user O=ESL. The print job configuration ujc has been defined for the user CN=Admin.O=ESL.

The default print job configuration has an asterisk next to it.

Figure 8.63 Edit Print Job Configurations for PRINTCON.

4. To create a new print job configuration, press the Ins key. You will be asked to enter the new name for the print job configuration. Enter a descriptive name and press Enter. You will see the new print job configuration name highlighted (see fig. 8.64).

Figure 8.64 New Print Job Configuration for PRINTCON.

5. Press Enter at a highlighted print job configuration to see details for that print job configuration (see fig. 8.65).

The details of the print job configuration are explained following this list.

6. After you make your changes, press F10 to save the settings.

Figure 8.65 Details for Print Job Configuration using PRINTCON.

7. To make another print job configuration the default print job configuration, select Select Default Print Job Configuration from PRINTCON's Available Options. Highlight the print job configuration to become the default, and press Enter. An asterisk (*) will appear next to the default print job configuration.

The print job configuration options are as follows: Number of copies specifies the number of print job copies that can be printed. The value can be from 1 to 65,000 and has a default value of 1.

File contents specifies whether the tab character in print jobs should be translated to spaces. Select Text if you want tabs to be translated to spaces. If you are sending graphic print jobs, select Byte Stream. The default value is Byte Stream.


AUTHOR'S NOTE: If you are printing a mix of text and graphics jobs in a queue, it is best to select the Byte Stream value for File Contents. Many problems with graphics print jobs can be traced to a Text value setting for the File Contents parameter.

Tab size is set if the File contents is set to Text. It specifies the number of spaces that tabs in the print job are set to. The value can range from 0 to 18 and has a default value of 8.

Form feed is used to specify if the form feed character to eject the current page is sent at the end of a print job. The default value is Yes.

Notify when done is used to specify if a message should be sent to the print job owner's workstation when the print job is completed. The default value is No.

Local printer specifies which local printer is to be used with CAPTURE. You can set up to nine local printers using the LOCAL PRINTERS parameter in the NetWare DOS Requester section of the NET.CFG file.

Automatically End Capture can be set to Yes to have any print data that is waiting to be printed by the application sent to the print queue when the application exits, and to stop printer redirection. If a value of No is selected, you must issue a CAPTURE /EC command to process the print data and stop printer redirection. The default value is Yes.

Printer/Queue is used to select the printer or print queue where a print job is to be sent. If a printer or print queue is not specified here, you will have to specify one when using CAPTURE, PCONSOLE, NETUSER, or NPRINT. There is no default setting for this parameter.

Device is used to specify the print device to which the print job will be printed. This device is defined using PRINTDEF. When you select this parameter the print devices defined in the PRINTDEF database will be shown.

Mode is a set of printer control functions defined for the print device using PRINTDEF. Many of the newer applications use their own printer drivers to set the printer in a desired mode of operation (landscape, portrait, letter quality, and so on). Some of the older applications, or applications not properly designed for network printing, can use the Mode parameter to set the printer in an appropriate mode prior to printing.

Form name is used to select the form to be used for printing. The forms are defined in the PRINTDEF database.

Print banner specifies whether you want to have a banner page preceding each print job. The default is Yes.

Name is the username that should appear at the top of the banner page. The default is the name of the user submitting the print job or, if this is a print job configuration for a container, it is the name of the container object.

Banner name specifies the text that will appear at the bottom of the banner page. The default is the name of the file being printed.

Enable Timeout, if set to Yes, sends captured data for printing after a period defined in the Timeout count field. The print redirection is still in effect after the timeout period. The default is No. Timeout count is valid only when the Enable Timeout parameter is set to Yes. It is the number of seconds the Requester waits before sending the captured print data. The value can be set from 1 to 1,000 seconds and has a default value of 5 seconds.

The PRINTDEF Utility

Figure 8.66 shows the main menu for PRINTDEF. The Print Devices option is used to modify printer definitions for print devices. The Print Forms option allows you to create and modify printer form definitions. The Change Current Context allows you to change the container object for which the form definition will be defined.

Figure 8.66 The PRINTDEF main menu.

Print device definitions and forms are stored in the Print Devices and Print Forms property of the container object. If stored in a container, all users and print job configurations within the container can use the print device definition.

PRINTDEF can operate in the directory mode (the default) or the Bindery mode. The function key F4 can be used to toggle between these two modes. This allows the NetWare 4.x PRINTDEF to be used with the NetWare 3.x bindery. In NetWare 3.x, print device definitions are stored in the bindery.


STUDY NOTE: Print device definitions and forms are stored in the Print Devices and Print Forms property of the container object.


STUDY NOTE: Use the F4 function key to toggle between directory and bindery modes for PRINTCON and PRINTDEF.

Summary of Default Assignments and Printing Capabilities

When print objects are created, many of them are automatically assigned to different printing lists. Table 8.4 summarizes the default assignments.

Table 8.4 Default Print Property List Assignments

Object Print Server Users Print Server Operators Print Queue Users Print Queue Operators Printer Notify List
Parent container Yes No Yes No No
Print server creator No Yes Yes Yes No
Print job owner No No No No Yes

In addition to default assignments, certain default capabilities are assigned; these are summarized in table 8.5.

Table 8.5 Printing Tasks for Classes of Users

Tasks Print Server Users Print Server Operators Print Queue Users Print Queue Operators Printer Notify List Supervisor to Container
Create and delete print queues, printers, and print servers No No No No No Yes
Modify print queue and print server userand operator lists No No No No No Yes
Modify Notify lists No Yes No No No Yes
Modify print queue assignments No Yes No No No Yes
Modify printer status No Yes No No No No
Modify print queue operator flags No No No Yes No No
Use print queues No No Yes No No No
Manipulate other print jobs in print queue No No No Yes No No
Manipulate own print jobs in print queue No No Yes No No No
Receive print error messages Yes No No No Yes No
Down print server No Yes No No No No
Monitor print server Yes No No No No Yes

Study Guide for the Chapter

If you are preparing for exams, review the chapter with the following goals:

1. Remember the names and understand what each printing utility covered in this chapter does. Use the Study Notes as a quick review.

2. Pay particular attention to PCONSOLE and Quick Setup.

3. After studying this chapter, attempt the sample test questions for this chapter. If you miss the answer to a question, review the appropriate topic.

Chapter Summary

This chapter described the basic printing concepts used in NetWare 4.x. The properties of Print objects such as Print Queue, Printer, and Print Server objects were covered in detail. To configure network printing, the critical properties of these objects must be set correctly. Network print configuration can be done using either PCONSOLE or the NetWare Administrator. Use of the PCONSOLE tool to configure printing using the Quick Setup and the step-by-step approach were presented in detail.

Sending print jobs on the network can be done using NETUSER, CAPTURE, NPRINT, and PCONSOLE. These methods and the options available within them were discussed.

Chapter Test Questions

Test questions can have a single correct answer or multiple correct answers. Where a single answer is desired, this is indicated by a l notation that precedes the possible answers. Some questions require you to select more than one answer; this is indicated by the n preceding each answer.

Certain questions will be repeated in different ways so that you can recognize them even when the wording is different. Taking practice quizzes will not only test your knowledge but also will give you confidence when you take your exam.

1. The primary tools used for network print configuration are ______.

A. NetWare Administrator Tool

B. NetWare User Tool

C. NETADMIN

D. PRNADMIN

E. PCONSOLE

2. The NDS objects needed to configure network printing are _____.

A. Alias objects

B. Country objects

C. Print Queue objects

D. Print Job Configuration objects

E. Printer objects

F. Print Server objects

3. In NetWare 4.x a print job can be captured to a _____.

A. Print Server object

B. Printer object

C. container object that has the Print Queue object

D. Print Queue object

4. The print queue is implemented by _____.

A. the QUEUES directory

B. subdirectory of the QUEUES directory

C. SYS:QUEUES directory

D. subdirectory of the SYSTEM directory

5. Assigning a container object to the Users property of the Print Queue object means ______.

A. that all users within that container are denied access to the queue

B. that all users within that container and its parent container are denied access to the queue

C. that all users within that container can send print jobs to the queue

D. that all users within that container can perform administration tasks on the queue

6. The Authorized Print Servers property for the Print Queue object is a list of ______.

A. printers and print servers that are authorized to use the print queue

B. printers that are authorized to use the print queue

C. printers that are authorized to use the print queue server

D. print servers that are authorized to use the print queue

E. printers that service the print queue

7. The Print Server property for a Printer object is set to the ______.

A. print server to which printer is assigned

B. print servers to which printer is assigned

C. print servers assigned to the Printer object

D. print server assigned to the Printer object

8. The Notification property of the Printer object ______.

A. contains the network address of the server to which console messages should be sent concerning printer problems

B. lists the vendor contact to be notified about printer problems

C. lists the Supervisor-equivalent users to be notified about printer problems

D. lists the users to be notified about printer problems

9. The PSERVER NLM used to load a Print Server object can support ______ printers.

A. 16

B. 32

C. 64

D. 100

E. 256

F. 512

10. The Advertising Name property of the Print Server object is the name used by the ______ to advertise its existence using the ______.

A. PRINTCON, NetWare Core Protocol

B. PSERVER, NetWare Core Protocol

C. PRINTCON, Service Advertising Protocol

D. PSERVER, Service Advertising Protocol

11. You can unload a running print server using ______.

A. NetWare Administrator

B. PRINTCON

C. PCONSOLE

D. PSERVER running on the server

E. NETUSER

F. NETADMIN

12. The Operators property of the Print Server object is ______.

A. a list of users who can use the print server

B. a list of users who can perform administrative tasks on the print server

C. a list of users with the Supervisor All Properties right to the Print Server object

D. Container objects whose users can perform administrative tasks on the print server

13. Changes made to the Print Server object properties of a running print server ______.

A. are not registered with the print server, unless you select the Update Configuration option from the PSERVER menu option

B. are not registered with the print server, unless you bring the print server down and up again

C. are registered with the print server immediately

D. are registered with the print server within the Poll Interval Time property value of the print server

14. Printer definitions that are local to the print server are ______.

A. autoloaded

B. manually loaded

C. autoloaded only if the Auto Load property of the Print Server object is set

D. loaded when the PSERVER.EXE loads

15. Remote printers in NetWare 4.x can be loaded using ______.

A. PCONSOLE.EXE

B. NPRINTER.EXE

C. RPRINTER.EXE

D. PSERVER.EXE

E. NPRINTER.NLM

F. PRINTCON.EXE

16. To create the print configuration objects, you should have a minimum of ______.

A. the Supervisor object rights to the container where these objects will be placed

B. the Create and Rename object rights to the container where these objects will be placed

C. the Create and Delete object rights to the container where these objects will be placed

D. the Create object right to the container where these objects will be placed

17. The quickest way to configure network printing is to use the ______.

A. Quick Setup option under NPRINTER

B. Fast Setup option under NPRINTER

C. Quick Setup option under PCONSOLE

D. Fast Setup option under PCONSOLE

18. To activate the print server, you must run the ______ at a NetWare 4.x server and give it the name of the ______ as a parameter.

A. NPRINTER.NLM, Print Server object

B. NPRINTER.NLM, Printer object

C. PSERVER.NLM, Print Server object

D. PSERVER.NLM, Printer object

19. The Quick Setup option in PCONSOLE can be used to ______.

A. create in a single step a Print Queue, Printer, and Print Server object, but the critical properties defined have to be defined separately

B. create in a single step a Print Queue, Printer, and Print Server object that have all their critical properties defined

C. create the Print Queue and Print Server object, but the Print Server object has to be defined separately

D. print network jobs quickly

20. Which of the following tools can be used in printing network print jobs?

A. NETUSER

B. CAPTURE

C. PRINTCON

D. PRINTDEF

21. The CAPTURE command is used to ______.

A. redirect a local printer port to a network printer only

B. redirect a local printer port to a network queue or network printer

C. redirect a local printer port to a network queue only

D. redirect a remote printer port to a network queue or network printer

22. Which command-line utility can be used to control and set status of printers and print servers?

A. PRINTCON

B. NETUSER

C. NPRINTER

D. PCONSOLE

E. PSC

F. PSERVER

23. Print job configurations can be stored as ______.

A. the Print Job Configuration property of an Organization object

B. the Print Job Configuration property of a Country object

C. the Print Job Configuration property of a User object

D. the Print Job Configuration property of an Organizational Unit object

E. the Print Job Configuration property of a Print Server object

24. Print form definitions are stored in the ______.

A. Print Forms property of the Container object

B. Print Forms property of the Container or User object

C. Forms property of the User object

D. Print Forms property of the Printer object

25. Which of the following statements for NetWare 4.x printing are true?

A. Printer, Print Queue, and Print Server objects can be created using NETADMIN.

B. To set up a remote printer, you can use the NPRINTER.EXE program.

C. Printer, Print Queue, and Print Server objects can be created using PCONSOLE.

D. The password property can be set for Print Queue objects.

26. The Print Queue object can be created using ______.

A. PCONSOLE

B. NETADMIN

C. NetWare Administrator

D. FILER

27. Printer redirection can be done using ______.

A. FILER

B. PCONSOLE

C. CAPTURE

D. NPRINT

E. NETUSER


Previous chapterNext chapterContents


Macmillan Computer Publishing USA

© Copyright, Macmillan Computer Publishing. All rights reserved.