# Samba einrichten ## In a nutshell ``` bash # Installation auf Server sudo apt install samba # Installation auf Linux-Client sudo apt-get install smbfs smbclient # Auf Host: Nutzer der Gruppe sambashare hinzufügen sudo usermod -aG sambashare BENUTZERNAME # Auf Host: Samba(!)-Passwort für Nutzer vergeben sudo smbpasswd -a BENUTZERNAME (PASSWORT) # In /etc/samba/smb.conf samba-Freigabe konfigurieren [Name der Freigabe] Pfad zum Ordner Parameter: schreibbar? Parameter: Gast ok? # Client Linux: smb-Freigabe-Ordner einhängen sudo mount -t cifs //Host-IP/BENUTZERNAME/media/ -o username=BENUTZERNAME # Client Windows net use Z: \\Host-IP\Foto /user:admini ``` ## Installation **Server** ``` sudo apt install samba ``` **Client (Linux)** ``` sudo apt-get install smbfs smbclient ``` ## Nutzerverwaltung **Nutzer der Gruppe sambashare hinzufügen** Der Nutzer muss der Linux-Gruppe `sambashare` hinzugefügt werden. ``` sudo usermod -aG sambashare BENUTZERNAME ``` **Benutzerkonten zur Samba-Datenbank hinzufügen** - bestehende User-Accounts zunächst aktivieren - Einige Linux-Distributionen synchronisieren die auf dem Linuxsystem vorhandenen User - Andernfalls: Benutzerkonten manuell verwalten, damit die betreffenden Nutzer die entsprechenden Netzwerkdienste in Anspruch nehmen können. Die Benutzerkonten-Verwaltung wird über den Befehl `smbpasswd` mit den vier Parametern `-a, -x, -d und -e` gesteuert. Die jeweiligen Befehlszeilen sehen wie folgt aus: ``` sudo smbpasswd -a BENUTZERNAME (PASSWORT) sudo smbpasswd -x BENUTZERNAME (Benutzer entfernen) sudo smbpasswd -d BENUTZERNAME (Benutzer disablen) sudo smbpasswd -e BENUTZERNAME (Benutzer enablen) ``` ## Freigaben Einrichten Freigaben werden in der Samba-Konfigurationsdatei `smb.conf` auf dem Server gespeichert ``` sudo nano /etc/samba/smb.conf ``` Folgende Notation wird angewendet: ``` [Name der Freigabe] Pfad zum Ordner Parameter: schreibbar? Parameter: Gast ok? ``` [Beispiel]{.underline} [Foto] path= /dokument/foto writeable = yes guest ok = no Anschließend Änderungen übernehmen mit `service` ``` sudo service smbd reload ``` oder mit `systemctl` ``` sudo systemctl reload smbd ``` ## Anmeldung am Client **Linux** Für einen Verbindungstest ``` smbclient -U BENUTZERNAME-L 192.168.56.101 ``` **smb-Freigabe-Ordner einhängen** ``` sudo mount -t cifs //Host-IP/BENUTZERNAME/media/ -o username=BENUTZERNAME ``` **Windows PowerShell** Um die Freigabe unter Windows nutzen zu können, muss diese auch dort eingerichtet werden. ``` net use \\Host-IP\Freigabename /user:USERNAME ``` [Beispiel]{.underline} ``` net use \\Host-IP\Foto /user:admini ``` Bei Bedarf kann auch gleich ein -noch nicht vergebener- Laufwerks-Buchstabe vergeben werden: ``` net use Z: \\Host-IP\Foto /user:admini ``` ## Links smbclient auf ubuntuusers.de Thomas-Krenn.com