Inhalt
Inhaltsverzeichnis
- Allgemeines
- Links
-
Tips und Tricks
- z.B. Virtuelle Server
- Dateinamen
- Rechte / Modi / Attribute
- Windows Domänenadminstrator einrichten
- Freigaben per fstab einbinden
- Freigaben in einem Terminal per mount einbinden
- Schreib/Lese Rechte
- File-Locking
- Quota-Hacks
- Performance-Tuning
- (Un-)verschlüsselte Passwörter
- Samba als Zeitserver
- Suchen in einer Arbeitsgruppe
- Samba konfigurieren mit SWAT
- Spezielle Erfahrungen
- Login Prozeduren
- Fragen und Antworten
1. Allgemeines
Samba ist ein Datei-, Druck- und neuerdings auch Domänen-Anmelde-Server unter Linux für die Anbindung von Windows-Clients.
Samba kann damit die wichtigsten Funktionen eines Windows-NT-Servers nachbilden - und das lizenzkostenfrei mit unlimitierter Benutzerzahl!
Der Name "Samba" ist übrigens eine Andeutung auf das in Windows-Netzwerken verwendete SMB-Protokoll.
Homepage: http://de.samba.org/samba/
Lizenz: GPL
1.1. Aktuell
Aktuelle Versionen haben auch fortgeschrittene PDC-Funktionen (Primary Domain Controller), als BDC (Backup Domain Controller) kann man Samba allerdings (noch?) nicht verwenden, weil das dazu verwendete Microsoft-Protokoll nicht bekannt ist.
Mit der Version 3.0 final gab es einige wichtige Neuerungen bei Samba. Wichtige dabei:
Active_Directory Support
- Samba kann jetzt an einer Windows-Domäne teilnehmen
UniCode-Support
- uvm.
Ein Update auf diese Version lohnt sich auf alle Fälle. Auch weil damit viele Bugs behoben wurden. Aber auch insbesondere mit dem Active_Directory-Support und LDAP ist Samba sehr viel stärker geworden gegenüber den neuesten Windows 2003-Servern. Die britische IT-Wekk berichtet sogar das Samba 3 dreimal so schnell sei, wie ein Windows 2003-Server.
16.12.2003: Version 3.0.1 (Bugfix-Release), siehe Release Notes.
27.01.2009: Version 3.3.0 (Stable-Release), siehe http://news.samba.org/releases/3.3.0/.
1.2. Grundlagen
Wer das Glück hatte, bisher noch nicht viel mit Windows-Netzwerken zu arbeiten sollte sich vielleicht zunächst mit den /ProtokollGrundlagen vertraut machen.
2. Links
DIE Deutsche Samba Seite ist jetzt englisch.
Sehr umfangreiche Howtosammlung/Anleitung in Deutsch Link defekt!
Samba, 2. Auflage O'Reilly Link defekt!
Andrew Williams' home-page Link defekt!
Samba Tuning Link defekt!
Samba 3.0 für Debian/Woody Link defekt!
Authentifizierung gegen ein AD mit Winbindd Link defekt!
Unoffical Samba Howto Link defekt!
Die SMB-Clients sind auf smbmount und smbclient beschrieben.
Falls jemand mal schnell und dynamisch von Linux auf SMB Shares zugreifen will sollte er sich auch Komba2 LinNeighborhood und KDEs konqueror anschauen (lisa muss laufen).
3. Tips und Tricks
3.1. z.B. Virtuelle Server
Eine unscheinbare Option mit durchschlagender Wirkung ist.
[global] netbios aliases = server prod test include = /etc/samba/smb.conf.%L
Dadurch entstehen mehrere Server in der Netzwerkumgebung die man auch getrennt in den smb.conf.server, sowie smb.conf.prod .... einstellen kann. Auch die Option: config file sollte zu diesem Zweck verwendbar sein.
3.2. Dateinamen
Die Groß-/Kleinschreibung wird von UNIX/Linux beachtet, von Windows nicht. Manche Windows-Software ist auch noch quasi schizophren: Es werden Dateien in Kleinbuchstaben angelegt, und später wird mit Großbuchstaben darauf zugegriffen (und oh Wunder, wenn dann nix kommt @) )
Zeichensatz-Einstellung für korrekte Umlaute sowohl unter Linux als auch von Windows-Clients aus (diese Einstellung ist nicht standardmäßig voreingestellt!):
# korrekte Werte bei Samba 2.x: character set = ISO8859-1 client code page = 850 # bei Samba 3.x: unix charset = ISO8859-1 dos charset = 850
Dadurch ändert sich das Mapping, d.h. wenn man vorher falsche Settings drin hatte, so dass die Umlaute in Filenamen nur unter Windows korrekt aussahen, stimmen sie danach nicht mehr, weil Samba die Zeichen nun korrekt, aber eben anders interpretiert. Abhilfe kann hier u. U. auch convmv schaffen. Diese und andere Änderungen in der Konfiguration sollten nicht während einer aktiven Netzwerkverbindung getätigt werden. Hinsichtlich der Möglichkeit des Dateientauschens im Internet sollte man auf Umlaute (ä, ö, ü und ß) in Dateinamen jedoch generell verzichten.
3.2.1. Hinbiegen von falschen Umlauten
Angenommen man hat einen Samba 2.x, mit Charset-Settings auf Default (falsch für Deutschland), dann speichert Linux die von Windows-Usern gerne benutzten Umlaute falsch im Dateisystem ab, man sieht sie dann auch in z.B. mc nicht richtig auf dem Linux-Server.
Um dann auf Samba 3 mit richtigen Settings umzustellen, ist folgende Vorgehensweise möglich:
- Einstellen der falschen Settings in Samba 3, damit bekommt man auf Windowsseite erstmal richtige Dateinamen angezeigt:
unix charset = CP850 # ohne dos charset!
- Dann alle Daten von Windows aus vom Server z.B. auf die lokale Client-Festplatte kopieren.
- Dann Samba richtig konfigurieren (siehe vorheriger Abschnitt) und alle Daten wieder auf den Server kopieren.
- Jetzt stimmen die Umlaute sowohl am Client, als auch im Filesystem.
Oder convmv verwenden. -- HelmutGrohne 2005-12-01 23:39:03
3.3. Rechte / Modi / Attribute
Generell: UNIX-Rechte sind die Grundlage, per Samba kann man diese nur weiter einschränken.
Übrigens: Samba (mindestens ab Version 3) kontrolliert jede Minute, ob sich die Konfiguration geändert hat und liest diese gegebenenfalls neu ein. Ein "Reload" oder "Restart" ist deshalb nicht notwendig.
3.4. Windows Domänenadminstrator einrichten
Wenn man wie von Microsoft gewohnt einen Benutzer Administrator für die Domäne einrichten möchte (RID = 500), dann empfiehlt sich folgendes Vorgehen unter Debian:
- User Administrator unter Linux einrichten und der Gruppe root zuordnen (Details findet man in den man-Pages von adduser und usermod)
- User Administrator für Samba einrichten (remote über net rpc user add oder lokal mit Hilfe z. B. von pdbedit)
- WICHTIG: unbedingt prüfen, ob in der Datei smbusers ein Mapping von Administrator (unter Samba)
- auf den root-Account (unter Linux) definiert ist. Dies unbedingt auskommentieren, da Samba unter Debian sonst versucht, den user root zu authentifizieren, was mangels Passwort fehlschlägt und somit eine Anmeldung an Samba verhindert.
3.4.1. DOS/WIN-Spezialattribute
Die Attribute System,Hidden,Archive gibt es unter UNIX nicht, Samba kann sie aber auf --x--x--x mappen:
map hidden = True map system = True map archive = True
Außerdem muss man darauf achten, dass 0111 in den div. "* mask" enthalten ist, sonst werden diese Mappings dadurch zunichte gemacht.
Ferner gibt der daraus resultierende chmod-Aufruf Probleme, wenn die Datei einen anderen Owner hat als den aktuell über Samba zugreifenden Benutzer (chmod darf nur der Owner und root natürlich).
3.4.2. Rechtevergabe auf Freigaben
Es ist sinnvoll, Zugriffsberechtigungen auf Freigaben auf eine gleichnamige UNIX-Gruppe abzubilden. Die Benutzer, die berechtigt sind, die Freigabe voll zu nutzen, fügt man dann einfach zu dieser UNIX-Gruppe hinzu. Wenn ein anderer Personenkreis Nur-Lese-Zugriff erhalten soll, verfährt man dementsprechend mit einer zweiten Gruppe namens ...-ro (read-only):
/etc/group:
einkauf:x:500:mueller,maier,schmidt einkauf-ro:x:501:hinz,kunz
/etc/samba/smb.conf:
[einkauf] comment = Daten der Abteilung Einkauf path = /daten/einkauf read only = No valid users = @einkauf, @einkauf-ro read list = @einkauf-ro # force group = +einkauf # kann statt sgid verwendet werden, "+" ist wichtig! # bei Benutzung einer ...-ro-Gruppe muss dies leider so gesetzt werden: create mask = 0775 directory mask = 0775 # ohne ...-ro-Gruppe ist dies besser: #create mask = 0771 #directory mask = 0771
Wie man sieht, kann man so den Share-Namen, den UNIX-Pfad und die beteiligten Benutzergruppen alle vom Identifier "einkauf" direkt ableiten, was die Administration ungemein vereinfacht.
Damit beim Speichern einer Datei die Gruppe korrekt auf "einkauf" gesetzt wird (was ja nicht die primäre Gruppe des Benutzer ist), kann man entweder alle Verzeichnisse sgid und group einkauf setzen oder force group = +einkauf verwenden (das +-Zeichen ist hier extrem wichtig!).
find /daten/einkauf -type d -exec chgrp einkauf {} \; find /daten/einkauf -type d -exec chmod g+s {} \;
Bei Umstellungen von bestehenden Datenbeständen empfiehlt es sich auch, einmalig zumindest Gruppe und Modus aller Verzeichnisse und Dateien sinnvoll zu setzen.
3.5. Freigaben per fstab einbinden
Um Freigaben einzubinden verwendet man in modernen Linuxsystemen das CIFS-Dateisystem (früher "smbfs"). In vielen Systemen ist mit man mount.cifs ausreichend Hilfe vorhanden.
Ein fstab-Eintrag kann so ähnlich aussehen:
//sambaserver/freigabe /mnt/mountpunkt cifs user=username,password=passwort,uid=502,gid=500
(mit uid und gid wird das DateiSystem mit den entsprechenden Eigentümern eingebunden, damit Du nachher auch Schreib- und Lesezugriff hast)
3.6. Freigaben in einem Terminal per mount einbinden
Dies funktioniert folgendermaßen:
mount -t cifs //server/freigabe[Verzeichnis] Mountpunkt/ -o { username=Benutzername,password=Paswort | credentials=/Pfad/Zu/Datei }
Mögliche Fehler (Details können per dmesg | tail abgerufen werden):
* -22: Unter Debian/Ubuntu hilft es, per apt-get install smbfs das Paket smbfs zu installieren, dann klappt das mounten
3.7. Schreib/Lese Rechte
Sollten in besondere nach Updates über das vorhandene Paketmanagment überprüft werden. Nicht nur einfach machen lassen, nachschauen ist die Devise. Debian z.b (dort ist es mir sehr unangenehm aufgefallen) setzt defaultmässig die writeable Permissons auf "NO" zurück, was das beschreiben von Netzwerkshare's faktisch unmöglich macht. Der Anwender steht da und wundert sich.
Hat mich ca. 6 Stunden beschäftigt, zwar @home, aber trotzdem finde ich ist so ein Verhalten, gelinde gesagt, etwas absonderlich.
3.8. File-Locking
Wenn dies falsch eingestellt ist, kann es zu merkwürdigem Verhalten und Abstürzen von Datenbankanwendungen kommen. Dann blocking locks = no ausprobieren, wenn das nicht reicht, zusätzlich noch strict locking = yes .
3.9. Quota-Hacks
Siehe quota/BenutzerUndGruppen.
3.10. Drucken
3.10.1. Samba & CUPS auf Debian
Siehe CUPS.
3.10.2. Drucken auf Drucker an Windows-Arbeitsplatz
[drucker] comment = Drucker an Arbeitsplatz xy path = /tmp print ok = yes browseable = yes print command = echo "print %s" | smbclient //clientname/druckername -Uusername%userpasswort ; rm %s
Am Besten einen Windows-User ohne Rechte nehmen, ansonsten wär das Passwort im Klartext wohl möglicherweise ein Problem.
3.10.3. PDF-Drucker
Mit dieser Druckfreigabe können Anwender einfach PDFs erzeugen - auf dem Client installiert man dazu einen Postscript-Druckertreiber, z.B. Apple Color Laserwriter. Das PDF wird immer als ~/pdf/output.pdf erzeugt (und überschreibt dabei gnadenlos das vorher erzeugte PDF, wenn man es nicht sinnvoll umbenannt hat).
[ps2pdf] comment = PS to PDF converter (-> $HOME/pdf/output.pdf), delete temp.ps! path = /tmp guest ok = yes create mask = 0700 printable = yes browseable = yes read only = yes print command = ( mkdir %H/pdf ; rm %H/pdf/output.pdf ; ps2pdf %s %H/pdf/output.pdf ; rm %s ; rm %H/pdf/temp.ps )
Diese Methode funktioniert bei printing = cups nicht mehr, weil dort wohl nur in CUPS konfigurierte Drucker angesprochen werden.
3.10.4. Druckprobleme - druckt nicht mehr
Problem: Nach einem Hardwareproblem (mit Systemcrashes) ging plötzlich von allen Windows-Clients aus kein Ausdruck mehr, obwohl alle Dienste korrekt gestartet waren und an der Konfiguration nicht geändert worden war. Windows meldete nur lapidar Die Testseite konnte nicht gedruckt werden. Soll die Druckproblembehandlung angezeigt werden? Es konnte kein Druckauftrag erstellt werden., was nicht sehr hilfreich war. Die Testseite von CUPS funktionierte.
Lösung: Es fand sich dann Folgendes nach einem fehlgeschlagenen Druckversuch im Logfile eines Test-Arbeitsplatzes:
[2003/09/27 10:17:19, 0] tdb/tdbutil.c:tdb_log(475) tdb(/var/cache/samba/printing.tdb): rec_read bad magic 0x0 at offset=35728
Es ist also bei dem Crash die printing.tdb beschädigt worden. Dies ist eine Datei, die Samba automatisch erstellt, sie kann also einfach gelöscht werden:
/etc/init.d/samba stop rm /var/cache/samba/printing.tdb /etc/init.d/samba start
Und schon druckt es wieder!
Tritt übrigens bei Samba v3.0.11 immer noch auf, die Dateien heissen dort jetzt aber /var/cache/samba/printing/*.tdb - löschen hilft, werden automatisch neu generiert.
3.10.5. Druckprobleme - langsamer Ausdruck
Von http://www.edoceo.com/liber/network-cups.php - ohne Gewaehr, noch nicht ausprobiert:
Windows XP SP2 Slow Printing Bug
This information was difficult to find on the web so here it is. If printing to the Samba printer is slow from Windows XP with Service Pack 2 the issue is caused by some extra junky registry entries. It's unclear why this causes the problem, who's fault is it anyways?
The fix is to remove HKEY_CURRENT_USER\Printers\*.
# Values HKEY_CURRENT_USER\Printers\DeviceOld = REG_SZ # Subkeys HKEY_CURRENT_USER\Printers\Connections HKEY_CURRENT_USER\Printers\DevModePerUser HKEY_CURRENT_USER\Printers\DevModes2 HKEY_CURRENT_USER\Printers\Settings
3.11. Performance-Tuning
- Server:
socket options = TCP_NODELAY SO_RCVBUF=xxxx SO_SNDBUF=xxxx # mss=536 -> xxxx=8576 # mss=1460 -> xxxx=8760 # regel: BUF = n * mss, n=2..16 und ca. 8KByte groß # Schrott-NICs / schlechte Treiber wollen eher kleinere BUFs, also n=2
- Client:
- NETBEUI und IPX abschalten
- generell: 10/100MBit/s- und HDx/FDx-Settings an NICs und Switches sollten übereinstimmen
Kann jemand die möglichen Optionen verständlich erläutern und eventuell einige Tips geben wie man diese Werte sinnvoll einstellt ?
SO_KEEPALIVE SO_REUSEADDR erzwingt die sofortige Freigabe des Ports bei einem Crash. Normalerweise muss man dann ca. 2 Minuten auf den Timeout warten. SO_BROADCAST TCP_NODELAY IPTOS_LOWDELAY IPTOS_THROUGHPUT SO_SNDBUF * SO_RCVBUF * SO_SNDLOWAT * SO_RCVLOWAT *
Die manpage zu smb.conf erklärt leider nicht alles. Ich hatte einige performance Probleme vergangene Woche mit Samba 2.2.6 unter SuSE 8.1 mit win98, 2000 und XP Clients. Derzeit habe ich wie in der manpage angegeben die beiden Optionen aktiviert
socket options = TCP_NODELAY IPTOS_LOWDELAY
und seitdem läufts besser aber sonst - keine Ahnung; das Beispiel oben (mit mss usw.) verstehe ich nicht so ganz; die manpage zeigt als Beispiel noch
SO_SNDBUF = 8192
also genau 8kB - was ist denn nun sinnvoll und richtig ? -- IngoSchnieders 2003-02-14 20:26:55
3.12. (Un-)verschlüsselte Passwörter
Wenn die Unix und Windows-Logins auf gemeinsame Passwörter zugreifen sollen, gibt es drei Möglichkeiten:
- Die Passwörter werdem UNIX-mäßig gesichert, dann müssen alle Windows-Clients auf unverschlüsselte Passwörter umgestellt werden.
Die Passwörter werden von Windows (oder Samba) verwaltet, dann muss man die Linux/Unix-Rechner entsprechend umstellen (z.b. über PAM).
Die Passwörter werden in einem LDAP-Verzeichnis abgelegt.
Die erste Möglichkeit ist hier beschrieben:
Um einem Win-98 Client das verschlüsselte Passwort abzugewöhnen, muss der folgende Registry-Key erzeugt werden:
Registry mit regedit.exe öffnen und wechseln nach: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP
Erzeugen eines Eintrags (DWORD): EnablePlainTextPassword
- Ändern des Wertes auf: 1
Um einem Win-NT Client das verschlüsselte Passwort abzugewöhnen, muss der folgende Registry-Key erzeugt werden:
Registry mit regedt32.exe öffnen und wechseln nach: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rdr\Parameters
Erzeugen eines Eintrags (REG_DWORD): EnablePlainTextPassword
- Ändern des Wertes auf: 1
3.13. Samba als Zeitserver
[global] time server = boolean Default: no Alternative: yes
Wenn die Variable auf "yes" gesetzt wird bietet der Samba Server die Zeit auch über das smb Protokoll an.
Die Windows Clients können jetzt mit net time \\<timeserv> /set /yes ihre eigenen Uhren stellen. (timeserv kann natürlich auch ein netbios alias Name sein.)
3.14. Suchen in einer Arbeitsgruppe
net view - Windows (sowie Samba ab 3.0.0)
smbclient -L '*'
nmblookup - Windows hat da nbtstat
nmblookup -M - - wer ist der Masterbrowser?
3.15. Samba konfigurieren mit SWAT
SWAT ist standardmäßig nicht verschlüsselt, da beim anmelden das Rootpasswort übertragen wird ist dies sehr gefährlich. Mit stunnel (www.stunnel.org) und openssl kann die Verschlüsselung jedoch leicht nachgerüstet werden.
Pakete installieren:
- apt-get install stunnel openssl swat Zertifikat erzeugen: mkdir /etc/stunnel /usr/bin/openssl req -new -x509 -days 1000 -nodes -config /usr/share/doc/stunnel/examples/stunnel.cnf -out /etc/stunnel/stunnel.pem -keyout /etc/stunnel/stunnel.pem chmod 700 /etc/stunnel/stunnel.pem inetd.conf-Eintrag: swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/stunnel -p /etc/stunnel/stunnel.pem -l /usr/sbin/swat
oder swat.sh
In den meisten Distributionen ist neben Samba ein Dienst namens SWAT enthalten. Diesen Dienst kann man leicht in der inetd-Konfiguration aktivieren. Damit wird auf dem Port 901 ein Webinterface zur Konfiguration von Samba bereitgestellt. Einfach in einem Browser localhost:901 aufrufen. Mit SWAT lassen sich Benutzer Anlegen der Samba Dienst neu starten und Freigaben für Verzeichnisse und Drucker erstellen.
SWAT hat (zumindest früher, aktueller Stand ist mir nicht bekannt) alle Kommentare und Default-Werte aus der smb.conf entfernt!
4. Spezielle Erfahrungen
- eine alte Distribution wie z.B. SuSE 6.3 sollte man nicht versuchen, auf Samba 2.2.4 upzudaten, es gibt beim Compile dort alle möglichen Warnings und Fehler (selbst wenn man die aktuellen Kernel-Includes hat), so dass das ganze nur sehr schwer überhaupt zum Übersetzen zu kriegen ist
- Samba 2.0.10 (die letzte aus der 2.0er Serie) hingegen ist einfach unter SuSE 6.3 zum Laufen zu bekommen
5. Login Prozeduren
Windows erwartet beim anmelden, wenn nicht in der smb.conf ein festes loginscript eingetragen wurde in \\SERVER PDC\netlogon die datei %Username%.bat.
Ein Beispiel einer %Username%.bat
rem login script for group edvmitglieder rem call public script first rem u: is public directory set aproedv=no set kfmedv=yes set admin=no set po=no set aida=no set dcpa=no set sfirm32=yes call \\serverpdc\netlogon\global.bat
Mit den set anweisungen werden die enviromentvariablen gesetzt. Der Wert der Variablen wird in der aufgerufenen global.bat abgefragt.
Hier ein Beispiel einer Abfage auf den Wert einer Variablen.
rem persistent:no verhindert das w2k beim anmelden automatisch rem die alten buchstaben wieder herstellen moechte set persistent=/persistent:no if not %kfmedv%==yes goto ekfmedv net use j: \\server\entwicklung %persistent% net use t: \\andererserver\buchhaltung %persistent% :ekfmedv
Das bedeutet wenn die Variable kfmedv mit dem wert yes gefüllt ist werden die Laufwerksverbindungen hergestellt.
Umgehen der Rechte
Oft ist es notwendig während dem abarbeiten des Anmeldescipts dateien aus den Netz auf den Lokalen Rechner zu kopieren (z.B die Antivir Konfiguration oder Lizenzschlüssel). Um die Datei auf dem Klient überschreiben zu können gibt es folgende Lösung.
CPAU.exe einen runas klone
\\server\netlogon\CPAU.exe -u %COMPUTERNAME%\Administrator -p passwd -profile -ex "xcopy /y \\server\path\zu\conf\datei c:\programme\ziel"
- Um zu verhindern das das Passwort im file steht ist es möglich mit.
cpau -u administrator -p password -ex c:\tmp\test.bat -enc -file c:\tmp\job.cmd
das enstandene file job.cmd zu verschlüsseln und dann mit
\\path\to\cpau.exe -dec -file \\path\to\job.cmd
abarbeiten zu lassen. Hilfe gibts mit cpau /? Cpau findet man hier http://www.joeware.net/win/free/index.htm
6. Fragen und Antworten
Frage: kann Samba so konfiguriert werden, daß es die Passwörter von einem Windows 2000 Server benutzt ?
Siehe smb.conf(5): security = server bzw security = domain. Allerdings muß dazu AFAIK der w2k im sogenannten "mixed mode" - also NT4.0 kompatibel - sein.
der "mixed mode" wird nur für den weiteren Betrieb von nt 4 pdcs/bdcs benoetigt, die Authentifizierung wird dadurch nicht verändert. -- BastianBlank 2002-06-06 10:51:07
Frage: Samba und ACLs mit ext3: Beim Anlegen bzw. Kopieren einer Datei in ein Verzeichnis werden die für dieses gesetzten default Berechtigungen korrekt gesetzt. Wenn die Datei jedoch geändert wird (z.B. eine DOC Datei), so wird der Besitzer, sowie die "owning group" aus der ACL-Liste entfernt (soweit dort explizit gelistet). Darüber hinaus werden die Rechte der besitzenden Gruppe auf ---, die des Besitzers auf r-- gesetzt. Dieses Verhalten tritt jedoch nicht bei allen Applikationen auf. Nachvollzogen werden konnte es bei MS-Word, Excel, sowie dem Cisco ConfigMager 2.6. Andere Anwendungen (z.B.) Notepad haben dieses Problem scheinbar nicht. (mit XP-Pro getestet). Ist dieses Problem bekannt? Gibt es eine Lösung dafür?
Ich würde tippen, dass z.B. Word die Datei nicht überschreibt, sondern eine temporäre Datei auf die alte Datei verschiebt (zumindest ändert sich die Inode-Nummer). Die alte Datei wird also gelöscht und die ACL von ihr geht verloren. Es bleibt wohl nichts anderes ürbrig, als die Datei mit den entsprechenden Standard-Zugriffs-Berechtigungen anlegen zu lassen (in smb.conf) oder mittels setfacl -d dem ganzen Share eine entsprechende default-ACL zu verpassen. -- HenrykGerlach
Frage: Ich möchte Samba (2.2.0a) von Windows XP aus benutzen (ohne Domain-Controller). Wenn ich versuche auf \\samba zuzugriefen, bekomme ich nur die Meldung: Pfad nicht gefunden. Was tun ? --ThomasKalka
Mit \\samba rufst Du den Server samba auf; dieser sollte in deiner hosts-Datei stehen mit der IP der Samba-Servers. mit "ping samba" unter DOS kannst Du sehen, ob der Name samba aufgelöst wird und mit "net view \\samba" siehst Du ob der smbd|nmbd Service auf dem Rechner "samba" läuft. Du kannst dem Rechner aber jeden beliebigen (fast) Namen geben, er muß nur auf die IP des Rechners zeigen auf dem der samba-Server läuft. allg.: "ping \\<SERVER-NAME>" "net view \\<SERVER-NAME>" - VolkerStehling
- Alternativ gibt man die IP-Adresse des Samba-Servers bei den Clients als WINS-Server an. Das setzt natürlich voraus, dass man Samba auch als solchen betreibt.
Frage: Wir verwenden einen samba Server als Print-Spooler für einige windows Rechner. Das läuft eigentlich ganz gut. Der Einfachheit halber wurde nur ein Benutzer auf dem samba System eingerichtet. Auf Trennblättern wird nun leider nur der Samba User Name ausgegeben. Ist es möglich z.B. den Rechner Namen von dem die Verbindung aufgebaut wird, anstelle oder zusätzlich mit auszugeben? --ReimarBauer
- Aus der man-page von smb.conf: " %m the NetBIOS name of the client machine (very useful)."
- Du musst also das "%m" noch irgendwie in die Zeile "printer = " reinfummeln.
Problem: open_oplock_ipc: Failed to get local UDP socket for address 100007f. Error was Cannot assign requested.
- lo-Interface tut nicht richtig (nicht da, keine IP, Firewall ...)
- Frage: Was macht man, wenn beim Aufruf von smbpasswd die Meldung "No builtin nor plugin backend for smbpasswd guest found" kommt.
Antwort: In der Datei /etc/samba/smb.conf folgende Zeile auskommentieren oder löschen:
passdb backend = smbpasswd guest
Ähnliches Problem:
Probing module 'smbpasswd guest': Trying to load from /usr/lib/samba/pdb/smbpasswd guest.so [2007/04/26 10:26:36, 3] lib/module.c:do_smb_load_module(49) Error loading module '/usr/lib/samba/pdb/smbpasswd guest.so': /usr/lib/samba/pdb/smbpasswd guest.so: cannot open shared object file: No such file or directory [2007/04/26 10:26:36, 0] passdb/pdb_interface.c:make_pdb_method_name(174) No builtin nor plugin backend for smbpasswd guest found [2007/04/26 10:26:36, 0] lib/util.c:smb_panic(1599) PANIC (pid 31029): pdb_get_methods_reload: failed to get pdb methods for backend smbpasswd guest
Lösung: passdb backend = smbpasswd guest ändern in passdb backend = smbpasswd
OffeneFrage: Kann jemand was zu den diversen Modulen sagen? recycle.so is ja noch recht leicht zu verstehen, aber die anderen....?
OffeneFrage: Kann man Statistiken zur Samba-Nutzung erzeugen? Gibt es dafür spezielle Tools? -- ThiloPfennig 2006-01-08 12:26:37