Gentoo Logo

Gentoo Samba3/CUPS Howto

Inhalt:

1.  Einleitung zu diesem Howto

Zweck

Dieses Howto wurde geschrieben, um Ihnen dabei zu helfen, aus einem Netzwerk, in dem viele unterschiedliche Clients viele unterschiedliche Sprachen sprechen, ein Netzwerk zu machen, in dem alle Clients eine gemeinsame Sprache sprechen. Oberstes Ziel ist es, unterschiedliche Architekturen und Technologien zu einer produktiven und fröhlich zusammen arbeitenden Umgebung zu verbinden.

Das Befolgen der hier dargestellten Instruktionen sollte Sie einen großen Schritt weiter zu einer friedlichen Koexistenz von Windows und praktisch allen Varianten von *nix bringen.

Dieses Howto war ursprünglich nicht als Howto gedacht, sondern als FAQ. Es war geplant, um die Funktionalität und Leistungsfähigkeit von Gentoo Linux und Portage sowie die Flexibilität der USE-Flags zu untersuchen. Wie bei so vielen anderen Projekten auch, wurde bald deutlich, was im Gentoo Reich noch fehlte: es gab keine Samba Howtos, die auf Gentoo-Benutzer abzielten. Solche Benutzer sind anspruchsvoller als die meisten; sie verlangen Performance, Flexibilität und Anpassungsfähigkeit. Dies beinhaltet aber nicht, das dieses Howto nicht auch für andere Distributionen gedacht ist, sondern eher, dass es für eine besonders maßgeschneiderte Samba-Version vorgesehen ist.

In diesem Howto wird beschrieben, wie Dateien und Drucker von Windows-PCs und *nix-PCs gemeinsam genutzt werden können. Außerdem zeigt es, wie Freigaben gemountet und manipuliert werden.

Es werden einige Themen angesprochen, die eigentlich außerhalb des Rahmens dieses Howtos liegen. Sobald ein solches Thema behandelt wird, weisen wir darauf hin.

Dieses Howto basiert auf einer Redaktion und Zusammenstellung eines exzellenten Howtos aus den Gentoo Foren von Andreas "daff" Naftalos, sowie dem gesammelten Wissen von Joshua Preston. Hier der Link zum entsprechenden Diskussionsfaden:

Bevor Sie dieses Howto benutzen

Es gibt eine Reihe weiterer Dokumente zur Einrichtung von CUPS und/oder Samba, die Sie auch lesen sollten, da diese Dinge enthalten, die im vorliegenden Howto ausgelassen wurden (absichtlich oder aus anderen Gründen). Eins diese Dokumente ist der sehr nützliche und verständlich geschriebene Leitfaden zur Druckereinrichtung, da Konfiguration und spezielle Druckereinrichtung im vorliegenden Dokument nicht besprochen werden.

Kurzübersicht

Nach der Vorstellung der verschiedenen USE-Flags werden die folgenden Themen behandelt:

  • Auf dem Samba Server:
    • Installation und Konfiguration von Samba
    • Installation und Konfiguration von CUPS
    • Drucker zu CUPS hinzufügen
    • PS-Treiber für Windows-Clients hinzufügen
  • Auf den Unix Clients:
    • Installation und Konfiguration von CUPS
    • Standarddrucker konfigurieren
    • Windows- oder Samba-Freigabe mounten
  • Auf den Windows-Clients:
    • Drucker einrichten
    • Auf Samba-Freigaben zugreifen

Anforderungen

Folgende Pakete werden benötigt:

  • net-fs/samba
  • net-print/cups (kompiliert mit dem ppds USE-Flag)
  • net-print/hplip (falls Sie einen HP Drucker benutzen wollen)
  • Einen beliebigen Kernel (2.6)
  • Einen Drucker (PS oder non-PS)
  • Ein funktionierendes Netzwerk (home/office/etc) mit mindestens zwei Rechnern

Das Hauptpaket, das wir hier verwenden, heißt net-fs/samba, jedoch benötigen Sie einen Kernel mit aktivierter CIFS-Unterstützung, um eine Samba- oder Windows-Freigabe eines anderen Computers mounten zu können. CUPS wird ebenfalls installiert werden, falls das nicht schon geschehen ist

2.  Samba kennen lernen

Die USE-Flags

