-------Begin Original Question-------------------------
I am presently using SunOS (4.1.1) disk quotas to keep users from
hogging too much disk space. Works fine, no complaints.
Rumor: there is a "printer quota" system which, for example,
could limit user Fred to 200 pages per month. Rumor also has it
that there is a "login quota" where I could limit Fred to, e.g.,
10 hours of login time per week.
Is there any truth in these rumors?
-------End Original Question-------------------------
About Printer Quotas: In general, the answer seems to be: "Nothing
canned exists, but you can write one yourself." Two respondents
have written programs which maintain databases like:
fred 12/5 20 (i.e. fred printed 20 pages on 12/5)
mary 12/6 5
fred 12/6 9
john 12/6 11
fred 12/7 30
which can then be summarized into reports. However, these
programs are only useful Postscript printers, not the SPARCprinters
we have (which use NEWSprint, not Postscript). The two respondents
with working systems are:
Raymond Chen, UC Berkeley
firstname.lastname@example.org (until 12/31/91)
email@example.com (begins 2/15/92)
Phil Moyer, Purdue
About Login Quotas: No one responded to that part of my question,
so I must assume they don't exist yet. However, good news is on
the horizon. Sun has developed two packages, called ARM and ASET,
which deal with account management and security. I believe ARM
will be bundled with the Solaris 5.0 release in May '92, while ASET
will be released with a later version on Solaris. One of these
products (I can't remember which) will allow such things as:
- allow a user to logon only x times
- deactivate an account after x days/weeks/months
- activate an account during the week, deactivate it on weekends
Here are the responses about print quotas:
1. Use PLP
PLP is a public domain substitute for lpd,lpr,etc which supports printer
quotas amongst other things.
2. Write your own printer filter.
This is not as hard as it seems. Basically you take an existing filter and
add the quota stuff. I have done this with a line printer by adding code
which queried a dbm file containing paper quotas.
Printer quotas are generall implemented in the filter side, and are not
built into the lpd software. Login quotas are implemented by some of
the security systems, but not by vanillia 4.1.1.
I use a system called lpa which was developed (I think) by the
Engineering Computing Network group here at Purdue. You should be
able to get more info from: firstname.lastname@example.org < Phil Moyer >
We have a system here called lpa that uses dbm routines to keep track
of printer usage. You must have source to your printer filters to add
the appropriate routines; we have *not* modified our SparcPrinters yet,
so I don't know how hard/easy it will be. I am not altogether happy with
lpa, and I'd like to re-write it someday.
Here's a short summary of lpa:
The lpa (Line Printer Accounting) system running at the ECN at
Purdue is an add-in set of library routines that keep track of
A dbm database is kept in the printer's spool directory, along with
log files and messages to display for the user (such as "you're out
of paper; see this person to buy more" or "you don't have permission
to print on this printer").
The actual routines are compiled into the print filter for that
particular kind of printer. We have modified Adobe's pscomm for
laserwriters, QMS's ies for ethernet Imagen printers, and some of
the standard filters for line printers.
There are three kinds of users in lpa: superuser, administrator, and
user. An account with superuser privs can do anything, an account
with administrator privs can do almost anything, and a user can only
look at his/her own account. There are three kinds of accounts:
paynow, paylater, and paynever. Paynow accounts must have pre-
purchased the pages, which means that the pages-to-print field must
always be positive in order for that user to print. Paylater accounts
are allowed to run a tab, which means that the pages-to-print field
is allowed to go negative, assuming the user will pay up later. The
paynever accounts are for systems administrators who never have to
pay up, since they paid for the paper in the first place. :-)
There are shell scripts included that will print daily and monthy
usage summaries and mail them to whoever wants to see them.
Yes we have - we developed some daemons, which includes classes of
I had to implement printer quotas here myself, as part of the printer's
"if" filter. It's a perl program which does a bunch of other things
(like spooling to a printer on a terminal server) as well.
Not with the bundled software. You could get a public-domain printer
spooling system (plp? or some such from Columbia?), and it can do quotas
(along with a lot of other fun stuff). Only difficulty is that you have
to replace the spooler executables (like lpd, lpq, lpc, lpd) on ALL your
The bundled spooling system (BSD) DOES allow for printer accounting,
allowing for after-the-fact billing and/or finger-pointing.
Never yet heard of a login quota system (though other operating systems
allow for it). Again, you can do accounting for what has been used, but
not control it (see ac, last, etc.).
David Mostardi Phone: (510) 643-6071
Systems Administrator FAX: (510) 643-5348
Mathematical Sciences Research Institute Email: email@example.com
1000 Centennial Drive, Berkeley CA 94720
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:21 CDT