root / pykota / trunk / FAQ @ 1388

Revision 1388, 7.8 kB (checked in by jalet, 21 years ago)

Entry about Debian Woody

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1PyKota's FAQ :
2
3  # $Id$
4 
5  * Why doesn't CUPS under Debian Woody automatically
6    detects PyKota managed devices ?
7   
8    The CUPS version in Debian Woody is 1.1.14 which is a bit
9    too old. To use PyKota with this version, just install
10    your printers as usual in CUPS web interface, and ensure
11    they work fine, then save your changes, and modify
12    /etc/cups/printers.conf manually as explained in
13    PyKota's toplevel README file. Finally restart CUPS,
14    and your printers should be managed by PyKota.
15   
16  * Is print accounting ever exact ?
17 
18    No. Print accounting is **never** exact, because it depends
19    on external factors like the presence of paper in the printer,
20    the quantity of remaining ink in the print cartridge, paper
21    jams, etc... All these things are very difficult to account
22    for correctly, and no print accounting package deals with
23    these artefacts correctly in all situations.
24    We are however confident that PyKota is one of the more
25    exact print accounting software, because by default it
26    asks the printers for how many pages they have really printed.
27   
28  * Can PyKota account for ink usage ? 
29 
30    No. Actually PyKota doesn't account for ink usage, but this
31    may come in a future release. PyKota only accounts for pages
32    printed and/or money spent.  If ink accounting is a necessity
33    for you, PrintBill is recommended instead of PyKota. PrintBill
34    allows you to bill differently per color, and to bill depending
35    on the percent of the ink covered part of the pages.
36   
37  * What is a 'dumb printer' ?
38 
39    In PyKota, the term 'dumb printer' defines a printer which doesn't
40    understand PostScript AND doesn't have an internal page counter, AND
41    for which you don't know how to compute a job's size in number of
42    pages by analyzing its content. Any printer which is not a
43    'dumb printer' according to the above definition is supported
44    with PyKota.
45
46  * How can I make PyKota work with my non-postscript printer under
47    CUPS ? 
48 
49    From version 1.16alpha7, PyKota includes a CUPS backend which
50    allows you to use any type of printer and any driver, provided
51    your printer is not a 'dumb printer' (see above).
52   
53  * How can I use my 'dumb printer' with CUPS and PyKota. 
54 
55    The solution is to plug the pykota filter into the
56    filtering chain when the print job is still in
57    PostScript format, before being converted to the
58    dumb printer's native format. You can't use the
59    cupspykota CUPS backend with 'dumb printers'.
60   
61    Here's how to do :
62   
63        - Disable raw mode by modifying *.convs and
64          *.types files in /etc/cups, then restart
65          CUPS.
66         
67        - If you print from Windows through Samba,
68          don't put '-o raw' in the print command
69          definition in smb.conf
70         
71        - Under Windows, use a PostScript driver 
72          set to maximum compatibility mode.
73         
74        - Modify *.convs and *.types files to 
75          insert the pykota filter into the
76          filtering chain, as described
77          here (url should be on a single line) :
78         
79          http://cgi.librelogiciel.com/pipermail/  ...
80             ... pykota/attachments/20030721/753239b5/attachment.eml
81         
82          and restart CUPS.
83         
84  * I've got a great number of users. How can I automatically
85    set an initial print quota for them on first print ?
86   
87    You have to define an external policy for unknown users,
88    to automatically add them to the Print Quota database.
89    The sample configuration file contains examples to do this.
90   
91  * What does the --prototype command line option to edpykota do ?
92 
93    This option currently (v1.17) only copies the soft and hard
94    page limits from a template user to other users. This option
95    needs to be updated to new PyKota functionnalities, because it
96    currently lacks.
97   
98  * How can I diagnose the problem when something goes wrong ?
99 
100    Put "LogLevel debug2" in cupsd.conf (usually in /etc/cups/).
101    Then put "logger: system" and "debug: yes" in
102    /etc/pykota/pykota.conf.
103    Finally restart CUPS.
104    CUPS' error_log file will now contain many informations which
105    will help diagnose your problem. Also your syslog's output for
106    the LPR facility (usually /var/log/lpr.log) will contain
107    PyKota's debug messages, notably all database related queries
108    and their result, be your database PostgreSQL or OpenLDAP.
109    With these two files the problem can usually be diagnosed within
110    minutes. Send them to the mailing list and wait for an answer.
111   
112  * Some, not all, print jobs are never accounted for, why ?
113 
114    From version 1.16alpha7, you can now use the cupspykota
115    CUPS backend, which ensures that all print jobs will be
116    accounted for. The use of the old pykota filter is deprecated
117    with CUPS. It remains the filter of choice for LPRng though,
118    or when you absolutely need to support a 'dumb printer' (see
119    definition above).
120   
121  * When printing from Windows, the jobs are never accounted for,
122    but from *nix they are. Could you explain the reason for this ?
123   
124    First refer to the point above. If this doesn't solve your
125    problem, try to set your print driver to PostScript mode
126    and check the "maximum compatibility" box in its configuration,
127    instead of "maximum speed". Often HP printers come with both
128    a PCL and a PostScript driver under Windows. Don't install the
129    PCL one.
130   
131  * How can I share print quota between some printers only (not all) ?   
132 
133    To do this you have to put the printers into a printers group, and
134    set quota on the printer group, instead of (or in addition to)
135    the printers themselves.
136   
137  * What is a printer group ?
138 
139     A printer group is exactly like a normal printer, but is
140     unknown by the printing system. You can use printer groups
141     to share print quota between printers.
142   
143  * How can I create a printer group ?   
144 
145    Just use edpykota, like for normal printers.
146 
147  * How can I put a printer into a printer group ?
148 
149    Use the new -G|--pgroups command line option to edpykota
150    You can put sereval printers into several printers groups
151    in one command using the following syntax :
152   
153      $ edpykota --pgroups pg1[,pg2,pg3,...] --printers p1[,p2,p3,...]
154       
155    What is between square brackets is optional.   
156    Both p1,p2 and pg1,pg2 can contain wildcards.
157   
158  * How quota checking and update is done with printer groups ?   
159 
160    Print accounting and quota checking is done for a printer and
161    all the printers groups it belongs to, recursively.
162    If quota is reached on ANY of these printers for the current user,
163    printing is denied.
164   
165  * Is this feature robust ?
166 
167    It should be. However, beware of integrity problems. LDAP has no
168    sense of database integrity, and PostgreSQL constraints have not
169    yet been fully implemented. The code actually *tries* to forbid
170    circular printers groups, but if you create printer groups with
171    another tool (e.g. psql or gq), then you are mostly on you
172    own to not create infinite loops.
173   
174  * How is computed the job's price ? 
175 
176    A job's price is computed with this formula :
177   
178      SUM((NbPages * PricePerPage) + PricePerJob)
179     
180    For current printer and all the printers groups it is
181    a member of, if any.
182    This may be difficult to grasp, but offers unprecedented
183    flexibility.
184
185  * My question isn't answered there, can you help ? 
186 
187    Sure. Ask your question to the mailing list. If this is a
188    frequently asked question, or if your problem is on the contrary
189    very specific, it will probably be added to this document.
190   
191    You can also ask questions by IRC :
192   
193        /server irc.freenode.net
194        /join #pykota
195       
196Send any new questions to Jerome Alet - <alet@librelogiciel.com>
Note: See TracBrowser for help on using the browser.