Bevor Sie Pakete emergen, schauen Sie sich die verschiedenen USE-Flags an, die für Samba zur Verfügung stehen.

Befehlsauflistung 2.1: Samba verwendet folgende USE-Variablen:

kerberos acl cups ldap pam readline python winbind

Abhängig von der Netzwerk-Struktur und den spezifischen Anforderungen des Servers bestimmen die unten beschriebenen USE-Flags, welche Bestandteile beim emergen von Samba eingebunden oder ausgeschlossen werden.

USE-Flag Beschreibung
kerberos Bindet die Unterstützung für Kerberos ein. Der Server benötigt dies, wenn er sich einer existierenden Domäne oder Active Directory anschließen soll. Beachten Sie hierzu auch den Hinweis weiter unten.
acl Aktiviert Access Control Lists. Die ACL-Unterstützung in Samba verwendet eine gepatchtes ext2/ext3 oder SGI's XFS um korrekt zu funktionieren, da sie detaillierteren Zugriff auf Dateien und Verzeichnisse ausdehnt; wesentlich weitergehend, als typische *nix GID/UID Schemas.
cups Die aktiviert Unterstützung für das Common Unix Printing System. Es stellt ein Interface bereit, dass die Freigabe von lokalen CUPS-Druckern im Netzwerk erlaubt.
ldap Aktiviert das Leightweight Directory Access Protocol (LDAP). Wenn Samba Active Directory verwenden soll, muss die Option verwendet werden. Diese Option würde auch verwendet, wenn Samba sich an eine/n Domäne/Active Directory Server anmelden muss, bzw. die Anmeldung daran ermöglicht. Das kerberos USE-Flag wird benötigt, damit diese Option funktioniert.
pam Unterstützung für Pluggable Authentication Modules (PAM) einbinden. Dies stellt die Möglichkeit zur Verfügung, User auf dem Samba-Server zu authentifizieren, was erforderlich ist, wenn User sich auf Ihrem Server anmelden müssen. Es wird empfohlen, das kerberos USE-Flag zusammen mit pam zu verwenden.
readline Samba gegen libreadline linken. Dies wird sehr empfohlen und sollte besser nicht deaktiviert werden.
python Python bindings API. Stellt eine API zur Verfügung, die es Python erlaubt sich an Samba anzuschließen.
winbind Winbind ermöglicht einen vereinheitlichten Logon mit einer Samba-Umgebung. Es benutzt eine Unix-Implementierung von Windows RPC-Aufrufen, PAM und den Name-Service-Switch (von der C-Bibliothek unterstützt), um Windows NT Domain Benutzer erscheinen zu lassen und als Unix-Benutzer auf einem Unix-System zu arbeiten.

Eine Reihe von Dingen, die über die USE-Flags und die verschiedenen Samba-Funktionen sicherlich zu erwähnen wären, sind:

3.  Installation der Server Software

Samba installieren

Zunächst einmal: Stellen Sie sicher, dass alle Ihre Hostnamen korrekt aufgelöst werden. Entweder läuft in Ihrem Netzwerk bereits ein funktionierendes Domain Name System oder es existieren die geeigneten Einträge in der Datei /etc/hosts. cupsaddsmb versagt häufig, wenn die Hostnamen nicht auf die richtigen Rechner verweisen.

Hoffentlich können Sie bereits eine Einschätzung darüber abgeben, was Sie tatsächlich brauchen, um Samba in Ihrer speziellen Umgebung zu verwenden. Das Setup, dass für dieses Howto verwendet wurde, ist:

  • cups
  • readline
  • pam

Um die Performance, die Größe und die Dauer des Builds zu verbessern, werden die USE-Flags ausdrücklich eingebunden oder ausgeschlossen.

Als erstes, fügen Sie ppds zu Ihren USE-Flags hinzu, um sicherzugehen, dass CUPS mit Foomatic-Unterstützung kompiliert wird:

Befehlsauflistung 3.1: Hinzufügen von ppds

# echo "net-print/cups ppds" >> /etc/portage/package.use

Emergen Sie jetzt Samba:

Befehlsauflistung 3.2: Emerge Samba

# echo "net-fs/samba readline cups pam" >> /etc/portage/package.use
# emerge net-fs/samba

Hierdurch werden Samba und CUPS emerged.

net-print/hplip emergen

Emergen Sie dies nur, wenn Sie einen HP Drucker verwenden.

