SMB-Befehle umfassen die Werkzeuge, mit denen Linux-Rechner SMB-Freigaben nutzen und ein Samba-Server verwaltet wird. SMB ist das Windows-Dateifreigabe-Protokoll; die Linux-Seite stellt hauptsächlich smbclient, den CIFS-Mount und smbstatus bereit. Der alte Name CIFS steckt noch im Mount-Befehl.
Client: Freigaben auflisten und nutzen
smbclient arbeitet wie ein FTP-Client und kann auch Freigaben auflisten:
smbclient -L //server -U benutzer # alle Freigaben des Servers zeigen
smbclient //server/freigabe -U benutzer # interaktive Sitzung
smbclient //server/freigabe -U benutzer -c "get datei.txt; put backup.zip"
smbclient -m SMB3 //server/freigabe -U benutzer # Protokollversion erzwingen
Client: Freigabe einhängen
Für den Mount als Verzeichnis dient mount -t cifs (Paket cifs-utils):
sudo mount -t cifs //server/freigabe /mnt/smb -o username=benutzer,vers=3.0
# Passwort getrennt halten, z.B. credentials=/etc/smbcreds (chmod 600)
# Dauerhaft in /etc/fstab:
# //server/freigabe /mnt/smb cifs credentials=/etc/smbcreds,vers=3.0,uid=1000 0 0
Da SMB1 als unsicher gilt, wird beim Mounten mit vers=3.0 oder höher verhandelt; moderne Samba-Server beherrschen SMB3.1.1.
Server: Samba verwalten
Auf der Server-Seite helfen diese Befehle:
sudo smbstatus # verbundene Clients und offene Dateien
sudo smbpasswd -a benutzer # SMB-Passwort für einen Benutzer setzen
testparm # smb.conf auf Syntaxfehler prüfen
nmblookup server # NetBIOS-Namensauflösung testen
Reine Linux-Umgebungen setzen für Dateifreigaben oft auf NFS (NFS-Befehle); Block-Speicher über Glasfaser verwaltet man mit FC-Befehlen.