CUPS Druckertreiber (über SAMBA bereitstellen)

Einrichten des Druckers und des Drucksystems, Scannerkonfiguration und Software zum Scannen und Faxen.
Antworten
og2
Beiträge: 34
Registriert: 18.02.2007 14:35:08

CUPS Druckertreiber (über SAMBA bereitstellen)

Beitrag von og2 » 16.07.2011 10:05:06

Ich habe versucht über SAMBA 3.x und CUPS 1.3 einen PDF-Drucker für meine PCs bereitzustellen. Leider funktioniert die automatische Treiberinstallation nicht (beim verbinden kommt immer der APW (Add-Printer-Wizard)).
Ebenfalls komisch ist das der Netzwerkdrucker in "Drucker und Faxgeräte" des Samba-Servers zwar korrekt dargestellt wird, wenn ich darauf zugreifen möchte aber eine Fehlermeldung kommt "...Den Drucker "[]" gibt es nicht an diesem Computer...". In den Eigenschaften steht dann neben dem Netzwerkdruckersymbol im Reiter "Allgemein" auch nur dieses komische Kästchen und kein richtiger Name.

Folgendes habe ich gemacht (nach dem Studium von sehr sehr vielen Anleitugen hierzu...):
- CUPS 1.3.8 installiert und ein Warteschlange "PDFDRUCKER" eingerichtet (Methode "CUPS-PDF"). Testseite erzeugt, passt.
- Den 32- und 64-Bit CUPS-Treiber aus dem CUPS-Repository besorgt und zusammen mit den noch notwendigen Treiberdateien von Windows (ebenfalls wieder 32- und 64-Bit) nach /usr/share/cups/drivers/ verschoben. Schaut jetzt so aus:

Code: Alles auswählen

-rw-r--r-- 1 root root     803 2011-07-15 13:41 cups6.inf
-rw-r--r-- 1 root root      72 2011-07-15 13:41 cups6.ini
-rw-r--r-- 1 root root    9529 2011-07-15 13:41 cups6.ppd
-rw-r--r-- 1 root root   12568 2011-07-15 13:41 cupsps6.dll
-rw-r--r-- 1 root root   13672 2011-07-15 13:41 cupsui6.dll
-rw-r--r-- 1 root root  728576 2011-07-15 13:41 ps5ui.dll
-rw-r--r-- 1 root root  543232 2011-07-15 13:41 pscript5.dll
-rw-r--r-- 1 root root   25113 2011-07-15 13:41 pscript.hlp
-rw-r--r-- 1 root root 1060548 2011-07-15 13:41 pscript.ntf
drwxr-xr-x 2 root root    4096 2011-07-15 13:42 x64

./x64:
total 2092
-rw-r--r-- 1 root root     802 2009-08-17 23:40 cups6.inf
-rw-r--r-- 1 root root      72 2009-08-17 23:40 cups6.ini
-rw-r--r-- 1 root root    9435 2009-08-17 23:40 cups6.ppd
-rw-r--r-- 1 root root   17408 2009-08-19 00:59 cupsps6.dll
-rw-r--r-- 1 root root   19456 2009-08-19 00:59 cupsui6.dll
-rw-r--r-- 1 root root  237568 2011-07-15 13:41 ps5ui.dll
-rw-r--r-- 1 root root  734208 2011-07-15 13:41 pscript5.dll
-rw-r--r-- 1 root root   26038 2011-07-15 13:41 pscript.hlp
-rw-r--r-- 1 root root 1062696 2011-07-15 13:41 pscript.ntf
- Dann in SAMBA die Druckerfunktionen aktiviert und u.a. ein "print$"-Share bereitgestellt

Code: Alles auswählen

load printers = yes
printing = cups
printcap name = cups
[printers]
    comment = Alle Standortdrucker
    printable = yes
    browseable = yes
    path = /var/spool/samba
    printer admin = administrator,@domänen-benutzer
    guest ok = yes
[print$]
    comment = Druckertreiber für lokalen Printserver
    path = /var/lib/samba/printers
    browseable = no
    guest ok = yes
    writeable = yes
- Anschließend den CUPS-Treiber in SAMBA mittels "cupsaddsmb -a -v" bereitgestellt

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: CUPS Druckertreiber (über SAMBA bereitstellen)