Befehlsauflistung 3.3: hplip emergen

# emerge net-print/hplip

4.  Server-Konfiguration

Samba Konfigurieren

Die Haupt-Konfigurationsdatei von Samba ist die Datei /etc/samba/smb.conf. Sie ist in Abschnitte unterteilt, was durch [Abschnittsname] angezeigt wird.

Befehlsauflistung 4.1: Beispiel einer /etc/samba/smb.conf

[global]
# Ersetzen Sie MYWORKGROUPNAME mit dem Namen Ihrer
# Workgroup/Domäne
workgroup=MYWORKGROUPNAME

# Natürlich hat das Folgende keinen echten Zweck, außer dass jeder
# erfährt, dass es nicht Windows ist.
# Zeigt die verwendete Samba-Version an.
server string = Samba Server %v

# Wir werden CUPS verwenden, also tragen wir das hier ein ;-)
printcap name = cups
printing = cups
load printers = yes

# Wir möchten eine Log-Datei haben, die nicht größer als 50K werden
# darf
log file = /var/log/samba/log.%m
max log size= 50

# Ein paar weitere Optionen für unsere Schnittstellen ...
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

# Es ist eine gute Idee, den Samba-Server an unser lokales
# Netzwerk-Gerät zu binden.
# Wenn zum Beispiel eth0 unser lokales Netzwerk-Gerät ist
interfaces = lo eth0
bind interfaces only = yes

# Jetzt werden wir einstellen, wen wir zulassen. Wir sind schließlich
# sehr auf Sicherheit bedacht, weil diese Konfiguration keine Passworte
# verwendet
hosts allow = 127.0.0.1 192.168.1.0/24
hosts deny = 0.0.0.0/0
# Weitere Optionen hierfür sind: USER, DOMAIN, ADS, und SERVER
# Der Standard ist USER.
security = share
# Keine Passworte, also verwenden wir ein Gastkonto!
guest ok = yes

# Nun stellen wir die Drucker-Treiber-Informationen ein!
[print$]
comment = Drucker-Treiber
path = /etc/samba/printer # Enthält die Treiber-Struktur.
guest ok = yes
browseable = yes
read only = yes

# Ändern Sie dies zu "User-Name,User-Root", wenn root nicht der einzige
# Drucker-Admin sein soll
write list = root

# Jetzt stellen wir die Drucker-Freigabe ein. Man sollte browsen und
# drucken können, und sie sollte öffentlich sein. Dies ist eine Art öffentliche,
# temporäre Freigabe, wo jeder machen kann, was er will.
[public]
comment = Public Files
browseable = yes
public = yes
create mode = 0766
guest ok = yes
path = /home/samba/public

Warnung: Wenn Sie das Samba-Gast-Konto verwenden wollen, um irgendetwas bezüglich Drucken von Windows-Clients aus zu machen, sollte guest only = yes im Abschnitt [global] nicht gesetzt werden. Das Gast-Konto scheint von Zeit zu Zeit Probleme beim Starten von cupsaddsmb zu haben, wenn es versucht, sich von einer Windows-Maschine aus zu verbinden. Lesen Sie auch weiter unten, wenn wir uns mit cupsaddsmb und den möglichen Problemen befassen. Verwenden Sie einen dedizierten User, wie printeruser oder printer oder printme oder so ähnlich. Das schadet nicht und wird Sie sicherlich vor einer Menge Problemen bewahren.

Legen Sie jetzt die Verzeichnisse für die Mindest-Samba-Konfiguration an, um die installierten Drucker im Netzwerk freizugeben.

Befehlsauflistung 4.2: Verzeichnisse anlegen

# mkdir /etc/samba/printer
# mkdir /var/spool/samba
# mkdir /home/samba/public

Mindestens ein Samba-User ist nötig, um die Drucker-Treiber zu installieren und anderen Usern eine Verbindung zum Drucker zu erlauben. Die User müssen in der Datei /etc/passwd des Systems existieren.

Befehlsauflistung 4.3: User anlegen

# smbpasswd -a root

(Falls ein anderer User Drucker-Admin sein soll)
# smbpasswd -a Username

Das Samba-Passwort muss nicht identisch mit dem System-Passwort in /etc/passwd sein.

Sie müssen ebenfalls die Datei /etc/nsswitch.conf aktualisieren, so dass Windows-Systeme einfach per NetBIOS gefunden werden können:

