CUPS: Remote Printing geht nicht

Hallo

Habe vor zwei Wochen auf einem Desktop Rechner und auf meinem Notebook OpenSuSE 13.1 installiert. Habe Standardinstallationen gemacht mit einigen zusätzlichen Paketen, kein Gefummel von Hand. (Arbeite zwar seit 15 Jahren mit Linux, bin aber kein Admin-Guru geworden.)

Alles läuft gut, nur kann ich vom Notebook aus nicht via CUPS auf dem Desktop Rechner drucken, was früher immer problemlos ging. Habe heute ein Online Update gemacht, welches auch CUPS betraf. Seither sehe ich auf dem Notebook die beiden USB-Drucker, die am Desktop Rechner angeschlossen sind. Vorher konnte ich CUPS auf dem Desktop Rechner überhaupt nicht erreichen. Von einem dritten Rechner aus (OpenSuSE 11.3) kann ich allerdings drucken.

Hier etwas Diagnose:

Notebook:

systemctl status cups.service

cups.service - CUPS Printing Service
Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled)
Active: active (running) since So 2014-03-16 18:18:08 CET; 35min ago
Main PID: 8962 (cupsd)
CGroup: /system.slice/cups.service
├─8962 /usr/sbin/cupsd -f
└─8963 cups-polld 192.168.13.104 631 30 631

Mär 16 18:18:08 petrus.site cupsd[8962]: No JobPrivateAccess defined in policy allowallforanybody - using defaults.
Mär 16 18:18:08 petrus.site cupsd[8962]: No JobPrivateValues defined in policy allowallforanybody - using defaults.
Mär 16 18:18:08 petrus.site cupsd[8962]: No SubscriptionPrivateAccess defined in policy allowallforanybody - using defaults.
Mär 16 18:18:08 petrus.site cupsd[8962]: No SubscriptionPrivateValues defined in policy allowallforanybody - using defaults.
Mär 16 18:18:15 petrus.site systemd[1]: Started CUPS Printing Service.
Mär 16 18:18:38 petrus.site systemd[1]: Started CUPS Printing Service.
Mär 16 18:21:44 petrus.site systemd[1]: Started CUPS Printing Service.
Mär 16 18:21:44 petrus.site systemd[1]: Started CUPS Printing Service.
Mär 16 18:22:15 petrus.site systemd[1]: Started CUPS Printing Service.
Mär 16 18:46:27 petrus.site systemd[1]: Started CUPS Printing Service.

Auf Desktop Rechner:

systemctl status cups.service

cups.service - CUPS Printing Service
Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled)
Active: active (running) since So 2014-03-16 18:01:39 CET; 57min ago
Main PID: 16804 (cupsd)
CGroup: /system.slice/cups.service
└─16804 /usr/sbin/cupsd -f

Mär 16 18:01:39 kyros3 systemd[1]: Starting CUPS Printing Service…
Mär 16 18:01:39 kyros3 systemd[1]: Started CUPS Printing Service.
Mär 16 18:01:39 kyros3 cupsd[16804]: No limit for Validate-Job defined in policy allowallforanybody and no suitable template found.
Mär 16 18:01:39 kyros3 cupsd[16804]: No limit for Cancel-Jobs defined in policy allowallforanybody and no suitable template found.
Mär 16 18:01:39 kyros3 cupsd[16804]: No limit for Cancel-My-Jobs defined in policy allowallforanybody and no suitable template found.
Mär 16 18:01:39 kyros3 cupsd[16804]: No limit for Close-Job defined in policy allowallforanybody and no suitable template found.
Mär 16 18:01:39 kyros3 cupsd[16804]: No limit for CUPS-Get-Document defined in policy allowallforanybody and no suitable template found.

Habe aufgrund eines anderen Threads herumprobiert mit “systemctl disable cups.socket”. Hat bei mir aber keinen Unterschied gemacht.

Jeder Tipp ist willkommen!

Viele Grüsse, DD

Hallo,

poste bitte die Ausgabe von:

netstat -tulpen |grep 631

Hi!
Verstehe ich dich richtig?
Du siehst die Drucker zwar, aber drucken funktioniert nicht?

Kannst du vom Rechner, an dem der/die Drucker hängen, drucken? Vermutlich schon, sonst würds ja auch vom 11.3 Rechner aus nicht funktionieren.

Kannst du mal vom Notebook, auf dem es nicht funktioniert, “http://localhost:631” aufrufen?
Sind die Drucker dort online?
Steht dort irgendeine Fehlermeldung?

Evtl. kannst du probieren am Notebook, wo’s nicht funktioniert, mal die cups Pakete vom Printing repo installieren:
http://download.opensuse.org/repositories/Printing/openSUSE_13.1/
Geht’s dann vielleicht?

Ich erhalte das:

netstat -tulpen | grep 631

tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 0 20921 2197/cupsd
tcp 0 0 ::1:631 :::* LISTEN 0 20920 2197/cupsd
udp 0 0 0.0.0.0:631 0.0.0.0:* 0 20924 2197/cupsd

Sagt uns das etwas?

Viele Grüsse, DD

Ja, so ist es. Ich sehe die Drucker und kann sie im Druckmenü (z. B. wenn ich ein PDF aus Okular drucken will) wählen. Das dauert dann zwar sehr lange, bis der Drucker ausgewählt ist. In dieser Zeit blockiert (z. B.) Okular für vielleicht 20 Sekunden.

In /var/log/cups/error_log finde ich massenweise Einträge wie diesen:
E [13/Mar/2014:17:04:24 +0100] [cups-polld 192.168.13.104:631] Unable to connect to 192.168.13.104 on port 631.
E [13/Mar/2014:17:04:57 +0100] [cups-polld 192.168.13.104:631] Unable to connect to 192.168.13.104 on port 631.

Wenn ich dann den Druckjob aufgebe, so passiert nichts weiter. Auf dem Drucker kommt nichts und lpq meldet:

lpq

hp-LaserJet-1320-series is ready
Rank Owner Job File(s) Total Size
active juerg 70 UN140315_Kurzbibel.pdf 268288 bytes

Und so bleibt’s dann, scheinbar für alle Zeiten, bis ich von Hand den Druckjob wieder mit lprm entferne.

Ja, auf dem Rechner, an dem die Drucker hängen kann ich problemlos drucken. Ich sehe auf dem Notebook auch die lokale CUPS-Webseise (localhost:631), sowie jene vom Druckserver (192.168.13.104:631). Beide gehen.

Das Installieren der Pakete vom Printing Repo kann ich mal probieren. Ich hoffe nur, dass mir das nicht das ganze System zerschiessen wird …

Viele Dank und Grüsse, DD

Das Printing Repo konnte ich in Yast hinzu fügen. Wie aber kann ich erzwingen, dass ein Update mit RPMs aus dem Repo gemacht wird? Ich habe versucht , z. B. CUPS zu löschen und dann neu zu installieren. Es kommt aber immer wieder die selbe Version, die ursprünglich schon installiert war. Wenn ich nach CUPS suche, so finde ich ebenfalls nur die alten Versionen. Jeder Tipp ist willkommen …

Viele Grüsse, DD

In YaST:
Die Pakete markieren, dann unter der Paketsliste auf “Versionen” klicken, du solltest dann in dem Tab alle verfügbaren Versionen sehen und kannst auswählen welche installiert werden soll.
Oder, auf “Anzwigen” klicken und “Installationsquellen” auswählen, das “Printing” repo in der Liste links markieren und auf “Wechsel von Systempaketen zu den Versionen in diesem Repository” über der Paketliste auf der rechten Seite klicken. Dazu muss cups natürlich schon installiert sein, und es werden natürlich auch evtl. andere Pakete zur Version im Printing repo gewechselt werden.

Bei zypper kannst du die “–from” Option angeben.

zypper dup --from Printing

würde alle installierten Pakete zu den Versionen im “Printing” repo wechseln.

zypper in cups --from Printing

würde cups aus dem Printing repo installieren (falls noch nicht installiert).

zypper in -f cups --from Printing

würde die Installation von cups aus dem Printing repo erzwingen, das würde auch gehen wenn cups bereits installiert ist.
(in meinen Kommandos gehe ich davon aus, dass das Repo auf deinem System den Namen “Printing” hat. Du musst das natürlich evtl. anpassen)

Durch das “Vendor Stickiness” Konzept von YaST/zypper (d.h. Pakete werden nicht automatisch zu Versionen von anderen Repos gewechselt), bleibt dann auch bei Updates die Version vom Printing Repo installiert.

Ja. Das sagt, das cupsd nur auf localhost lauscht, d.h. Anfragen aus dem Netzwerk ignoriert.
Die Pakete aus dem Printing repo sollten das beheben.

Allerdings finde ich etwas seltsam, dass du dann vom dritten Rechner aus trotzdem drucken kannst.

Von welchem Rechner ist diese Ausgabe? Von dem an dem die Drucker hängen, oder dem von dem aus du nicht drucken kannst?

Herzlichen Dank für Eure Antworten. Das war alles sehr hilfreich. Der Output war übrigens vom Notebook. Ich werde das Update am Wochenende probieren und mich dann hoffentlich mit erfreulichen News wieder melden.

Viele Grüsse, DD

Super! Es hat geklappt, Remote Printing geht jetzt vom Notebook und von den anderen Rechnern aus ohne Probleme.
Ich bin Dir sehr dankbar für die ausführliche Unterstützung

Herzliche Grüsse, DD

Freut mich! :slight_smile: