PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Windows Druckerserver mit Samba 3 (SuSE 9.1)



~Gh05t~
25.05.04, 09:51
Hi all,
ich bin hier gerade als Zivi in der Schule und soll nen Linux-Server als Router, Windows Fileserver und Druckerserver konfigurieren. Bis her geht das auch ganz gut, nur habe ich Probleme mit der Druckerfreigabe. Samba läuft, die Clients können auf den Sambaserver zugreifen. Nur der Drucker will nicht so recht. Ich habe ihn unter Yast2 installiert, im Linux-System geht er auch.
Bei den Windows Clients ist von dem Drucker ichts zu sehen. Die Clients melden sich alle mit dem Benutzernamen "alle" an, im Linuxsystem werden sie als Gast authentifiziert. Hier mal meine smb.conf:


[global]
workgroup = SCHULE
netbios name = BBServer
browseable = no
public = yes
writeable = no
guest ok = yes
security = share
interfaces = 127.0.0.1 eth0
bind interfaces only = true
printing = cups
printcap name = cups
# printer admin = @ntadmin, root, administrator
map to guest = Bad User

[printers]
comment = All Printers
#path = /var/tmp
path = /var/spool/samba
browseable = no
guest ok = Yes
writeable = no
printable = Yes
printer admin = root, @ntadmin
[schueler]
path = /daten/schueler
browseable = yes
read only = no
writeable = yes
public = yes
[lehrer]
path = /daten/lehrer
browsable = yes
read only = yes
writeable = no
public = yes

Der verzeichnis /var/spool/samba existiert, chmod ist 777.
Die Clients haben alle Win2k drauf, dort sind nur die 2 Freigaben + ein leerer Ordner "Drucker" vorhanden. Was mach ich nu?

~Gh05t~
26.05.04, 12:28
Hat denn irgend jemand von euch n Druckerserver mit Samba 3 laufen?
An Windows liegt es mal definitiv nicht, wenn ich mich über smb-client an meinem Samba Server anmelde wird auch keine Druckerfreigabe aufgeführt... Woran kann das liegen?
Wenn ich SMB neustarte sagt er immer "waiting for CUPS to start... done" oder so, von daher wird das ja schon eingebunden. Und der Drucker ist ja auch installiert, sonst könnte ich unter Linux ja auch nicht drucken. Das Problem ist dann ja wohl, das Samba bei CUPS keinen Drucker findet. Warum?

mamue
26.05.04, 12:40
Ein print$ wäre noch anzuraten:
[print$]
comment = Druckertreiber
path = /samba/druckertreiber
browsable = no
guest ok = yes
read only = no

Danach die Drucker mit cups (yast) einrichten und samba neustarten.
Die Drucker mit cupsaddsmb samba hinzufügen. Bei der Syntax ein bisschen experimentieren. Im übrigen empfehle ich das "Samba3-howto" und "samba3-by example", beide auf den Doku-seiten von samba.org im PDF Format.

mamue

~Gh05t~
26.05.04, 16:04
print$ habe ich schon eingerichtet, habe auch cups noch mal konfiguriert.
Kein Erfolg.
cupsaddsmb fragt bei mir (trotz vorhandenem, aktiviertem root-smb-acc) immer wieder nach dem root-PW... ka warum.
Auch die PDFs von Samba.org hab ich mir shcon durchgelesen, das war mir aber etwas zu unkommentiert, was dort angegeben war ist mir etwas schleierhaft und unverständlich (RAW-Drucker etc). Warum muss das so kompliziert sein? Kann ich den Drucker nicht auch irgendwie manuell freigeben? Warum muss ich darauf hoffen, dass Samba den bei CUPS findet?

mamue
26.05.04, 22:54
cupsaddsmb muss funktionieren. Wenn dauernd nach dem Passwort gefragt wird, hast Du etwas falsch gemacht, ich brauchte einen oder beider Parameter, -h und/oder -H
Das Drucken von yast aus funktioniert? Hast Du auch schon die CUPS windows Druckertreiber an eine passende Stelle kopiert?

mamue