Befehlsauflistung 4.4: /etc/nsswitch.conf editieren

# nano -w /etc/nsswitch.conf
(Die Zeile hosts editieren)
hosts: files dns wins

Konfiguration von CUPS

Dies ist etwas komplizierter. Die Haupt-Konfigurationsdatei ist /etc/cups/cupsd.conf. Ihre Struktur ist der von Apaches httpd.conf ähnlich, so dass Ihnen möglicherweise einiges bekannt vorkommt. Im Beispiel werden nur die Abschnitte behandelt, die geändert werden müssen.

Befehlsauflistung 4.5: /etc/cups/cupsd.conf

ServerName PrintServer         # Name des Print-Servers

ServerAdmin root@PrintServer   # derjenige, der Hate-Mail
                               # bekommen soll, falls der/die Drucker
                               # nicht funktionieren - z.B. Sie :)

AccessLog /var/log/cups/access_log # muss nicht unbedingt geändert werden

ErrorLog  /var/log/cups/error_log  # muss ebenfalls nicht geändert werden

LogLevel  debug # nur zum Installieren und Testen; sollte später zu
                # 'info' geändert werden

MaxClients 100 # Dies musste ich vor einiger Zeit auf 1000000000 oder
               # ähnlich setzen, weil es scheinbar einen Bug in der Art, wie
               # CUPS das Web-Interface kontrolliert, gab. CUPS dachte, es wäre
               # ein Denial-of-Service-Angriff im Gange, als ich versuchte,
               # einen Drucker über das Web-Interface zu konfigurieren.
               # Seltsam.

BrowseAddress @IF(eth0) # Tragen Sie hier Ihre interne
                        # Netzwerkkarte ein

<Location />
Order Deny,Allow
Deny From All
Allow From 192.168.1.*  # Die Adresse Ihres internen Netzwerkes.
                        # z.B. erlaubt 192.168.1.* Verbindungen von jedem Host
                        # im 192.168.1.0 Netzwerk. Ändern Sie diese Einstellung
                        # nach Ihren Wünschen.

</Location>

<Location /admin>
AuthType Basic
AuthClass System
Allow From 192.168.1.*  # Wie oben. erlaubt allen Hosts im
                        # 192.168.1.0 Netzwerk sich zu verbinden und nach der
                        # Anmeldung Admin-Aufgaben auszuführen.

Order Deny,Allow
Deny From All
</Location>

Editieren Sie die Datei /etc/cups/mime.convs, um einige Zeilen zu entkommentieren. Die Änderungen an mime.convs und mime.types sind notwendig, um Microsoft Office Dokumente mit CUPS drucken zu können.

Befehlsauflistung 4.6: /etc/cups/mime.convs

(Die folgende Zeile befindet sich fast am Ende der Datei. Entfernen
Sie das Kommentarzeichen.)
application/octet-stream      application/vnd.cups-raw    0

Editieren Sie /etc/cups/mime.types um ein paar Kommentarzeichen zu entfernen

Befehlsauflistung 4.7: /etc/cups/mime.types

(Die folgende Zeile befindet sich fast am Ende der Datei. Entfernen
Sie das Kommentarzeichen.)
application/octet-stream

CUPS muss beim Booten gestartet werden, weiterhin werden wir den Dienst auch sofort manuell starten.

Befehlsauflistung 4.8: Den CUPS-Dienst dem default Runlevel hinzufügen

(Um CUPS beim Booten zu starten)
# rc-update add cupsd default
(Um CUPS zu starten, falls es noch nicht läuft)
# /etc/init.d/cupsd start
(Falls CUPS bereits läuft, muss es neu gestartet werden!)
# /etc/init.d/cupsd restart

Einen Drucker für und mit CUPS installieren

Besuchen Sie zunächst LinuxPrinting.org, um die richtige PPD-Datei für Ihren Drucker und CUPS zu finden und herunterzuladen. Klicken Sie dazu dort auf den Link "Printer Listings" auf der linken Seite. Wählen Sie den entsprechenden Hersteller Ihres Druckers aus dem Pull-down-Menü, zum Beispiel HP und DeskJet 930C. Klicken Sie auf "Show". Nachdem Sie auf der folgenden Seite die verschiedenen Anmerkungen und Informationen gelesen haben, klicken Sie auf den Link "recommended driver".

