Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi1:samba

Vorraussetzung: Netzwerk

Einfacher Dateiserver

Benötigte Pakete

Debian, Ubuntu:

apt install samba smbclient samba-common-bin

1)

SuSE:

zypper install samba samba-client

2)

Fedora / Centos :

yum install samba samba-client

Minimal-Konfiguration

/etc/samba/smb.conf
[global]
…
  workgroup = kurs
…
[freigabe]
  path = /tmp
  writable = yes
…

Überprüfen: 3)

4)

testparm

5)

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

6)

Checkliste

Syntax-Check für smb.conf

testparm

Ausgabe von testparm:

Loaded services file OK.
Server role: ROLE_STANDALONE

Netzwerk checken

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:

Unix username:        benutzername
..
Account Flags:        [U          ]

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:

/etc/samba/smb.conf
[global]
  log file = /var/log/samba/log.%m

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

Todo

  • Wie kann ich Benutzer einfach umbenennen?
1)
neuere Versionen manchmal in Backports
2)
man kann die Pakete unter SuSE auch mit
yast -i samba samba-client
installieren
3)
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
4)
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.
5)
Mit Anzeige der default settings
testparm -v
6)
Warum sehen die Berechtigungen in der Freigabe anders als im lokalen Verzeichnis aus? https://fosdem.org/2019/schedule/event/smb2_posix_extensions/
lpi1/samba.txt · Zuletzt geändert: 2024/04/26 11:01 (Externe Bearbeitung)