Hallo, ich habe ein merkwürdiges Problem mit CUPS und hoffe, dass mir jemand bei der Lösung helfen kann. Merkwürdig bedeutet, dass ich zwei Rechner habe, beide mit Debian 12 und den dazu gehörenden Versionen von cups und cups-browsed, wobei ich auf einem Rechner als beliebiger Nutzer drucken kann, auf dem anderen nur als root. Gedruckt werden soll in beiden Fällen auf einem Remote- Drucker, dessen Informationen per IPP-Broadcast von cups-browsed empfangen werden. Ich habe den Source-Code von cups ein bisschen bearbeitet, um etwas mehr Detailinformationen über das Problem zu erhalten (der eigentliche Code gibt nur eine wenig sagende Meldung "Die Druckdatei kann nicht geöffnet werden: Permission denied" aus) und habe dann folgendes herausgefunden: Die "Druckdatei" ist eine temporäre Datei in /tmp, hat die UID 0 und die GID 7 (gehört zum Systemnutzer lp) und die Zugriffsrechte 600, kann also nur von root geschrieben oder gelesen werden. Der Prozess, der versucht, auf die Datei zuzugreifen, hat den etwas merkwürdigen Namen ipp://$RemoteHost:$RemotePort/printers/$Printer . Der entscheidenende Unterschied zwischen den beiden Rechnern ist: Auf dem Rechner, wo das Drucken wie erwartet funktioniert, wird der Prozess mit dem seltsamen Namen unter der effektiven UID 0 ausgeführt, auf dem anderen Rechner aber unter der effektiven UID desjenigen Nutzers, der was drucken will. Im letzteren Fall kann die nur für root zugreifbare "Druckdatei" selbstverständlich nicht geöffnet werden. Hat jemand eine Idee, warum der seltsam benannte Prozess einmal mit und einmal ohne Root-Rechte läuft? Gruß Christoph
Attachment:
signature.asc
Description: This is a digitally signed message part