Nun haben Sie eine PPD-Datei für Ihren Drucker, so dass dieser mit CUPS arbeiten kann. Speichern Sie diese Datei im Verzeichnis /usr/share/cups/model. Die PPD-Datei für den HP DeskJet 930C hieß HP-DeskJet_930c-hpijs.ppd. Sie sollten nun den Drucker installieren. Dies können Sie über das CUPS-Web-Interface oder über die Kommandozeile tun. Das Web-Interface finden Sie unter http://PrintServer:631 sobald CUPS läuft.

Befehlsauflistung 4.9: Drucker über die Kommandozeile installieren

# lpadmin -p HPDeskJet930C -E -v usb:/dev/ultp0 -m HP-DeskJet_930C-hpijs.ppd
# /etc/init.d/cupsd restart

Denken Sie daran, dies an Ihre Gegebenheiten anzupassen! Stellen Sie sicher, dass Sie den Namen (-p-Argument) richtig schreiben (das ist der Name, den Sie bei der Samba-Konfiguration angegeben haben!) und dass Sie die richtige Geräte-Datei angeben: usb:/dev/usb/foo, parallel:/dev/bar oder welche auch immer Sie für Ihren Drucker verwenden.

Sie sollten nun in der Lage sein, über das Web-Interface auf den Drucker zuzugreifen und Testseite drucken zu können.

Den Windows-Druckertreiber installieren

Jetzt, wo der Drucker eigentlich funktionieren sollte, ist es Zeit, die Drucker-Treiber für Windows-Clients zu installieren. Diese Funktionalität wurde mit Samba 2.2 eingeführt. Suchen Sie im Netzwerk nach dem Print-Server, klicken Sie mit der rechten Maustaste auf die gewünschte Druckerfreigabe und wählen Sie "connect". Dies lädt den passenden Drucker-Treiber automagisch auf den sich verbindenden Client, wodurch Sie das Theater vermeiden, den Treiber auf dem Client von Hand installieren zu müssen.

Es gibt hierfür zwei Drucker-Treiber. Zunächst den Adobe PS-Treiber, den Sie von Adobe (Postscript Drucker-Treiber) beziehen können. Als zweites gibt es die CUPS PS-Treiber, die Sie durch Emergen von net-print/cups-windows erhalten können. Es scheint keinen Unterschied in der Funktionalität der beiden Treiber zu geben, jedoch muss der Adobe-Treiber auf einem Windows-System entpackt werden, da es sich um eine Windows-Binary handelt. Hinzu kommt, dass die ganze Prozedur, den korrekten Treiber zu finden und zu kopieren etwas mehr Theater bedeutet. Die CUPS-Treiber unterstützen ein paar Optionen, die den Adobe-Treiber fehlen.

Dieses Howto nutzt die CUPS-Treiber für Windows. Installieren Sie sie wie folgt:

Befehlsauflistung 4.10: Installieren des Treibers

# emerge -av cups-windows

Nun verwenden wir das Skript cupsaddsmb, dass von der CUPS-Distribution bereitgestellt wird. Lesen Sie unbedingt die Man-Page (man cupsaddsmb), da es Auskunft darüber gibt, welche Windows-Treiber Sie in das richtige CUPS-Verzeichnis kopieren müssen. Sobald Sie die Treiber kopiert haben, starten Sie CUPS neu, indem Sie /etc/init.d/cupsd restart ausführen. Führen Sie als Nächstes cupsaddsmb wie folt aus:

Befehlsauflistung 4.11: cupsaddsmb ausführen

# cupsaddsmb -H PrintServer -U root -h PrintServer -v HPDeskJet930C
(Anstelle von  HPDeskJet930C können Sie auch "-a" angeben, wodurch alle
bekannten Drucker ausgegeben werden.)
# cupsaddsmb -H PrintServer -U root -h PrintServer -a

Warnung: Das Ausführen dieses Befehls verursacht häufig den meisten Ärger. Lesen Sie die Ausführungen in dieser Diskussion um einige Tipps zur Fehlerbehandlung zu erhalten.

