%
% cups.tex
% Last Update: $Id$
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Kapitel GPM %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\chapter{CUPS - Common UNIX Printing System}
\index{CUPS}
\index{Printing}


\section{Allgemein}

    \glqq{}CUPS\grqq{} ist die Software, mit der Sie aus Anwendungen wie dem
    Webbrowser, den Sie zum Lesen dieser Seite verwenden, drucken k"onnen. Es
    wandelt die von Ihrer Anwendung erzeugten Seitenbeschreibungen (hier einen
    Absatz einf"ugen, dort eine Linie ziehen usw.) in etwas um, das Ihr Drucker
    verstehen kann, und sendet die Informationen dann zum Drucken an den Drucker.

    Da jeder Druckerhersteller die Dinge anders handhabt, kann das Drucken sehr
    kompliziert sein. CUPS tut sein Bestes, um dies vor Ihnen und Ihrer
    Anwendung zu verbergen, so da"s Sie sich auf das Drucken konzentrieren
    k"onnen und weniger darauf, wie Sie drucken. Im Allgemeinen m"ussen Sie nur
    dann etwas "uber Ihren Drucker wissen, wenn Sie ihn zum ersten Mal benutzen,
    und selbst dann findet CUPS die Dinge oft von selbst heraus.

    Wenn Sie zum ersten Mal auf einem Drucker drucken, erstellt CUPS eine
    Warteschlange, in der der aktuelle Status des Druckers (alles in Ordnung,
    kein Papier mehr vorhanden usw.) und die von Ihnen gedruckten Seiten
    gespeichert werden. In den meisten Fällen verweist die Warteschlange auf
    einen Drucker, der "uber einen USB-Anschluss direkt an Ihren Computer
    angeschlossen ist, sie kann jedoch auch auf einen Drucker in Ihrem Netzwerk,
    einen Drucker im Internet oder mehrere Drucker verweisen, je nach
    Konfiguration. Unabh"angig davon, wohin die Warteschlange verweist, wird
    sie für Sie und Ihre Anwendungen wie jeder andere Drucker aussehen.

    Jedes Mal, wenn Sie etwas drucken, erstellt CUPS einen Auftrag, der die
    Warteschlange, an die Sie den Druck senden, den Namen des zu druckenden
    Dokuments und die Seitenbeschreibungen enth"alt. Die Aufträge sind
    nummeriert (Warteschlange-1, Warteschlange-2 usw.), so da"s Sie den
    Druckvorgang "uberwachen oder abbrechen k"onnen, wenn Sie einen Fehler
    entdecken. Wenn CUPS einen Druckauftrag erh"alt, ermittelt es die besten
    Programme (Filter, Druckertreiber, Portmonitore und Backends), um die Seiten
    in ein druckf"ahiges Format umzuwandeln, und f"uhrt sie dann aus, um den
    Auftrag tats"achlich zu drucken.

    Wenn der Druckauftrag vollst"andig gedruckt ist, entfernt CUPS den Auftrag
    aus der Warteschlange und geht zu allen anderen Auftr"agen "uber, die Sie
    eingereicht haben. Sie k"onnen auch auf verschiedene Weise benachrichtigt
    werden, wenn der Auftrag beendet ist oder wenn w"ahrend des Drucks Fehler
    auftreten. [Quelle CUPS]

\section{Einstellung}

    Die Konfiguration der CUPS Drucker f"ur \eisfair erfolgt "uber das
    WebFrontend im Browser.

    Erreicht werden kann die Seite "uber die in der Variablen
    CUPS\_SERVER\_WEB\_CONNECT\_FROM anzugebene IP Adresse und dem Port 631.

    http://IP-Adresse:631

\section{Zusatz Pakete}

    Es gibt weitere Pakete die f"ur die Funktionen des Druckers mit CUPS
    erforderlich sein k"onnten.

    \begin{tabular}{llll}
    & parallel-printer-support \\
    & cups-filters \\
    & hplip \\
    & gutenprint \\
    & openprintingppds \\
    & manufacturer-ppds \\
    & fonts-dejavu \\
    & psutils \\
    & poppler-tools\\
    & colord \\
    & ghostscript \\
    & epson-inkjet-printer-escpr \\
    & splix \\
    \end{tabular}


\section{Das Men"u im Setup-Programm}

    Das Men"u im Setup-Programm ist wie folgt aufgebaut:

    \mbox{}

    \begin{tabular}{llll}
    & x. &  Service administration \\
    \end{tabular}
\eline
    \begin{tabular}{p{1cm}llll}
    & x. &  CUPS - Common UNIX Printing System \\
    \end{tabular}
\eline
    \begin{tabular}{p{2cm}llll}
    & 1. &  View documentation \\
    & 2. &  Edit configuration \\
    & 3. &  Advanced configuration file handling \\
    & 4. &  Show status \\
    & 5. &  Stop service \\
    & 6. &  Start service \\
    \end{tabular}

    \mbox{}


\section{Die "Anderung der Konfiguration}

    Die Konfiguration wird "uber den Men"upunkt \glqq{}Edit configuration\grqq{}
    ge"andert.

\section{Die Konfigurationsdatei}

    In der Konfigurationsdatei, welche "uber das Men"u zug"anglich ist,
    sind folgende Parameter vorhanden; wer sie von Hand editieren will,
    findet sie unter \\
    \texttt{/etc/config.d/cups}



\section{Die Parameter}

\begin{description}


\config{START\_CUPS}
{START\_CUPS}
{STARTCUPS}
{
    F"ur die Aktivierung des CUPS Servers muss diese Variable
    lediglich auf den Wert 'yes' gestellt werden. Die Einstellung
    'no' schaltet den CUPS Server ab.

    \hinweis{Diese Variable ist erforderlich wenn der Server
             Dienst ben"otigt wird.}

    G"ultige Werte: yes, no

    Standardeinstellung: \texttt{START\_CUPS='no'}
}


\config{START\_CUPS\_CLIENT}
{START\_CUPS\_CLIENT}
{STARTCUPSCLIENT}
{
    F"ur die Aktivierung des CUPS-Client muss diese Variable
    lediglich auf den Wert 'yes' gestellt werden. Die Einstellung
    'no' schaltet den CUPS-Client ab

    \hinweis{Diese Variable ist erforderlich wenn nur der Client
             Dienst ben"otigt wird, der Server Dienst schaltet den
             Client Dienst ab.}

    G"ultige Werte: yes, no

    Standardeinstellung: \texttt{START\_CUPS\_CLIENT='no'}
}


\config{CUPS\_CLIENT\_CONNECT\_TO}
{CUPS\_CLIENT\_CONNECT\_TO}
{CUPSCLIENTCONNECTTO}
{
    Hier wird die IP oder die FQDN Adresse angeben von dem Server auf dem
    der CUPS Dienst l"auft.

    \hinweis{Diese Variable ist erforderlich wenn nur der Client
             Dienst ben"otigt wird.}

    Die Standard-Portnummer ist 631, kann aber durch Hinzuf"ugen eines
    Doppelpunkts, gefolgt von der gew"unschten Portnummer, "uberschrieben
    werden.

    Die Standard-IPP-Version ist 2.0, kann aber durch Hinzuf"ugen von
    einen Schr"agstrich, gefolgt von version=V, wobei V f"ur 1.0 oder 1.1
    oder 2.0 oder 2.1 oder 2.2 steht.

    IPP Version 2.0 funktioniert nicht mit CUPS 1.3 oder "alteren Servern.
    Wenn ein CUPS 1.3 oder ein "alterer Server verwendet wird, muss dessen
    "altere IPP-Version als .../version=1.1 oder .../version=1.0 angegeben
    werden.

    Example:
    \begin{tabular}{lll}
    & sever.example.com \\
    & 192.0.2.10 \\
    & sever.example.com:8631 \\
    & older.server.example.com/version=1.1 \\
    & older.server.example.com:8631/version=1.1 \\
    \end{tabular}

    G"ultige Werte: (IP oder FQDN) mit :Port/version

    Standardeinstellung: \texttt{CUPS\_CLIENT\_CONNECT\_TO='{}'}
}


\config{CUPS\_SERVER\_WEB\_CONNECT\_FROM}
{CUPS\_SERVER\_WEB\_CONNECT\_FROM}
{CUPSSERVERWEBCONNECTFROM}
{
    Hier wird die IP Adresse (192.168.1.6) oder das Netzwerk
    (192.168.1.0/24) angegeben "uber die der Zugriff auf das
    WebFrontend erlaubt ist.

    \hinweis{Diese Variable ist erforderlich wenn der Server
             Dienst ben"otigt wird.}

    G"ultige Werte: IP Adresse oder Netzwerk

    Standardeinstellung: \texttt{CUPS\_SERVER\_WEB\_CONNECT\_FROM='{}'}
}


\config{CUPS\_ACTIVE\_WEB\_GUI\_ALLWAYS}
{CUPS\_ACTIVE\_WEB\_GUI\_ALLWAYS}
{CUPSACTIVEWEBGUIALLWAYS}
{
    Hier wird eingestellt, ob die Web Gui immer erreichbar ist oder
    nur zu Administrativen Zwecken eingeschaltet werden soll.

    G"ultige Werte: yes,no

    Standardeinstellung: \texttt{CUPS\_ACTIVE\_WEB\_GUI\_ALLWAYS='yes'}
}


\config{CUPS\_PRESERVE\_JOB\_FILES}
{CUPS\_PRESERVE\_JOB\_FILES}
{CUPSPRESERVEJOBFILES}
{
    Gibt an, ob Auftragsdateien (Dokumente) nach dem Drucken eines Auftrags
    erhalten bleiben. \\
    Wenn ein numerischer Wert angegeben wird, werden die Auftragsdateien nach
    dem Druck für die angegebene Anzahl von Sekunden aufbewahrt. \\
    Der Standardwert ist '86400' (1 Tag aufbewahren).

    G"ultige Werte: yes, no, Sekunden

    Standardeinstellung: \texttt{CUPS\_PRESERVE\_JOB\_FILES='86400'}
}


\config{CUPS\_PRESERVE\_JOB\_HISTORY}
{CUPS\_PRESERVE\_JOB\_HISTORY}
{CUPSPRESERVEJOBHISTORY}
{
    Gibt an, ob der Auftragsverlauf nach dem Drucken eines Auftrags erhalten
    bleibt. \\
    Wenn ein numerischer Wert angegeben wird, bleibt der Auftragsverlauf nach
    dem Druck für die angegebene Anzahl von Sekunden erhalten. \\
    Bei 'yes' bleibt der Auftragsverlauf erhalten, bis die MaxJobs-Grenze
    (default: 500) erreicht ist.

    G"ultige Werte: yes, no, Sekunden

    Standardeinstellung: \texttt{CUPS\_PRESERVE\_JOB\_HISTORY='yes'}
}


\config{CUPS\_LOGLEVEL}
{CUPS\_LOGLEVEL}
{CUPSLOGLEVEL}
{
   Loglevel: default warn:

   G"ultige Werte: none, emerg, alert, crit, error, warn, notice, info, debug, debug2

   Standardeinstellung: \texttt{CUPS\_LOGLEVEL='warn'}
}
\end{description}


\section{CUPS f"ur Linux und Windows als Klienten}

    Unter Linux ist die Einbindung als Klient denkbar einfach.

    Hier am Beispiel von OPENSUSE "uber YAST:

    \begin{itemize}
    \item Drucker Installation
    \item "Uber Netzwerk drucken
    \item Druckauftr"age direkt "uber einen einzigen CUPS-Server ausf"uhren.
    \end{itemize}

    IP-des-CUPS-Servers

    eintragen und alle Konfigurierten Drucker sind ab sofort verf"ugbar.



    Unter Windows kann es etwas verschieden sein, folgendes sollte aber zum
    Erfolg f"uhren:

    \begin{itemize}
    \item Drucker hinzuf"ugen
    \item Der gew"unschte Drucker ist nicht in der Liste enthalten
    \item Freigegebenen Drucker "uber den Namen ausw"ahlen
    \item nicht Durchsuchen
    \end{itemize}

    http://IP-des-CUPS-Servers:631/printers/DRUCKER\_NAME

    eintragen und die weiteren Schritte im Windows Dialog durchf"uhren
    und so mit allen weiteren gew"unschten Druckern fortfahren.

