Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

PDF-Druck unter eisfair

3 views
Skip to first unread message

Stefan Puschek

unread,
Feb 9, 2024, 7:47:00 AM2/9/24
to
Hallo Wissende,

ich möchte demnächst den Umstieg von lprng auf cups auf meinem e1 in
Angriff nehmen. Das wird bestimmt jede Menge dumme Fragen von mir geben
:)

Dabei ist mir aufgefallen, dass ich auf ALLEN clients immer über samba
drucke. Der Grund dafür ist, dass ich im samba-Paket auch den
PDF-Printer nutze - das PDF kommt dann per Mail.

Der 2. Drucker ist ein Brother HL-5140 - nur zur Info.

Einen anderen Grund für samba gibt es bei mir eigentlich nicht mehr -
hier ist "Windows-freie Zone" :)

Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um von
meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?

Wenn ich schonmal dabei bin, kann ich dann diese "Altlast" gleich mit
entsorgen - nix gegen samba, aber ich brauche es ansonsten nicht mehr.

Wer weiss Rat?

Groetjes
Stefan

Marcus Röckrath

unread,
Feb 9, 2024, 8:10:03 AM2/9/24
to
Hallo Stefan,

Stefan Puschek wrote:

> ich möchte demnächst den Umstieg von lprng auf cups auf meinem e1 in
> Angriff nehmen. Das wird bestimmt jede Menge dumme Fragen von mir geben
> :)

Dafür sind wir da, ist aber insgesamt sehr schmerzfrei.

> Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um von
> meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?

Dafür bräuchte es das Paket cups-pdf, was es bislang wohl noch nicht gibt;
sähe nach Blick ins src-RPM keine Probleme.

Mal sehen, was Holger dazu meint.

--
Gruß Marcus
[eisfair-Team]

Stefan Puschek

unread,
Feb 9, 2024, 8:36:59 AM2/9/24
to
Hallo Marcus,

> > ich möchte demnächst den Umstieg von lprng auf cups auf meinem e1 in
> > Angriff nehmen. Das wird bestimmt jede Menge dumme Fragen von mir
> > geben :)
>
> Dafür sind wir da, ist aber insgesamt sehr schmerzfrei.

danke :)

> > Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um
> > von meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?
>
> Dafür bräuchte es das Paket cups-pdf, was es bislang wohl noch nicht
> gibt; sähe nach Blick ins src-RPM keine Probleme.
>
> Mal sehen, was Holger dazu meint.

macht mal langsam: das müsste doch auch LOKAL auf jedem client gehen -
ich bin da gerade am buddeln...

Groetjes
Stefan



Marcus Röckrath

unread,
Feb 9, 2024, 9:00:04 AM2/9/24
to
Hallo Stefan,

Stefan Puschek wrote:

> macht mal langsam: das müsste doch auch LOKAL auf jedem client gehen -
> ich bin da gerade am buddeln...

Viele Anwendungen z. B. Libreoffice bieten den direkten Export/Druck als PDF
an; einen "PDF-Drucker" bräuchte man eigentlich nicht nur für Programme,
die dies nicht selbst bieten.

Ich bin auch schon den Weg gegangen, mit einem PS-Drucker eine
Postscript-Datei zu erzeugen und dann mit ps2pdf die Umwandlung nach PDF
vorzunehmen.

ps2pdf gehört zu einer ganzen Sammlung von Tools, mit denen man auch mehere
Seiten auf einem Blatt ausgeben, Dateien verbinden, ein Booklet herstellen
kann.

Welches sind denn deine Anwendungen, aus denen du PDFs erzeugen willst?

--
Gruß Marcus
[eisfair-Team]

Holger Bruenjes

unread,
Feb 9, 2024, 9:18:26 AM2/9/24
to
Hallo Stefan

Am 09/02/2024 um 13.46 schrieb Stefan Puschek:
> Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um von
> meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?
>
> Wenn ich schonmal dabei bin, kann ich dann diese "Altlast" gleich mit
> entsorgen - nix gegen samba, aber ich brauche es ansonsten nicht mehr.