Hier einige häufige Fehler, die auftreten können:

  • Der Hostname, den Sie als Parameter für -h und -H (PrintServer) angegeben haben wird oft nicht richtig aufgelöst und identifiziert den PrintServer für die Zusammenarbeit CUPS/Samba nicht. Wenn ein Fehler wie Warning: No PPD file for printer "CUPS_PRINTER_NAME" - skipping! auftritt, sollten Sie als erstes PrintServer durch localhost ersetzen und es erneut versuchen.
  • Der Befehl schlägt mit NT_STATUS_UNSUCCESSFUL fehl. Diese Fehlermeldung ist ziemlich allgemein und kann durch viele Probleme hervorgerufen werden. Unglücklicherweise ist sie nicht sehr aufschlussreich. Eine Sache, die Sie versuchen können, ist, vorübergehend security=user in Ihrer smb.conf zu setzen. Nachdem/Wenn die Installation erfolgreich abgeschlossen ist, sollten Sie diese Einstellung wieder auf "share" oder was immer es vorher war setzen.

Dies sollte die richtige Treiber-Verzeichnis-Struktur unter /etc/samba/printer installieren. Das wäre /etc/samba/printer/W32X86/2. Es sollten die drei Treiber-Dateien und eine PPD-Datei, die nach IhrDruckerName.ppd (der Name, den Sie Ihrem Drucker bei der Installation gegeben haben (siehe oben)) umbenannt wurde, enthalten sein.

Wenn wir davon ausgehen, dass keine Fehler oder andere Komplikationen aufgetreten sind, sind Ihre Treiber nun installiert.

Einrichtung abschließen

Richten Sie als letztes Ihre Verzeichnisse ein.

Befehlsauflistung 4.12: Letzte notwendige Änderungen

# mkdir /home/samba
# mkdir /home/samba/public
# chmod 755 /home/samba
# chmod 755 /home/samba/public

Samba-Konfiguration testen

Wir möchten nun unsere Konfigurationsdatei testen, um sicherzustellen, dass alles richtig formatiert ist und alle Optionen zumindest die richtige Syntax verwenden. Um dies zu tun, starten wir testparm.

Befehlsauflistung 4.13: Ausführen von testparm

(Standardmäßig prüft testparm die Datei /etc/samba/smb.conf)
# /usr/bin/testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[printers]"
Global parameter guest account found in service section!
Processing section "[public]"
Global parameter guest account found in service section!
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
 ...
 ...

Den Samba-Dienst starten

Konfigurieren Sie nun Samba so, dass der Dienst beim Booten startet. Starten Sie ihn anschließend.

Befehlsauflistung 4.14: Samba-Dienst einrichten

# rc-update add samba default
# /etc/init.d/samba start

Die Dienste überprüfen

Es ist wahrscheinlich Weise bei dieser Gelegenheit auch die Logs zu überprüfen. Zusätzlich möchten wir einen Blick auf unsere Samba-Freigaben mit Hilfe von smbclient werfen.

Befehlsauflistung 4.15: Freigaben mit smbclient prüfen

# smbclient -L localhost
Password:
(Sie sollten nun eine LANGE Liste von Diensten sehen.)

5.  Konfiguration der Clients

Drucker-Konfiguration für *nix-basierte Clients

Trotz vieler Varianten oder Distributionen ist CUPS das einzige, was Sie brauchen. Machen Sie das Gleiche für jeden anderen UNIX/Linux/BSD-Client.

Befehlsauflistung 5.1: Gentoo-System konfigurieren

# emerge cups
# nano -w /etc/cups/client.conf
ServerName PrintServer      # Ihr Print-Server-Name

Das sollte es gewesen sein. Sonst ist nichts weiter nötig.

Wenn Sie lediglich einen Drucker verwenden, ist dieser auch Ihr Standarddrucker. Wenn viele Drucker über Ihren Print-Server verwaltet werden, muss Ihr Administrator einen Standarddrucker auf dem Print-Server einstellen. Möchten Sie für sich selbst einen anderen Standarddrucker einstellen, benutzen Sie den lpoptions-Befehl.

Befehlsauflistung 5.2: Standarddrucker einstellen

(Verfügbare Drucker auflisten)
# lpstat -a
(Beispielausgabe, Ihre wird anders aussehen)
HPDeskJet930C accepting requests since Jan 01 00:00
laser accepting requests since Jan 01 00:00
(HPDeskJet930C als Ihren Standarddrucker einstellen)
# lpoptions -d HPDeskJet930C

Befehlsauflistung 5.3: Drucken unter *nix