~Gh05t~
27.05.04, 09:29
Ja, habe ich. Mit cupsaddsmb -a sollte normal eine Windows-Treiberstruktur erstellt werden, das geht leider nicht. Als root kann ich mich anmelden, daran liegts nicht. Was kann das sonst für ein Fehler sein?

mamue
27.05.04, 15:56
Wie gesagt, schau Dir mal die manpage zu cupsaddsmb an, speziell die Parameter -h und -H.

mamue

gemma207
27.05.04, 16:16
Schau dir doch mal des howto von Samba an

http://de.samba.org/samba/docs/man/howto/printing.html

ich glaub du musst in [global] printing = bsd einmachen, nicht printing = cups, da dein Windows ja kein cups kennt.

mamue
27.05.04, 20:30
ich glaub du musst in [global] printing = bsd einmachen, nicht printing = cups, da dein Windows ja kein cups kennt.
Windows kennt von Haus aus auch kein BSD-printing.
printing = cups
meint, dass samba das cups Drucksystem verwendet. Windows hat damit nichts zu tun.

mamue

~Gh05t~
28.05.04, 12:56
Also, die Man-Page zu cupsaddsmb hab ich mir jetzt schon zu genüge angesehen, kann nichts finden.


The -H option specifies the SAMBA server which defaults to the CUPS server.

The -U option specifies the SAMBA print admin username which defaults to your current username.

The -a option exports all known printers. Otherwise only the named printers are exported.

The -h option specifies a different CUPS server to use.

The -v option specifies that verbose information should be shown and is useful for debugging
SAMBA configuration problems.