es gibt schon cups-pdf, ich habe es bisher nicht angeboten, weil es
weniger komfortabel ist als die PDF Erzeugung die in Samba
eingebunden ist und Samba doch meistens installiert ist.

Wenn Bedarf besteht laesst sich das Nachholen.

Holger



Marcus Röckrath

unread,
Feb 9, 2024, 9:40:03 AM2/9/24
to
Hallo Holger,

Holger Bruenjes wrote:

> es gibt schon cups-pdf, ich habe es bisher nicht angeboten, weil es
> weniger komfortabel ist als die PDF Erzeugung die in Samba
> eingebunden ist und Samba doch meistens installiert ist.

Ich nehme an, dass Cups-PDF nur in eine Datei "drucken" kann, während in
Samba auch Zustellung per Mail möglich ist.

> Wenn Bedarf besteht laesst sich das Nachholen.

Ich würde damit auch gerne mal experimentieren.

--
Gruß Marcus
[eisfair-Team]

Stefan Puschek

unread,
Feb 9, 2024, 10:31:44 AM2/9/24
to
Hallo Marcus,
>
> > macht mal langsam: das müsste doch auch LOKAL auf jedem client
> > gehen - ich bin da gerade am buddeln...
>
> Viele Anwendungen z. B. Libreoffice bieten den direkten Export/Druck
> als PDF an; einen "PDF-Drucker" bräuchte man eigentlich nicht nur für
> Programme, die dies nicht selbst bieten.

aber leider nicht alle

> Ich bin auch schon den Weg gegangen, mit einem PS-Drucker eine
> Postscript-Datei zu erzeugen und dann mit ps2pdf die Umwandlung nach
> PDF vorzunehmen.
>
> ps2pdf gehört zu einer ganzen Sammlung von Tools, mit denen man auch
> mehere Seiten auf einem Blatt ausgeben, Dateien verbinden, ein
> Booklet herstellen kann.
>
> Welches sind denn deine Anwendungen, aus denen du PDFs erzeugen
> willst?

ich will einfach aus allen Anwendungen PDFs erzeugen können.

Und wenn das auch am Notbuch - und nicht nur in meinem LAN, also rein
lokal geht - dann ist das DIE Lösung für mich.

Gerade auf Debian probiert - die PDFs landen in ~/PDF/ und damit kommt
jeder User klar.

Also Problem für mich gelöst.

Groetjes
Stefan


Stefan Puschek

unread,
Feb 9, 2024, 10:35:08 AM2/9/24
to
Hallo Marcus und Holger,
>
> > es gibt schon cups-pdf, ich habe es bisher nicht angeboten, weil es
> > weniger komfortabel ist als die PDF Erzeugung die in Samba
> > eingebunden ist und Samba doch meistens installiert ist.
>
> Ich nehme an, dass Cups-PDF nur in eine Datei "drucken" kann, während
> in Samba auch Zustellung per Mail möglich ist.
>
> > Wenn Bedarf besteht laesst sich das Nachholen.
>
> Ich würde damit auch gerne mal experimentieren.

ich auch :)

Dann bräuchte man nur noch eine Lösung dafür, WOHIN der eisfair das von
ihm erzeugte PDF verschieben soll.

Groetjes
Stefan

Rolf Bensch

unread,
Feb 9, 2024, 10:47:45 AM2/9/24
to
Hallo Stefan,

Am 09.02.24 um 13:46 schrieb Stefan Puschek:
> ...
> Einen anderen Grund für samba gibt es bei mir eigentlich nicht mehr -
> hier ist "Windows-freie Zone" :)
>
> Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um von
> meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?

Mal eine Frage: wenn überall Debian12 als Client läuft, weshalb dann den Umweg über den Server? cups_pdf ist doch unter Debian12 verfügbar, die Clients können eigenständig PDFs erzeugen.

Grüße

