- PC Printing History
- Printer Communication Protocols and Hardware
- Network Printing Basics
- Setting Up Line Printer Remote on Windows Clients
- Printing PostScript and DOS Command Files
- Checking PostScript Printer Capabilities
- Setting Up LPR/LPD on FreeBSD
- Printer Accounting
- Microsoft Networking Client Printing with Samba
- Printing Between NT Server or NetWare and FreeBSD
- Printing from UNIX
- Managing the UNIX Print Queue
Printer Accounting
The FreeBSD print spooler can manage accounting statistics for printer usage. The spooler counts each page printed and generates totals for each user. In this manner departments or individuals can be charged money for their use of the printer.
In the academic world, such as student computer labs, accounting is very political. Many schemes have been developed to attempt to gather statistics to charge people (generally students) for printing. Administrators in this environment who deal with printers can have almost as many accounting problems as printer problems. In the corporate environment, on the other hand, accounting is not as important. I strongly recommend against any corporation attempting to implement printer accounting on shared printers for a number of reasons.
The entire UNIX accounting system is based on ASCII printouts. It is easy to count the number of ASCII pages, form feeds, or text lines in a print job. In corporations, however, PostScript and HPPCL are generally the order of the day. It is almost impossible to figure out by examining the datastream how many pages it will occupy, and even if this could be done accurately, it wastes significant computational resources.
Banner pages aren't included in UNIX printer accounting counts. Therefore, someone submitting 20 two-page jobs uses much more paper than does someone submitting one 40-page job, yet both are charged the same amount.
Note - It is possible to get some PostScript printers to count pages, but doing so requires a bidirectional connection to the printer and additional programming on the UNIX system. This task is beyond the scope of this book.
The username of the submitter can be easily forged if the job is remotely submitted over the network from a client (practically all jobs in a Windows client printing environment are remotely submitted). Although some LPR clients can be set to authenticate, and the rs capability can be set to enforce authentication, not all can, especially Windows LPR clients.
It is more difficult for a submitter to hide the IP number or machine name of the remote client, but in a Windows environment there is no guarantee that someone was sitting at a particular desktop machine when the job was submitted.
A business generates no revenue by monitoring printer usage. In the academic community, however, when a student lab charges for printouts, the lab is actually extracting money from an entity (the student) that is separate from the lab. Within a corporation, the concept of department A getting revenue from user B is pointless and doesn't generate a net gain for the corporation as a whole.
For my printer administration, I have found that I can save more money on printing costs by purchasing supplies wisely than by attempting to discourage printing through "chargebacks." What is the sense of being miserly with printing while spending double on toner cartridges because no one is willing to comparison-shop, or signing a "lease" agreement that isn't beneficial for the printer? When you get down to it, corporate users don't care much for printsharing anyway, and they generally agree to it only because the administrator can buy a far bigger, faster, and fancier printer than they can requisition.
Worse yet, if usage on a shared printer is charged, it encourages employees to look for other places to print. Inevitably, people buy cheap inkjet printers for their own use, and the business ends up spending more on paper and supplies for many poor-quality small printers than it would for a few decent big ones. Moreover, the inferior output of these printers makes the organization as a whole look bad.
The corporate spirit should be one of teamwork, not bickering. The surest way to kill a network in a corporation is to set up a situation that puts the administrator into the policeman position or pits one department against another.
The only justification I've ever seen for running accounting on corporate printers is using the accounting system to automate reminders to the administrator to replace paper or toner. Aside from this use, a corporation that implements accounting as a way of encouraging employees not to waste paper ends up defeating the purpose of turning on accounting.