Mehr als eindeutig. Der -a Parameter bringt bei mit die Fehler mit dem root-PW, es existiert jedoch schon ein Verzeichnis mit den exportierten Druckertreibern.
Ich habe eben mal Samba auf die version 3.04 geupdated und versucht die Druckerfreigabe über YaST einzurichten... kein Erfolg.
Was kann ich noch machen? Ich habe bestimmt schon 5 Tutorials durchgearbeitet, keins von denen bringt den gewünschten Erfolg :( :( :(

mamue
28.05.04, 13:53
Ich kenne die Manpage, sie hilft einem nicht wirklich. Ich brauche bei mir den -h oder -H Parameter, obwohl cups-server == samba-server. Hast Du es schon ausprobiert?
Was sagt denn eigentlich ldd smbd?

mamue

~Gh05t~
28.05.04, 14:58
Klar hab ichs ausprobiert. Wurde anstandslos angenommen, hat aber auch nix gebracht.
Kann das gerade nicht testen, da ich daheim bin und der Server in der Schule steht (hab noch keine Dyndns eingerichtet). Werde wohl bis nächste Woche warten müssen.
Dementsprechend weis ich auch nicht was ldd sagt.

kberger
30.05.04, 18:06
Hallo,
wenn alle Clients W2k installiert haben, solltest du den/die Drucker von Windows aus mit cups ansprechen.

W2k hat das IPP-Protokoll integriert.

Eine Anleitung hierzu habe ich schon einmal eingestellt.

Gruß Klaus

CYP
31.05.04, 14:19
die windows rechner können dir drucker nicht sehen ?

versuch doch mal load printers in die smb.conf eizutragen

[global]
load printers = yes
printing = cups
printcap name = cups

[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
public = yes
guest ok = yes
writable = no
printable = yes
printer admin = root, @ntadmins

das muss alles in der smb.conf stehen -> ausserdem muss samba mit cups support kompiliert sein

sieht man mit
ldd $(which smbd)|grep cups

steht aber auch alles genau beschrieben in:
http://de.samba.org/samba/docs/man/howto/CUPS-printing.html

~Gh05t~
31.05.04, 23:47
Load printers habe ich schon versucht, die anderen Configs die du da hast auch.
ldd kann ich auch bei mir laufen lassen, ich habe auch SuSE 9.1 mit dem selben Samba-Package:


# ldd $(which smbd)|grep cups
libcups.so.2 => /usr/lib/libcups.so.2 (0x40229000)

Damit kann ich mal nicht viel anfangen, hört sich aber so an als ob das funced.

@kberger: Geht das ohne Samba? Weil mein Problem ja ist, das ich keine Druckerfreigabe habe, und das liegt nicht am client (mit smbclient auf localhost finde ich den Drucker auch nicht).

CYP
01.06.04, 11:36
wurde der drucker denn auch im cups angelegt oder hat yast ihn als lpr drucker installiert

schau mal

http://serverip:631/printers

da muss dein druck angelegt sein -> sonst gehts net

kberger
01.06.04, 12:20
Hallo,
W2k und XP haben das IPP-Protokoll integriert. Es geht auch ohne Samba.
Samba benötigst du zum Drucken unter Win 9.x und ME.

Hier noch mal eine kurze Anleitung zum Drucken von XP per IPP auf CUPS:

CUPS komplett mit Treibern auf dem Server installieren.

Den Drucker auf dem Server unter CUPS mit YAST in Betrieb nehmen.

Probedruck sollte funktionieren.

Dann eine RAW-Warteschlange einrichten. Du darfst hierfür "Lokales Filtern durchführen" nicht anklicken.
Dadurch werden die Druckdaten von dem Windowsrechner nur durchgeleitet.

Nun noch im Verzeichnis /etc/cups in den beiden Dateien mime.convs und mime.types jeweils die Zeilen die mit "application/octet-stream" beginnen auskommentieren.

XP:
Druckereinstellung: Netzwerkdrucker
Für den Drucker eintragen:
http://(Servername oder IP):631/printers/(Druckername)
XP sollte dann zur Treiberinstallation übergehen.

Probedruck und fertig.

Die Anleitung reicht hoffentlich aus.



Gruß Klaus

CYP
01.06.04, 13:30
das praktische mit samba ist aber die automatische windows druckertreiber installation beim verbinden mit dem drucker

ideal um die drucker per login script und con2prt.exe (aus dem recource kit)
automatisch den rechner zuzuweisen -> das schont des admins nerven :)

~Gh05t~
02.06.04, 08:45
also...


# ldd /usr/sbin/smbd
linux-gate.so.1 => (0xffffe000)
libldap.so.199 => /usr/lib/libldap.so.199 (0x40031000)
liblber.so.199 => /usr/lib/liblber.so.199 (0x40063000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0x40070000)
libgssapi.so.1 => /usr/lib/libgssapi.so.1 (0x40074000)
libkrb5.so.17 => /usr/lib/libkrb5.so.17 (0x40083000)
libasn1.so.6 => /usr/lib/libasn1.so.6 (0x400be000)
libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x400e5000)
libroken.so.16 => /usr/lib/libroken.so.16 (0x401d5000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x401e5000)
libresolv.so.2 => /lib/libresolv.so.2 (0x40217000)
libcups.so.2 => /usr/lib/libcups.so.2 (0x40229000)
libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0x40246000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40276000)
libpam.so.0 => /lib/libpam.so.0 (0x4028b000)
libattr.so.1 => /lib/libattr.so.1 (0x40293000)
libacl.so.1 => /lib/libacl.so.1 (0x40298000)
libdl.so.2 => /lib/libdl.so.2 (0x4029e000)
libpopt.so.0 => /usr/lib/libpopt.so.0 (0x402a1000)
libc.so.6 => /lib/tls/libc.so.6 (0x402a9000)
libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x403be000)
libdb-4.2.so => /usr/lib/tls/libdb-4.2.so (0x403d4000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x404a9000)

bei http://localhost:631/printers finde ich

Kyocera FS-800 Foomatic/hpijs (recommended)
Beschreibung: Kyocera FS-800
Standort: Parallel printer on /dev/lp0
Gerätestatus: gelangweilt, Nimmt Aufträge entgegen.
Geräte URI: parallel:/dev/lp0

Ich werde das jetzt mal mit dem IPP-Protokoll probieren...

~Gh05t~
02.06.04, 11:35
OK, IPP funktioniert einwandfrei!!! THX für alle Hilfe!
Ist zwar schade, dass Samba das nicht hinbekommt, aber so gehts auch. Die Druckertreiber sind ja bei Windows dabei, und es sind nur 20 Clients (mit Dr.Kaiser Wächtersoftware die erst noch deaktiviert werden will...)... :rolleyes:
Falls noch jemand ne Idee zu der Samba Lösung hat, mich würde das generell mal interessieren, da ich das noch nie hinbekommen habe...