Rolf

Stefan Puschek

unread,
Feb 9, 2024, 11:37:18 AM2/9/24
to
Hallo Rolf,

> > Einen anderen Grund für samba gibt es bei mir eigentlich nicht mehr
> > - hier ist "Windows-freie Zone" :)
> >
> > Gibt es unter eisfair eine zusätzliche Möglichkeit (neben samba) um
> > von meinen clients (alle Debian 12) eine PDF-Datei zu "drucken"?
>
> Mal eine Frage: wenn überall Debian12 als Client läuft, weshalb dann
> den Umweg über den Server? cups_pdf ist doch unter Debian12
> verfügbar, die Clients können eigenständig PDFs erzeugen.

weil ich das bis soeben noch nicht kannte :)

Groetjes
Stefan

Marcus Röckrath

unread,
Feb 9, 2024, 11:40:04 AM2/9/24
to
Hallo Stefan,

Stefan Puschek wrote:

> Gerade auf Debian probiert - die PDFs landen in ~/PDF/ und damit kommt
> jeder User klar.

Genau so hätte ich es erwartet.

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 9, 2024, 11:40:04 AM2/9/24
to
Hallo Stefan,

Stefan Puschek wrote:

> Dann bräuchte man nur noch eine Lösung dafür, WOHIN der eisfair das von
> ihm erzeugte PDF verschieben soll.

Nach meinem Verständnis wird bei Verwendung des Cups-PDF-Drucker das PDF
doch direkt auf dem Client gespeichert.

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 9, 2024, 11:50:03 AM2/9/24
to
Hallo Rolf,

Rolf Bensch wrote:

> Mal eine Frage: wenn überall Debian12 als Client läuft, weshalb dann den
> Umweg über den Server? cups_pdf ist doch unter Debian12 verfügbar, die
> Clients können eigenständig PDFs erzeugen.

Dafür müsste man auf jedem Linux-Client Cups im Servermode laufen lassen.

Eigentlich reicht es aber, CUPS genau einmal im lokalen Netzwerk als Server
zu installieren, auf den Client dann nur noch im Client-Mode.

IMHO kann man dann direkt alle vom Server "exportierten" Drucker nutzen,
ohne diesen auf den Clients Druckertreiber zuweisen zu müssen.

--
Gruß Marcus
[eisfair-Team]

Stefan Puschek

unread,
Feb 9, 2024, 2:06:45 PM2/9/24
to
Hallo Marcus,

> > Dann bräuchte man nur noch eine Lösung dafür, WOHIN der eisfair das
> > von ihm erzeugte PDF verschieben soll.
>
> Nach meinem Verständnis wird bei Verwendung des Cups-PDF-Drucker das
> PDF doch direkt auf dem Client gespeichert.

aber Holger baut doch cups-pdf für den eisfair - und nicht für den
client...

Oder habe ich das falsch verstanden?

Groetjes
Stefan


Marcus Röckrath

unread,
Feb 9, 2024, 2:30:04 PM2/9/24
to
Hallo Stefan,

Stefan Puschek wrote:

Nein, aber das ist kein Widerspruch - jedenfalls, soweit ich, bislang habe
ich historisch auf allen Linux-Clients immer das volle Cups-Server Geraffel
installiert.

Prinzipiell brauchst du im lokalen Netz nur einen einzelnen Cups-Server, bei
dem sich dann die ganzen Clients mittels des abgespeckten Cups-Clients
bedienen können.

Egal, ob es nun der eis oder ein anderer PC im Netz die Rolle des
CUPS-Servers übernimmt, werden dann auf diesem die Drucker samt Treiber
eingerichtet.

Auf den sonstigen Clients kommt dann der kleine Cups-Client zum Zuge.

Nach meinen Tests habe ich dann auf den Clients die Drucker des Cups-Server
mit "Raw Queue" (also ohne spezifischen Treiber) eingerichtet.