(Zu verwendenden Drucker angeben)
# lp -d HPDeskJet930C anything.txt
(Standarddrucker verwenden)
# lp foobar.whatever.ps

Browsen Sie auf dem Client zu >http://printserver:631, wenn Sie Ihre Drucker und deren Druckjobs über ein nettes Web-Interface verwalten möchten. Ersetzen Sie dabei printserver mit dem Namen des Rechners, der als Print-Server dient, aber nicht mit dem Namen, den Sie dem CUPS-Print-Server gegeben haben, falls Sie hier unterschiedliche Namen verwendet haben.

Windows- oder Samba-Freigabe unter GNU/Linux mounten

Notiz: Vergessen Sie nicht zuerst net-fs/mount-cifs oder net-fs/samba auf den Clients, die auf die Freigaben zugreifen werden, auszuführen.

Nun ist es Zeit, Ihren Kernel so zu konfigurieren, dass er CIFS unterstützt. Da ich annehme, dass wir alle zumindest einmal einen Kernel kompiliert haben, müssen wir sicherstellen, dass wir die richtigen Optionen in unserem Kernel ausgewählt haben. Der Einfachheit halber bauen wir ein Modul, weil es leichter zu handhaben ist. Der Autor ist der Auffassung, dass Kernelmodule eine gute Sache sind und, wann immer möglich, verwendet werden sollten.

Befehlsauflistung 5.4: Kernel-Unterstützung

CONFIG_CIFS=m

Bauen Sie anschließend das Modul und installieren Sie es; fügen Sie es ein mit:

Befehlsauflistung 5.5: Kernelmodul laden

# modprobe cifs

Ist das Modul einmal geladen, können Windows- oder Samba-Freigaben gemounted werden. Verwenden Sie mount um dies zu tun, wie unten aufgeführt:

Befehlsauflistung 5.6: Windows-/Samba-Freigabe mounten

(Die Syntax, um eine Windows-/Samba-Freigabe zu mounten lautet:
mount -t cifs [-o username=xxx,password=xxx] //Server/Freigabe /mnt/point
Falls keine Passwörter verwendet werden, ist die Angabe eines Passwortes überflüssig)

# mount -t cifs //PrintServer/public /mnt/public

(Wenn ein Passwort nötig ist:)
# mount -t cifs -o username=USERNAME,password=PASSWORD //PrintServer/public /mnt/public

Nachdem die Freigabe gemountet wurde, können Sie darauf wie auf eine lokale Festplatte zugreifen.

Drucker-Konfiguration für Windows NT/2000/XP-Clients

Das ist nur ein bisschen Mit-der-Maus-klicken. Öffnen Sie \\PrintServer und klicken Sie mit der rechten Maustaste auf den Druckereintrag (HPDeskJet930C) und wählen Sie "Verbinden". Dadurch wird der Treiber auf den Windows-Client heruntergeladen, so dass nun jedes Programm (wie Word oder Acrobat) HPDeskJet930C als verfügbaren Drucker anbietet und über ihn drucken kann. :-)

6.  Abschließende Bemerkungen

Ein zärtliches Lebewohl

Nun gut, das sollte es gewesen sein. Sie sollten nun eine verwendbare Druckumgebung, die sowohl zu Windows als auch zu *nix freundlich ist, als auch eine funktionierende Freigabe haben!

7.  Links und Quellen

Links

Dies sind einige Links, die bei der Einrichtung und Konfiguration Ihrer Installation und bei der Fehlersuche hilfreich sein können:

Troubleshooting

Lesen Sie diese Seite von Kurt Pfeifles "Printing Support in Samba 3.0"-Anleitung. Dort gibt es ein Menge wertvoller Tipps. Schauen Sie sich dies auf jeden Fall zuerst an, bevor Sie Fragen und Probleme posten. Möglicherweise ist die Lösung, die Sie brauchen, genau da.



Drucken

Seite aktualisiert 2. März 2011

Die Originalversion dieser Übersetzung wird nicht länger gepflegt

Zusammenfassung: Aufsetzen, installieren und konfigurieren eines Samba-Servers unter Gentoo, der Dateien und Drucker ohne Treiber-Installation bereitstellt.

Andreas "daff" Ntaflos
Autor

Joshua Preston
Autor

Joshua Saddler
Bearbeiter

Thomas Gier
Übersetzer

Tobias Heinlein
Übersetzer

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.