CUPS wird normalerweise bei der Suse-Installation schon mit installiert.
So wird ein Drucker auf einem Server freigegeben:
Zuerst als root per yast einen freizugebenden Drucker lokal installieren und testen:
yast2 printer
dann als root cups stoppen und die Datei /etc/cups/cupsd.conf
editieren.
rccups stop cp /etc/cups/cupsd.conf /tmp/cupsd.conf.old mcedit /etc/cups/cupsd.conf
... # Only listen for connections from the local machine. Listen *:631 Listen localhost:631 Listen /var/run/cups/cups.sock # Show shared printers on the local network. Browsing On BrowseOrder allow,deny BrowseAllow all BrowseLocalProtocols CUPS BrowseAddress @LOCAL # Default authentication type, when authentication is required... DefaultAuthType Basic # Restrict access to the server... <Location /> Allow @LOCAL Order allow,deny Allow from all # 127.0.0.2 </Location> DefaultLanguage de DefaultPaperSize A4 ...
dann als root cups wieder starten:
rccups start
CUPS wird normalerweise bei der Installation schon mit installiert.
Wenn der Druckserver im selben VLAN steht und UDP-Pakete vom Server empfangen kann so ist der Client sofort konfiguriert und kann sofort losdrucken.
Wenn der Druckserver in einem anderen VLAN steht, muss auf dem Client noch die Cupskonfiguration wie folgt angepasst werden:
als root cups stoppen und die Datei /etc/cups/cupsd.conf
editieren.
rccups stop cp /etc/cups/cupsd.conf /tmp/cupsd.conf.old mcedit /etc/cups/cupsd.conf
... # Show shared printers on the local network. Browsing On BrowseOrder allow,deny BrowseAllow all BrowseLocalProtocols CUPS BrowsePoll meinTollerCupssrv ...
dann als root cups wieder starten. Der entfernte Drucker steht jetzt dem normalen Benutzer zur Verfügung.
Druckernamen nachträglich auf dem Druckserver ändern:
rccups stop mcedit /etc/cups/printers.conf ... <Printer meinfreierDruckername> Info <lieber nicht ändern!> Location beim Chef im Büro ...
dann als root den Drucker wieder starten. Die Clients sehen den neuen Namen sofort.
rccups start
lppasswd -g lpadmin -a root
oder (Versionsabhängig):
lppasswd -g sys -a root
Danach kann man über die Webseite http://localhost:631 auf die Cups-Druckerverwaltung zugreifen.
eine Alternative ist „yast2 printer“
um einen Drucker grafisch zu erstellen.
(die PPD-Datei muss vorher in das Verzeichnis /usr/share/cups/model/ gelegt werden.)
lpadmin -p MeinDrucker -E -v socket://Printer3:9100 -D "Platz 3" -m Laserjet.ppd
oder
lpadmin -p securePrint -E -v lpd://meinxeroxsrv/securePrint -D "FollowMe-Printer to meinxeroxsrv / Printer needs a localuser with the same name as the domainuser" \ -m OpenPrintingPPDs/postscript/Xerox-WorkCentre_7345.Postscript.ppd.gz -L "meinxeroxsrv" lpoptions -p securePrint -o PageSize=A4
rpcclient winsrv01 -U user_a%passwort -c 'enumprinters'| grep name:
rpcclient lxsrv1 -U user_a%passwort -c 'enumdrivers'
rpcclient lxsrv1 -U user_a%passwort -c 'enumdrivers 3'
rpcclient lxsrv1 -U user_a%passwort -c 'setprintername alterName neuerName'
(alle Zeilen mit „name: greppen)+ und nach „srv01“suchen:
rpcclient winsrv01 -U user_a%passwort -c 'enumprinters'| grep name: | awk 'BEGIN{FS="SRV01\\"}{print $2}' | awk 'BEGIN{FS="]"}{print $1}'
rundll32 printui.dll,PrintUIEntry /s /t1 /n\\lxsrv1
cupsctl LogLevel=debug2