Wenn Holger cups-pdf bereitstellt, spiele ich da mal mit, denn für den
echten Drucker muss ich immer runter in den Keller - scheisse bei Arthrose.

--
Gruß Marcus
[eisfair-Team]

Holger Bruenjes

unread,
Feb 9, 2024, 2:49:34 PM2/9/24
to
Hallo Stefan

Am 09/02/2024 um 20.22 schrieb Marcus Röckrath:

>> aber Holger baut doch cups-pdf für den eisfair - und nicht für den
>> client...
>>
>> Oder habe ich das falsch verstanden?

ja und nein, cups gibt als Server Anwendung und als Client.

Der Server stellt im Linux Netz alles bereit, da ist auf den CLients
nichts weiter zu tun als den cups-client zu installieren, da ist es
egal ob du jetzt debian, suse, ubuntu oder sonst irgendeine Linux
Distribution installiert hast. Die Clients verbinden sich alle zum
Server, problemlos. Ein Server Dienst ist auf den Clients nicht
erforderlich und erzwingt, wenn dann, einiges an Mehrarbeit, gut das
muss halt jeder selbst wissen.

Der Rest ist Konfiguration, wie das nun fuer cups-PDF im Einzelfall
Aussehen wird muss allerdings dann noch erarbeitet werden.

Holger

Marcus Röckrath

unread,
Feb 9, 2024, 3:10:03 PM2/9/24
to
Hallo,

Marcus Röckrath wrote:

> Nach meinem Verständnis wird bei Verwendung des Cups-PDF-Drucker das PDF
> doch direkt auf dem Client gespeichert.

Nach dem Readme zu cups-pdf landen die PDFs auf dem Server.

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 10, 2024, 5:50:03 AM2/10/24
to
Hallo Holger,

Holger Bruenjes wrote:

> es gibt schon cups-pdf, ich habe es bisher nicht angeboten, weil es
> weniger komfortabel ist als die PDF Erzeugung die in Samba
> eingebunden ist und Samba doch meistens installiert ist.

Mit der in Cups-PDF möglichen PostProcessing-Option wäre beliebiges umgehen
mit dem erzeugten PDF möglich, also auch alles das realisierbar, was
Samba-PDF anbietet.

Über PostProcessing wird ein Skript nach Erzeugung des PDFs angestoßen,
welches dann z. B. das PDF per Mail versenden könnte, in ein anderes
Verzeichnis verschieben kann, ...

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 10, 2024, 7:50:03 AM2/10/24
to
Hallo,

Marcus Röckrath wrote:

> Über PostProcessing wird ein Skript nach Erzeugung des PDFs angestoßen,
> welches dann z. B. das PDF per Mail versenden könnte, in ein anderes
> Verzeichnis verschieben kann, ...

Die Einbindung dieses Skripts ist problemlos und dort kann man dann machen,
was man möchte.

Dazu gehörte auch, das nachzubauen, was Samba-PDF kann, nämlich speichern in
public oder Versand per Mail.

Die Ablage des PDFs in von Usernamen abhängigen Verzeichnissen ist ja der
"Normalfall" von cups-pdf.

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 10, 2024, 4:20:03 PM2/10/24
to
Hallo Stefan,

Stefan Puschek wrote:

>> Dafür bräuchte es das Paket cups-pdf, was es bislang wohl noch nicht
>> gibt; sähe nach Blick ins src-RPM keine Probleme.
>>
>> Mal sehen, was Holger dazu meint.
>
> macht mal langsam: das müsste doch auch LOKAL auf jedem client gehen -
> ich bin da gerade am buddeln...

Der Vorteil eines Netzwerk-PDF-Druckers hat den Vorteil, den nicht auf jedem
Client einzeln installieren zu müssen, sondern den netzwerkweiten einfach
auf jeden Client als Raw-Drucker (ohne Treiber/PPD) im Clientmodus
einzurichten.

Habe heute mal damit rumgespielt, nachdem mir Holger das Paket
bereitgestellt hat, damit ich das Binärbackend nicht erst selbst bauen
musste.

