Support

Bitte kontaktieren Sie uns per SmartDesk, E-Mail servicedesk@id.ethz.ch oder telefonisch unter +41 44 632 77 77

Service Information and Update

Blog eintrag


Drucker hinzufügen unter Linux


Anleitungen


Das "ETH Printers"-Tool ist eine graphische Anwendung für die Auswahl und Installation der ETH Drucker. Es wurde für Ubuntu 20.04 - 24.04 und Fedora 40 getestet. Es wird standardmässig das PPD Multibrand verwendet, welches die wichtigsten Funktionen unserer Geräte ansteuern kann.

1. Software downloaden

https://software.opensuse.org/download/package?project=home:ethz&package=ethz-cups-config-app

→ Grab binary packages directly

2. Datei speichern

→ z.Bsp. unter Downloads

3. Zum Ordner wechseln

cd Downloads

4. Anwendung installieren

sudo apt install ./ethz-cups-config-app_1.0.2-1_amd64.deb

5. Fehlendes Paket installieren

sudo apt install smbclient --no-install-recommends

6. Anwendung starten

ethz-cups-config-app

7. Anmeldung mit ETH Userkonto

Domain = d

9. Drucker auswählen und installieren

10. Im Druckdialog mit ETH Userkonto anmelden

d\<ETH username>

→ Optional: 'Remenber password' auswählen, um das Passwort für den nächsten Ausdruck zu speichern.

11. Gespeichertes Passwort verwalten

Mit dem Befehl 'seahorse' können Passwörter angeschaut, geändert oder gelöscht werden.

1 Vorwort

Zum Drucken via Kerberos stellen die Informatikdienste ein eigenes Cups backend zur Verfügung.
Die Anleitung bezieht sich in erster Linie auf gemanagte multiuser Rechner:

Der Administrator verwaltet mehrere Rechner.
Die Anleitung ist so aufgebaut, das die einzelnen Schritte in ein Script eingebaut werden können.

2 Voraussetzungen

Der Administrator verfügt über root Rechte.
Die Benutzer-Anmeldung am Rechner sollte bereits mit Active-Directory erfolgen.
Die Anbindung an das Active-Directory ist in folgender Anleitung beschrieben:

https://cd-portal.sp.ethz.ch/linux/Wiki/Authentisierung%20mit%20sssd.aspx

3 Version des Betriebssystems

Die Version kann mit folgendem Kommando überprüft werden:

$ cat /etc/os-release

4 Cups backend smbethz installieren

Das Cups backend smbethz downloaden und in das richtige Verzeichnis kopieren:

$ su -c 'wget https://printing.sp.ethz.ch/ethps/SiteAssets/SitePages/RHEL-7-Fedora-22-kerberos/smbethz -O /usr/lib/cups/backend/smbethz'

Die Zugriffsrechte und den Besitzer setzen:

$ su -c 'chmod 700 /usr/lib/cups/backend/smbethz'
$ su -c 'chown root:root /usr/lib/cups/backend/smbethz'

5 Neuen Drucker mit Backend einrichten
5.1 Geräte URI

Für unseren Setup wird folgendes Format verwendet:

smbethz://<printserver>/<printqueue>

Zum Beispiel:

smbethz://pia01.d.ethz.ch/p-stbh-02

Eine Liste der verfügbare Drucker gibt es unter:

https://pia01.d.ethz.ch (Zentrum)
https://pia02.d.ethz.ch (Hönggerberg)

5.2 PPD installieren

Unter openprinting.org’ können PPD gesucht und als Paket installiert werden.
In dieser Anleitung installieren wir das PPD für einen ’Ricoh MPC 3003’.

$ su -c 'rpm -ip http://www.openprinting.org/download/printdriver/components/lsb3.2/main/RPMS/noarch/openprinting-ppds-postscript-ricoh-20140829-1lsb3.2.noarch.rpm'

Das PPD wird dann abgelegt unter:

/opt/OpenPrinting-Ricoh/ppds/Ricoh/Ricoh-MP_C3003-Postscript-Ricoh-en.ppd.gz

5.3 Drucker Installation starten

Die Installation erfolgt nach folgendem Schema:

lpadmin -p <NAME> -v smbethz://<SERVER>/<PRINTER> -E -P <PATH-TO-PPD> -D <NAME> -L <LOCATION> -o printer-is-shared=false -o auth-info-required=negotiate

In unserem Beispiel wäre das:

$ su -c 'lpadmin -p Ricoh3003 -v smbethz://pia01.d.ethz.ch/p-stbh-02 -E -P /opt/OpenPrinting-Ricoh/ppds/Ricoh/Ricoh-MP_C3003-Postscript-Ricoh-en.ppd.gz -D Ricoh3003 -L STBH -o printer-is-shared=false -o auth-info-required=negotiate'

6 Testen

Einen Testjob als authentisierter Benutzer schicken (also nicht als root):

$ echo -e '%!PS-Adobe-1.0\n /Helvetica findfont 200 scalefont setfont 100 100 moveto (Test) show showpage' | lpr -P Ricoh3003

7 SELinux Policy

Bei aktiviertem SELinux muss eine entsprechende Policy-Erweiterung erstellt werden.
Die Policy-Erweiterung ist in folgender Anleitung beschrieben:

https://cd-portal.sp.ethz.ch/linux/Wiki/SELinux%20Basics.aspx

Zum Testen kann die Policy folgendermassen abgestellt werden:

$ su -c 'setenforce 0'

8 Unnötige Authentisierungsmeldung unter Fedora 21

Falls eine unnötige Meldung auftaucht, kann diese mit einem Patch entfernt werden.
Mit folgendem Kommando wird die Datei ’/etc/yum.repos.d/print-auth.repo’ erstellt:

$ echo -e '[print-auth]
name=Print Auth $releasever - $basearch
baseurl=http://files.intevation.de/projects/print-auth/kerberos/$releasever
enabled=1
gpgcheck=1
gpgkey=http://files.intevation.de/projects/print-auth/kerberos/$releasever/\c' >/etc/yum.repos.d/print-auth.repo; echo -e 'repodata/repomd.xml.key' >>/etc/yum.repos.d/print-auth.repo

Und dann updaten:

$ su -c 'yum update'

9 Fehlermeldung in RHEL

Bei der Fehlermeldung '/usr/lib/cups/filter/foomatic-rip not available' im Log '/var/log/cups/error_log' muss folgendes Paket nachinstalliert werden:

$ su -c 'yum install foomatic'

Dateien


Cups backend:
smbethz

Print Service PPD (Für Nashuatec und HP Drucker. Kompatible Geräte sind im PPD aufgelistet.):

multibrand-3.1.2.ppd
multibrand-2.9.2.ppd (Version mit Workaround wegen monochrom Bug für Cups < 2.4.3. Siehe https://github.com/OpenPrinting/cups/issues/421)

HP PPDs (Original PPD vom Hersteller. HPLIP wird benötigt):

HP_Color_LaserJet_Flow_X58045.ppd
HP_Color_LaserJet_Flow_E87650.ppd
HP_Color_LaserJet_Flow_MFP_E786.ppd
HP_Color_LaserJet_Flow_E78330.ppd
HP_Color_LaserJet_Flow_E77830.ppd
HP_Color_LaserJet_Flow_E67660.ppd
HP_Color_LaserJet_Flow_E57540(M577).ppd
HP_Color_LaserJet_Flow_E55040(M553).ppd

  • No labels