Linux - Netzwerk und Serveradminstration Drucker Server: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= Server =
= Server =
;Installation
;Installation
*sudo apt install cups printer-driver-cups-pdf libreoffice
*sudo apt install cups printer-driver-cups-pdf libreoffice
;Freigabe aktivieren
;Freigabe aktivieren
*sudo cupsctl --share-printers --remote-any
*sudo cupsctl --share-printers --remote-any
*sudo lpadmin -p PDF -o printer-is-shared=true
*sudo lpadmin -p PDF -o printer-is-shared=true
;Ausgabeverzeichnis festlegen
;Ausgabeverzeichnis festlegen
Die PDFs sollen direkt nach <code>/var/www/html</code> geschrieben werden (später Basis für einen Apache-Webserver).
Die PDFs sollen direkt nach <code>/var/www/html</code> geschrieben werden (später Basis für einen Apache-Webserver).
Zeile 15: Zeile 12:
AnonDirName /var/www/html
AnonDirName /var/www/html
</pre>
</pre>
;Berechtigungen setzen
;Berechtigungen setzen
*sudo mkdir -p /var/www/html
*sudo mkdir -p /var/www/html
*sudo chown root:root /var/www/html
*sudo chown root:root /var/www/html
*sudo chmod 1777 /var/www/html
*sudo chmod 1777 /var/www/html
 
;AppArmor freigeben
AppArmor blockiert standardmäßig Schreibzugriff von cupsd außerhalb von <code>/var/spool/cups-pdf</code>. Folgende Zeile in <code>/etc/apparmor.d/usr.sbin.cupsd</code> innerhalb des <code>profile /usr/sbin/cupsd {...}</code>-Blocks ergänzen:
*sudo vi /etc/apparmor.d/usr.sbin.cupsd
<pre>
/var/www/html/** rw,
</pre>
*sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.cupsd
;CUPS neu starten
;CUPS neu starten
*sudo systemctl restart cups
*sudo systemctl restart cups
;Test
;Test
*lpstat -p PDF
*lpstat -p PDF
Zeile 29: Zeile 30:
*lp -d PDF test.txt
*lp -d PDF test.txt
*ls -la /var/www/html
*ls -la /var/www/html
= Client =
== Linux (grafisch) ==
;Installation
*sudo mkdir -p /etc/cups
*sudo apt install cups system-config-printer
*sudo systemctl enable --now cups
;Mit dem Druck-Server verbinden
*sudo vi /etc/cups/client.conf
<pre>
ServerName <server-ip>
</pre>
;Drucken
# GNOME Settings → Printers öffnen
# Freigegebenen Drucker '''PDF''' auswählen
# Datei drucken (z. B. aus LibreOffice)
Die fertige PDF landet auf dem '''Server''' unter <code>/var/www/html</code>.
== Windows (grafisch) ==
;Drucker hinzufügen
# ''Einstellungen'' → ''Bluetooth & Geräte'' → ''Drucker & Scanner''
# '''Gerät hinzufügen''' → '''Der gewünschte Drucker ist nicht aufgeführt'''
# '''Freigegebenen Drucker über den Namen oder die TCP/IP-Adresse auswählen'''
# URL eingeben:
<pre>
http://<server-ip>:631/printers/PDF
</pre>
# Als Treiber '''Generic → MS Publisher Color Printer''' oder '''Generic PostScript Printer''' auswählen (CUPS wandelt serverseitig sowieso über <code>cups-pdf</code> in PDF um)
;Drucken
# Beliebige Datei öffnen (z. B. Word)
# ''Drucken'' → Drucker '''PDF''' auswählen
# Drucken
Die fertige PDF landet auf dem '''Server''' unter <code>/var/www/html</code>.

Version vom 23. Juli 2026, 16:03 Uhr

Server

Installation
  • sudo apt install cups printer-driver-cups-pdf libreoffice
Freigabe aktivieren
  • sudo cupsctl --share-printers --remote-any
  • sudo lpadmin -p PDF -o printer-is-shared=true
Ausgabeverzeichnis festlegen

Die PDFs sollen direkt nach /var/www/html geschrieben werden (später Basis für einen Apache-Webserver).

  • sudo vi /etc/cups/cups-pdf.conf
Out /var/www/html
AnonDirName /var/www/html
Berechtigungen setzen
  • sudo mkdir -p /var/www/html
  • sudo chown root:root /var/www/html
  • sudo chmod 1777 /var/www/html
AppArmor freigeben

AppArmor blockiert standardmäßig Schreibzugriff von cupsd außerhalb von /var/spool/cups-pdf. Folgende Zeile in /etc/apparmor.d/usr.sbin.cupsd innerhalb des profile /usr/sbin/cupsd {...}-Blocks ergänzen:

  • sudo vi /etc/apparmor.d/usr.sbin.cupsd
/var/www/html/** rw,
  • sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.cupsd
CUPS neu starten
  • sudo systemctl restart cups
Test
  • lpstat -p PDF
  • echo "Testseite" > test.txt
  • lp -d PDF test.txt
  • ls -la /var/www/html

Client

Linux (grafisch)

Installation
  • sudo mkdir -p /etc/cups
  • sudo apt install cups system-config-printer
  • sudo systemctl enable --now cups
Mit dem Druck-Server verbinden
  • sudo vi /etc/cups/client.conf
ServerName <server-ip>
Drucken
  1. GNOME Settings → Printers öffnen
  2. Freigegebenen Drucker PDF auswählen
  3. Datei drucken (z. B. aus LibreOffice)

Die fertige PDF landet auf dem Server unter /var/www/html.

Windows (grafisch)

Drucker hinzufügen
  1. Einstellungen → Bluetooth & Geräte → Drucker & Scanner
  2. Gerät hinzufügen → Der gewünschte Drucker ist nicht aufgeführt
  3. Freigegebenen Drucker über den Namen oder die TCP/IP-Adresse auswählen
  4. URL eingeben:
http://<server-ip>:631/printers/PDF
  1. Als Treiber Generic → MS Publisher Color Printer oder Generic PostScript Printer auswählen (CUPS wandelt serverseitig sowieso über cups-pdf in PDF um)
Drucken
  1. Beliebige Datei öffnen (z. B. Word)
  2. Drucken → Drucker PDF auswählen
  3. Drucken

Die fertige PDF landet auf dem Server unter /var/www/html.