Dabei bin ich auf ganz interessante Lösungen gestoßen.

Man kann

- verschiedene Konfigurationsdateien des PDF-Druckers nutzen
- man kann ein PostProcessing-Skript in die Konfigurationsdatei einbinden

Üblicherweise lautet die Konfigurationsdatei /etc/cups/cups-pdf.conf, womit
dann im Cups-Webinterface bei der Druckereinrichtung ein "CUPS-PDF (Virtual
PDF Printer)" auswählbar ist.

Erstellt man nun eine /etc/cups/cups-PDF-Mail.conf erscheint im Webinterface
nun auch "CUPS-PDF (Virtual PDF Printer)".

Damit dieser nun auch wirklich mailt, nutzt man die PostProcessing Option in
der Konfigurationsdatei, wo man ein skript einträgt, was die
Nachbearbeitung (Mailversand) durchführt.

Ich habe heute mal als "Studie" ein "Universalskript" geschrieben, dass
verschiednee Aktionen ausführen kann; für den lokalen Mailversand steht nun
bei mir in der /etc/cups/cups-PDF-Mail.conf:

PostProcessing /pfad/zu/cups-pdf-postprocessing mail2user "your pdf" "pdf"
(mail2user ist die Aktion; "your pdf" "pdf" die Texte für Betreff und Body
der Mail.)

Automatisch übergibt Cups noch den Dateinamen des Dokumentes und des
druckenden Users.

Somit wird nun das erzeugte PDF mittels mailx an den User versandt; auch
externen Versand habe ich damit erfolgreich getestet.

Je nachdem, welchen Aufwand man in diesem PostProcessing-Skript treiben
möchte, ist fast jede beliebige Aktion denkbar. Für jede gewünschte Aktion
ist dann eine cups-pdf-<aktion>.conf zu erstellen und der dazugehörende
PDF-Drucker einzurichten.

Hier mal mein schneller Skripthack:

#!/bin/sh

# Usage: cups-pdf-postprocessing action [...] pdf-file user user
#
# arg1 : action
# arg2 to arg<count-3> : additional arguments
# Next three (last arguments) on commandline added by the
# pdf printer automatically
# arg<count-2> : pdffile
# arg<count-1> : user
# arg<count> : user

argscount=$#

additionalargscount=$((argscount - 4))

if [ "${argscount}" -lt 4 ]
then
echo "Too less arguments; minimum 4 including the three arguments"
echo "added by pdf print driver!"
else
action="${1}"
shift
# Additional arguments are counted beginning with 2
# corresponding to there position in the commandline.
i=2
while [ -n "${1}" ]
do
if [ $# -eq 3 ]
then
pdffile="${1}"
shift
user="${1}"
shift
user2="${1}"
shift
else
eval 'arg'${i}='${1}'
shift
i=$((i + 1))
fi
done

case ${action} in
move2public)
# move all pdf's to public dir
# no additional argument
if [ "$(dirname ${pdffile})" != "/public" ]
then
mv ${pdffile} /public
fi
;;
move2dir)
# move all pdf's to the directory given as argument
# arg2 : path to move file to
if [ "${additionalargscount}" -ge "1" ]
then
if [ "$(dirname ${pdffile})" != "${arg2}" ] && \
[ "$(dirname ${pdffile})/" != "${arg2}" ]
then
mv ${pdffile} ${arg2}
fi
fi
;;
mail2printuser)
# mail pdf's to that local user who has printed it
# arg2 : mail text
# arg3 : mail subject
if [ "${additionalargscount}" -ge "2" ]
then
echo ${arg2} | mailx -s ${arg3} -a ${pdffile} ${user}
rm ${pdffile}
fi
;;
mail2address)
# mail all pdf's to a single mail address (local or extern)
# arg2 : mail text
# arg3 : mail subject
# arg4 : mail recipient
# arg5 : mail sender (eventually needed for external recipients
# depends on the mail server configuration
if [ "${additionalargscount}" -ge "4" ]
then
echo ${arg2} | mailx -s ${arg3} -r ${arg5} -a ${pdffile} ${arg4}
rm ${pdffile}
else
if [ "${additionalargscount}" -ge "3" ]
then
echo ${arg2} | mailx -s ${arg3} -a ${pdffile} ${arg4}
rm ${pdffile}
fi
fi
;;
userdependend)
# Do differnt things for some users
# Check for number of arguments: has to be additional needed
# parameters + 4
if [ "${additionalargscount}" -ge "....." ]
then
case ${user} in
username)
echo "do something"
;;
otheruser|anotheruser)
echo "do something different"
;;
yetanotheruser)
echo "do something completely different"
;;
*)
echo "No special action for all other users."
;;
esac
fi
;;
*)
echo action not defined
;;
esac
fi

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 11, 2024, 2:40:03 AM2/11/24
to
Hallo Marcus,

