Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung | |||
|
lpi2:samba [2019/02/25 09:42] |
lpi2:samba [2024/04/26 11:01] (aktuell) |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | Vorraussetzung: [[Netzwerk]] | ||
| + | ====== Einfacher Dateiserver ====== | ||
| + | ===== Benötigte Pakete ===== | ||
| + | Debian, Ubuntu: | ||
| + | apt install samba smbclient samba-common-bin | ||
| + | ((neuere Versionen manchmal in [[https://packages.debian.org/jessie/samba|Backports]])) | ||
| + | |||
| + | SuSE: | ||
| + | zypper install samba samba-client | ||
| + | (( man kann die Pakete unter SuSE auch mit | ||
| + | yast -i samba samba-client | ||
| + | installieren )) | ||
| + | |||
| + | Fedora / Centos : | ||
| + | yum install samba samba-client | ||
| + | |||
| + | ===== Minimal-Konfiguration ===== | ||
| + | <file txt /etc/samba/smb.conf> | ||
| + | [global] | ||
| + | … | ||
| + | workgroup = kurs | ||
| + | … | ||
| + | [freigabe] | ||
| + | path = /tmp | ||
| + | writable = yes | ||
| + | … | ||
| + | </file> | ||
| + | |||
| + | Überprüfen: (( Debian 6.0, openSuSE 11.4, CentOS 6: Fehlermeldung ''rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)'' kann man ignorieren, siehe http://bugs.debian.org/608624 )) | ||
| + | |||
| + | ((Den Fehler | ||
| + | ''ERROR: pid directory /var/run/samba does not exist'' | ||
| + | kann man auch ignorieren. Das fehlende Verzeichnis wird beim ersten Start von Samba angelegt. | ||
| + | )) | ||
| + | testparm | ||
| + | |||
| + | (( Mit Anzeige der default settings | ||
| + | testparm -v | ||
| + | )) | ||
| + | ===== Samba starten ===== | ||
| + | |||
| + | SuSE (ab 14), Centos (ab 7): | ||
| + | systemctl enable --now smb.service | ||
| + | systemctl enable --now nmb.service | ||
| + | |||
| + | Ubuntu (ab 14.04), Debian (ab 8): | ||
| + | service smbd restart | ||
| + | service nmbd restart | ||
| + | ===== Benutzer anlegen ===== | ||
| + | Erst Unix-Nutzer: | ||
| + | useradd -m iw | ||
| + | |||
| + | Dann Windows-Attribute hinzufügen: | ||
| + | smbpasswd -a iw | ||
| + | oder | ||
| + | pdbedit -a -u iw | ||
| + | |||
| + | ===== Testen ===== | ||
| + | smbclient -N -L localhost | ||
| + | smbclient //notebook17/freigabe -U iw | ||
| + | |||
| + | ==== Samba Freigabe mounten ==== | ||
| + | Pakete: | ||
| + | ''cifs-utils'' ( Debian (ab 6.0), CentOS (ab 7) ) | ||
| + | |||
| + | mkdir /mnt/freigabe | ||
| + | mount -t cifs -o username=xxx,uid=localuser,gid=localgroup //notebook17/freigabe /mnt/freigabe | ||
| + | |||
| + | (( Warum sehen die Berechtigungen in der Freigabe anders als im lokalen Verzeichnis aus? https://fosdem.org/2019/schedule/event/smb2_posix_extensions/ )) | ||
| + | |||
| + | |||
| + | ====== Checkliste ====== | ||
| + | ===== Syntax-Check für smb.conf ===== | ||
| + | testparm | ||
| + | |||
| + | Ausgabe von testparm: | ||
| + | <file> | ||
| + | Loaded services file OK. | ||
| + | Server role: ROLE_STANDALONE | ||
| + | </file> | ||
| + | |||
| + | ===== Netzwerk checken ===== | ||
| + | [[netzwerk]] | ||
| + | |||
| + | ===== Laufen die Samba Dienste? ===== | ||
| + | netstat -tulpn | grep nmbd | ||
| + | netstat -tulpn | grep smbd | ||
| + | oder | ||
| + | lsof -ai -c smbd -P | ||
| + | lsof -ai -c nmbd -P | ||
| + | ===== Windows Browsing ===== | ||
| + | nmblookup -M kurs | ||
| + | |||
| + | ===== Existiert ein passender Unix-Account? ===== | ||
| + | getent passwd benutzername | ||
| + | |||
| + | ===== Existiert ein passender Samba-Account? ===== | ||
| + | pdbedit -L -v benutzername | ||
| + | |||
| + | Ausgabe von pdbedit: | ||
| + | <file> | ||
| + | Unix username: benutzername | ||
| + | .. | ||
| + | Account Flags: [U ] | ||
| + | </file> | ||
| + | |||
| + | ===== Funktioniert der Samba-Account? ===== | ||
| + | smbclient -L localhost -U benutzername | ||
| + | |||
| + | Hier sollten die Freigaben des Servers angezeigt werden. | ||
| + | |||
| + | ===== Funktioniert der Zugriff auf die Freigabe? ===== | ||
| + | smbclient //rechnername/freigabe -U benutzername | ||
| + | |||
| + | ===== Steht etwas in den Logdateien? ===== | ||
| + | Anzahl der Logmeldungen erhöhen: | ||
| + | smbcontrol smbd debug 2 | ||
| + | smbcontrol nmbd debug 2 | ||
| + | | ||
| + | Logmeldungen besser finden: | ||
| + | |||
| + | <file txt /etc/samba/smb.conf> | ||
| + | [global] | ||
| + | log file = /var/log/samba/log.%m | ||
| + | </file> | ||
| + | |||
| + | Logmeldungen für eine Verbindung: | ||
| + | smbstatus | ||
| + | -> PID der Verbindung raussuchen | ||
| + | smbcontrol $PID debug 3 | ||
| + | |||
| + | ===== Auf Netzwerkebene lauschen ===== | ||
| + | wireshark | ||
| + | |||
| + | z.B. Broadcast vom Typ Browser. Server Type checken ( "Microsoft Windows Browser Protocol" -> "Server Type" ) | ||
| + | |||
| + | |||
| + | ====== Dokumentation ====== | ||
| + | http://de3.samba.org/samba/docs/man/Samba-HOWTO-Collection/ | ||
| + | |||
| + | ====== Todo ====== | ||
| + | * Wie kann ich Benutzer einfach umbenennen? | ||