Beitrag von ThorstenS » 22.07.2011 23:43:02

Ich hab das unter etch und samba 3.0.24 und cups1.2.7 für 32bit XP mal so eingerichtet:
smb.conf:

Code: Alles auswählen

   load printers = yes
   printing = cups
   printcap name = cups
   ;use client driver = yes
   browseable = yes

[printers]
   comment = Alle Drucker
   path = /var/spool/samba
   browseable = no
   public = yes
   guest ok = yes
   writable = no
   printable = yes
   ;printer admin = admin

[print$]
   comment = Printer Drivers
   path = /etc/samba/drivers
   browseable = yes
   guest ok = no
   read only = yes
   write list = root,admin
Das Script aktiviert dann alle Treiber (wird von incron bei Veränderungen in /etc/cups/ppd ausgeführt)

Code: Alles auswählen

#!/bin/bash
#
# Dieses Script exportiert sämtliche PPD-Drucker von cups an samba
#
# ThorstenS  2008-08-27
#

# aufräumen, falls ein Drucker gelöscht wurde
rm -r /etc/samba/drivers/*

# jetzt jeden Drucker einzeln exportieren:
for i in /etc/cups/ppd/*.ppd; do
        PPDPRINTER=$(/usr/bin/basename ${i%.[^.]*})
        /usr/sbin/cupsaddsmb -U root%PASSWORT -H HOSTNAME $PPDPRINTER
done
# damit der User admin über cups die Drucker exportieren darf:
chown -R admin:admin /etc/samba/drivers/

# ohne geht es anscheinend nicht
/etc/init.d/cupsys restart
/etc/init.d/samba restart
/etc/init.d/cupsys restart
Hier die Treiber - jeder sollte lesen dürfen:

Code: Alles auswählen

0 root@HOSTNAME:/usr/share/cups/drivers
# ls -ltr
total 1972
-r--r--r-- 1 root root 219540 2008-08-28 16:56 cupsui5.dll
-r--r--r-- 1 root root 280268 2008-08-28 16:56 cupsdrv5.dll
-r--r--r-- 1 root root  14234 2008-08-28 16:56 cups5.hlp
-rw-r--r-- 1 root root 464384 2008-12-23 04:30 pscript5.dll
-rw-r--r-- 1 root root 792644 2008-12-23 04:30 pscript.ntf
-rw-r--r-- 1 root root  25113 2008-12-23 04:30 pscript.hlp
-rw-r--r-- 1 root root 134144 2008-12-23 04:30 ps5ui.dll
-rw-r--r-- 1 root root  13672 2008-12-23 04:30 cupsui6.dll
-rw-r--r-- 1 root root  12568 2008-12-23 04:30 cupsps6.dll
-rw-r--r-- 1 root root   9529 2008-12-23 04:30 cups6.ppd
-rw-r--r-- 1 root root     72 2008-12-23 04:30 cups6.ini
-rw-r--r-- 1 root root    803 2008-12-23 04:30 cups6.inf
Evtl. hilfts dir ja.

Dieses Konzept habe ich aber nicht weiterverfolgt, da die Kollegen mit der Druckgeschwindigkeit absolut nicht zufrieden waren. Teilweise dauert es 1.5 Minuten, bis der Drucker loslegt - kein Vergleich zu dem eigentlichen Druckertreiber und dem direkten Ansprechen über die IP-Adresse. (Ricoh Fotokopierer oder Kyocera FS-1010, FS-1300D). Ausserdem kann man nicht sämtliche Funktionen des Geräts ansprechen…

og2
Beiträge: 34
Registriert: 18.02.2007 14:35:08

Re: CUPS Druckertreiber (über SAMBA bereitstellen)

Beitrag von og2 » 23.07.2011 16:34:34

Hallo Thorsten,

ja, genauso habe ich es auch eingerichtet. Habe dort 2 Queues erstellt, "PDFDRUCKER" und "PDFMAILER". Witzigerweise funktioniert es mit dem PDFDRUCKER einwandfrei, nicht aber mit dem anderen. Auf 64 Bit Systemen gehen beide nicht.

Antworten