Marcus Röckrath wrote:

> Üblicherweise lautet die Konfigurationsdatei /etc/cups/cups-pdf.conf,
> womit dann im Cups-Webinterface bei der Druckereinrichtung ein "CUPS-PDF
> (Virtual PDF Printer)" auswählbar ist.
>
> Erstellt man nun eine /etc/cups/cups-PDF-Mail.conf erscheint im
> Webinterface nun auch "CUPS-PDF (Virtual PDF Printer)".

Das kommt von Copy 'n Paste. Der ,it cups-pdf-Mail.conf beschriebene Drucker
erscheint in der Auswahl als

CUPS-PDF (Virtual Mail Printer)

--
Gruß Marcus
[eisfair-Team]

Marcus Röckrath

unread,
Feb 11, 2024, 8:40:03 AM2/11/24
to
Hallo,

Marcus Röckrath wrote:

> Dabei bin ich auf ganz interessante Lösungen gestoßen.
>
> Man kann
>
> - verschiedene Konfigurationsdateien des PDF-Druckers nutzen
> - man kann ein PostProcessing-Skript in die Konfigurationsdatei einbinden
[...]
>
> Ich habe heute mal als "Studie" ein "Universalskript" geschrieben, dass
> verschiednee Aktionen ausführen kann; für den lokalen Mailversand steht
> nun bei mir in der /etc/cups/cups-PDF-Mail.conf:

Meine Erkenntnisse habe ich mal im Wiki als "CUPS-PDF-Drucker einrichten"
niedergeschrieben.

--
Gruß Marcus
[eisfair-Team]

Holger Bruenjes

unread,
Feb 11, 2024, 10:42:59 AM2/11/24
to
Hallo

Am 11/02/2024 um 14.30 schrieb Marcus Röckrath:

>> Ich habe heute mal als "Studie" ein "Universalskript" geschrieben, dass
>> verschiednee Aktionen ausführen kann; für den lokalen Mailversand steht
>> nun bei mir in der /etc/cups/cups-PDF-Mail.conf:
>
> Meine Erkenntnisse habe ich mal im Wiki als "CUPS-PDF-Drucker einrichten"
> niedergeschrieben.

unter Howtos nicht Wicki ;-)

Holger


Marcus Röckrath

unread,
Feb 11, 2024, 11:10:04 AM2/11/24
to
Hallo Holger,

Holger Bruenjes wrote:

>>> Ich habe heute mal als "Studie" ein "Universalskript" geschrieben, dass
>>> verschiednee Aktionen ausführen kann; für den lokalen Mailversand steht
>>> nun bei mir in der /etc/cups/cups-PDF-Mail.conf:
>>
>> Meine Erkenntnisse habe ich mal im Wiki als "CUPS-PDF-Drucker einrichten"
>> niedergeschrieben.
>
> unter Howtos nicht Wicki ;-)

Im Alter erinnert man sich an die früheren Sachen besser. ;-))

--
Gruß Marcus
[eisfair-Team]
0 new messages