Erfahrungen mit CUPS im Windowsnetzwerk
Hallo Liste, das wird etwas länger... Grundinfos: 1. Es gibt einen SUSE LINUX 9.3 PROFESSIONAL Rechnen, auf dem lokal (nacheinander) ziemlich viele Menschen (Studentenwohnheim) arbeiten und drucken. Der Drucker ist ein Samsung ML-1520. Wird manchmal von dem System schlecht behandelt (taucht z.B. unter localhost:631 überhaupt nicht auf, man kann aber drucken :-). So ca. jeden Monat muss ich den Drucker entfernen, CUPS komplett neu installieren, Drucker einrichten, fertig (!), weil das System anscheinend den Drucker aus den Augen verliert. Ist das SUSE oder Samsung? Mit dem Programm/Treiber von Samsung geht es schon besser, aber dann werden keine Einträge in /var/log/cups/page_log gemacht, was in meinem Fall fatal ist. Siehe unten: 2. Wir sind nicht karitativ, deshalb gibt es ein Abrechnungssystem. Leider nur auf die Datei page_log von CUPS basierend, da ich keine Zeit für etwas Besseres (z.B pykota) habe bzw. der Drucker das wahrscheinlich sowieso nicht unterstützt. Python-Skript liest page_log aus, mogelt es ein wenig um, rein in eine MySQL-Datenbank, OpenOffice mit einer Abfrage erstellt die Rechnungen, raus. 3. Hier fängt auch schon das Problem an. Ich musste das Drucken von fremden Rechnern abstellen, weil mein Python-Skript durcheinander kommt. An der Stelle, wo in page_log 'user' stehen soll, steht (von Windows Clients) 'vorname nachname'. Das bringt das Dingelchen etwas durcheinander. Also, erstmal kein Drucken von Windows-Rechner. 4. Das Drucken von Windows auf Cups bereitete mir auch deshalb Kopfschmerzen, weil CUPS keine Kopienzahl/Seitenzahl korrekt protokolliert, weil Windows halt schon alles vorverarbeitet schickt. Ich habe gehört, das kann man umgehen, indem man einen PS-Drucker einrichtet. Nun, welchen, denn ich habe es zu Hause mit einem Apple LaserWriter ausprobiert, funktionierte nicht. Am Arbeitsplatz muss es aber fuktionieren Zu 3: Ich kann mir vorstellen, das Problem lösen zu können. CUPS bietet ja die Möglichkeit an, eine Authentizierung anzufordern. Dann wird der Eintrag in page_log automatisch mit dem empfangenem username vorgenommen Bei mir lokal klappte es, ich habe aber keine Ahnung, wie das von z.B. Win2000 oder WinXP Rechnern klappen würde, am besten mit dem dauerhaften Merken des Passworts. Ich will auch nicht auf Samba Drucker umsatteln, sondern die Drucker sofort auf Port 631 zugreifen lassen. Hat jemand hierzu mehr Erfahrung? Oder eine gute Anleitung gesehen? Zu 4: Welchen Drucker nimmt man, damit die Kopienzahl/Seitenzahl auch beim Drucken von Windows klappt? Für gute Anleitungen im Internet bin ich extra dankbar, denn ich muss meine(n) Nachfolger(in) auch schon vorbereiten... Gruß, -- Anca Tibor Attila <anca.tibor[at]gmx.de>
Hallo, Am Tue, 14 Feb 2006, Anca Tibor Attila schrieb:
halt schon alles vorverarbeitet schickt. Ich habe gehört, das kann man umgehen, indem man einen PS-Drucker einrichtet. Nun, welchen, denn ich habe es zu Hause mit einem Apple LaserWriter ausprobiert, funktionierte nicht. Am Arbeitsplatz muss es aber fuktionieren
Nimm den Adobe Treiber. Der erzeugt sauberes PS. Und kann verschiedene PPDs verwenden. Zum Rest kann ich leider nix sagen. -dnh -- 179: Torx-Schrauben Hände-Weg-Schrauben (nach Marc Habers Kollegen)
Hallo, On Feb 14 22:44 Anca Tibor Attila wrote (shortened):
1. Es gibt einen SUSE LINUX 9.3 PROFESSIONAL Rechnen, auf dem lokal (nacheinander) ziemlich viele Menschen (Studentenwohnheim) arbeiten und drucken. Der Drucker ist ein Samsung ML-1520. Wird manchmal von dem System schlecht behandelt (taucht z.B. unter localhost:631 überhaupt nicht auf, man kann aber drucken :-). So ca. jeden Monat muss ich den Drucker entfernen, CUPS komplett neu installieren, Drucker einrichten, fertig (!), weil das System anscheinend den Drucker aus den Augen verliert.
Aus den Infos kann ich nicht raten was passiert. Grundsätzlich siehe http://portal.suse.com/sdb/de/2004/05/jsmeix_print-cups-in-a-nutshell.html
2. Wir sind nicht karitativ, deshalb gibt es ein Abrechnungssystem. Leider nur auf die Datei page_log von CUPS basierend,
Die page_log wird von den CUPS Filtern (insbes. pstops) geschrieben und basiert auf einer Analyse des PostScript. Zuverlässsiges Accounting ist auf die Art grundsätzlich nicht möglich. Die Seitenanzahl wird z.B. aus den DSC Kommentaren im PostScript bestimmt. DSC Kommentare sind etwa folgendes: echo -e 'Eins\fZwei\fDrei' | a2ps -1 -o - | grep '^%%' ---------------------------------------------------------- ... %%Page: (1) 1 %%BeginPageSetup %%EndPageSetup %%Page: (2) 2 %%BeginPageSetup %%EndPageSetup %%Page: (3) 3 %%BeginPageSetup %%EndPageSetup %%Trailer ---------------------------------------------------------- Durch einfaches Löschen aller DSC Kommentare etwa mit sed -e '/^%%/d' kann das normalerweise umgangen werden. Vergl. das page_log nach echo -e 'Eins\fZwei\fDrei' | a2ps -1 -o - | lp -d QUEUE und nach echo -e 'Eins\fZwei\fDrei' | a2ps -1 -o - | sed -e '/^%%/d' | lp -d QUEUE Der zweite Ausdruck ist evtl. nicht korrekt, aber darauf kommt es hier nicht an, es geht darum, dass nichts im page_log steht. Ein wenig Abhilfe gegen unerfahrene Betrüger ist, mit einem zusätzlichen Prefilter dafür zu sorgen, dass nur PostScript mit sinnvoll erscheinenden DSC Kommentaren vom Filtersystem verarbeitet wird, alles andere kommt nach /dev/null Siehe dazu: http://portal.suse.com/sdb/de/2003/05/jsmeix_print-cups-filters.html Dann werden zwar Druckjobs ohne DSC Kommentar akzeptiert, aber eben nicht ausgedruckt. Zusätzlich könnte in /etc/cups/*.types und /etc/cups/*.convs alles ausser der für die PostScript Verarbeitung nötigen Einträge gelöscht werden, damit nicht PCL etc. akzeptiert wird. Man kann aber z.B. die Einträge für text/plain stehen lassen, denn das wird via texttops nach PostScript konvertiert und texttops erzeugt korrekte DSC Kommentare. Ob auch imagetops und pdftops korrekte DSC Kommentare erzeugen, weiß ich nicht, aber wenn ja, dann kann man auch das alles lassen. Es kommt eben nur darauf an, dass das, was pstops bekommt, korrekte DSC Kommentare enthält, denn pstops bestimmt anhand der DSC Kommentare die Seitenanzahl. Erfahrene Betrüger können natürlich die DSC Kommentare beliebig passend fälschen, so dass z.B. nur jede zweite Seite gezählt wird.
Welchen Drucker nimmt man, damit die Kopienzahl/Seitenzahl auch beim Drucken von Windows klappt?
Das einzige relativ zuverlässige Accounting ist: - Drucker mit zuverlässig funktionierendem auslesbarem Seitenzähler (z.B. Netzwerkdrucker mit via SNMP auslesbarem Seitenzähler). - Seitenzähler vor und nach jedem Druckjob lesen, um auch bei brutalen Abbrüchen den korrekten Stand des Seitenzählers am Ende des Druckjobs zu bekommen (das ist dann der Stand des Seitenzählers am Anfang des nächsten Druckjobs). Z.B. wenn der Benutzer am Ende seines Dokuments einige überflüssige Seiten anhängt und den Netzstecker am Drucker zieht sobald seine Nutzdaten gedruckt wurden. - Das Accounting ist dann so zuverlässig wie der Seitenzähler im Drucker selbst. Z.B. zählt der Seitenzähler auch fehlerhaft eingezogene Blätter (bei "Paper Jam") oder nicht? Gruss, Johannes Meixner -- SUSE LINUX Products GmbH, Maxfeldstrasse 5 Mail: jsmeix@suse.de 90409 Nuernberg, Germany WWW: http://www.suse.de/
Hallo Johannes (und alle anderen auch), Am Mittwoch, 15. Februar 2006 14:31 schrieb Johannes Meixner: [...]
Aus den Infos kann ich nicht raten was passiert. Grundsätzlich siehe http://portal.suse.com/sdb/de/2004/05/jsmeix_print-cups-in-a-nutshell .html
Ich drucke die Seite gerade, werde durchlesen.
2. Wir sind nicht karitativ, deshalb gibt es ein Abrechnungssystem. Leider nur auf die Datei page_log von CUPS basierend,
Die page_log wird von den CUPS Filtern (insbes. pstops) geschrieben und basiert auf einer Analyse des PostScript. Zuverlässsiges Accounting ist auf die Art grundsätzlich nicht möglich.
Das ist leider so. Das Gute in dem Ganzen: 1. Der schuldige Samsung-Drucker steht jetzt bei mir im Büro und werkelt ausgezeichnet: Ich habe die Samsung-eigenen Treiber installiert. Jetzt sehe ich den Drucker auch unter localhost:631. Daswusste ich früher auch schon, aber mit diesen Treibern wird eben das page_log unangetaset und bis jetzt geschah unser Accounting halt mit Hilfe von page_log. 2. Mein alter Bürodrucker (was man alles herausfindet, wenn man dahinter schaut...) ist ein richtiger PS-Drucker, dazu auch noch Netzwerkfähig, mit JetDirect (HP LaserJet 5M). Steht jetzt im Rechnerraum und tut seine treuen Dienste. Sofern hat sich die Lage verbessert. Dieser Drucker kann jetzt als Grundlage für eine genauere Rechnungsstellung genutzt werden. [...]
Welchen Drucker nimmt man, damit die Kopienzahl/Seitenzahl auch beim Drucken von Windows klappt?
Das einzige relativ zuverlässige Accounting ist: - Drucker mit zuverlässig funktionierendem auslesbarem Seitenzähler (z.B. Netzwerkdrucker mit via SNMP auslesbarem Seitenzähler). - Seitenzähler vor und nach jedem Druckjob lesen, um auch bei brutalen Abbrüchen den korrekten Stand des Seitenzählers am Ende des Druckjobs zu bekommen (das ist dann der Stand des Seitenzählers am Anfang des nächsten Druckjobs).
Ich werde das mal in Angriff nehmen. Ich habe von einem Linuxstammtisch-Menschen die Zusage, dass ich in den nächsten Tagen die Lösung, von seiner Fachhochschule gemailt bekomme (nutzen auch SNMP und o).
Z.B. wenn der Benutzer am Ende seines Dokuments einige überflüssige Seiten anhängt und den Netzstecker am Drucker zieht sobald seine Nutzdaten gedruckt wurden.
Ich mag ein Trämer sein, aber ich vertraue immer noch den BewohnerInnen unseres _theologischen_ Hauses. Ich habe noch nicht erfahren, dass man mit dem Drucker so krass vorgeht. wenn ich das erfahre, sperre ich den Zugang und basta.
- Das Accounting ist dann so zuverlässig wie der Seitenzähler im Drucker selbst. Z.B. zählt der Seitenzähler auch fehlerhaft eingezogene Blätter (bei "Paper Jam") oder nicht?
Tja, ein wenig Übel bleibt immer. Für mich wäre schon eine Erleichterung, wenn ich ein eingerichtetes System, das relativ einfach zu warten ist, hinterlassen kann. Also, vielen Dank für die vielen Hinweise, ich wurschtele mich jetzt durch die Anleitungen durch Und vielen Dank auch an alle anderen für ihre Hinweise. Ich muss jetzt alles erstmal verdauen und dann etwas machen :-) Gruß, -- Anca Tibor Attila Kommissarischer Studieninspektor Ev.-Theol. Stift an der Universität, Hans-Iwand-Haus Humboldtstr. 42 53115 Bonn Fon: +49 (0)228 73-2200 Fax: +49 (0)228 73-9788 eMail: studinsp-hih@gmx.de URL: http://www.hih.uni-bonn.de
participants (4)
-
Anca Tibor Attila
-
Anca Tibor Attila
-
David Haller
-
Johannes Meixner