Benutzer-Werkzeuge

Webseiten-Werkzeuge


ubuntu:samba

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ubuntu:samba [2026/05/25 16:29] – angelegt franzubuntu:samba [2026/05/25 17:12] (aktuell) – [Empfehlung für deine DokuWiki-Seite] franz
Zeile 1: Zeile 1:
-====== Samba Server unter Ubuntu 22.04 einrichten ======+====== Samba Server unter Ubuntu Server 22.04 und 24.04 einrichten ======
  
 Diese Anleitung beschreibt die Installation und Einrichtung eines Samba-Servers unter Ubuntu 22.04. Diese Anleitung beschreibt die Installation und Einrichtung eines Samba-Servers unter Ubuntu 22.04.
  
 Samba ermöglicht die Freigabe von Verzeichnissen im Netzwerk, sodass Linux- und Windows-Clients darauf zugreifen können. Samba ermöglicht die Freigabe von Verzeichnissen im Netzwerk, sodass Linux- und Windows-Clients darauf zugreifen können.
 +
  
 ===== 1. Samba installieren ===== ===== 1. Samba installieren =====
Zeile 9: Zeile 10:
 Auf dem Server: Auf dem Server:
  
-<code bash>\\ +<code bash> sudo apt update sudo apt install samba samba-common-bin smbclient cifs-utils 
-sudo apt update\\ +
-sudo apt install samba samba-common-bin smbclient cifs-utils\\ +
 </code> </code>
  
 Dienst prüfen: Dienst prüfen:
  
-<code bash>\\ +<code bash> systemctl status smbd 
-systemctl status smbd\\ +
 </code> </code>
  
 Falls der Dienst nicht aktiv ist: Falls der Dienst nicht aktiv ist:
  
-<code bash>\\ +<code bash> sudo systemctl enable smbd sudo systemctl start smbd 
-sudo systemctl enable smbd\\ +
-sudo systemctl start smbd\\ +
 </code> </code>
  
Zeile 34: Zeile 27:
 Beispiel Server 1: Beispiel Server 1:
  
-<code bash>\\ +<code bash> sudo mkdir -p /media/daten/samba/sambashare 
-sudo mkdir -p /media/daten/samba/sambashare\\ +
 </code> </code>
  
 Beispiel Server 2: Beispiel Server 2:
  
-<code bash>\\ +<code bash> sudo mkdir -p /home/samba/publicshare 
-sudo mkdir -p /home/samba/publicshare\\ +
 </code> </code>
  
Zeile 52: Zeile 41:
 Server 1: Server 1:
  
-<code bash>\\ +<code bash> sudo chown -R someuser:someuser /media/daten/samba/sambashare sudo chmod -R 770 /media/daten/samba/sambashare 
-sudo chown -R someuser:someuser /media/daten/samba/sambashare\\ +
-sudo chmod -R 770 /media/daten/samba/sambashare\\ +
 </code> </code>
  
 Server 2: Server 2:
  
-<code bash>\\ +<code bash> sudo chown -R someuser:someuser /home/samba/publicshare sudo chmod -R 770 /home/samba/publicshare 
-sudo chown -R someuser:someuser /home/samba/publicshare\\ +
-sudo chmod -R 770 /home/samba/publicshare\\ +
 </code> </code>
  
 Die Rechte der übergeordneten Verzeichnisse können mit folgendem Befehl geprüft werden: Die Rechte der übergeordneten Verzeichnisse können mit folgendem Befehl geprüft werden:
  
-<code bash>\\ +<code bash> namei -l /home/samba/publicshare 
-namei -l /home/samba/publicshare\\ +
 </code> </code>
  
Zeile 81: Zeile 62:
 Falls der Benutzer noch nicht existiert: Falls der Benutzer noch nicht existiert:
  
-<code bash>\\ +<code bash> sudo adduser someuser 
-sudo adduser someuser\\ +
 </code> </code>
  
 Samba-Passwort setzen: Samba-Passwort setzen:
  
-<code bash>\\ +<code bash> sudo smbpasswd -a someuser 
-sudo smbpasswd -a someuser\\ +
 </code> </code>
  
 Samba-Benutzer aktivieren: Samba-Benutzer aktivieren:
  
-<code bash>\\ +<code bash> sudo smbpasswd -e someuser 
-sudo smbpasswd -e someuser\\ +
 </code> </code>
  
 Samba-Benutzer anzeigen: Samba-Benutzer anzeigen:
  
-<code bash>\\ +<code bash> sudo pdbedit -L 
-sudo pdbedit -L\\ +
 </code> </code>
  
Zeile 111: Zeile 84:
 Die Samba-Konfiguration bearbeiten: Die Samba-Konfiguration bearbeiten:
  
-<code bash>\\ +<code bash> sudo nano /etc/samba/smb.conf 
-sudo nano /etc/samba/smb.conf\\ +
 </code> </code>
  
Zeile 120: Zeile 91:
 Beispiel für Server 1: Beispiel für Server 1:
  
-<code ini>\\ +<code ini> [sharing] path = /media/daten/samba/sambashare comment = Samba share directory browseable = yes read only = no guest ok = no valid users = someuser create mask = 0660 directory mask = 0770 
-[sharing]\\ +
- path = /media/daten/samba/sambashare\\ +
- comment = Samba share directory\\ +
- browseable = yes\\ +
- read only = no\\ +
- guest ok = no\\ +
- valid users = someuser\\ +
- create mask = 0660\\ +
- directory mask = 0770\\ +
 </code> </code>
  
 Beispiel für Server 2: Beispiel für Server 2:
  
-<code ini>\\ +<code ini> [sharing] path = /home/samba/publicshare comment = Samba share directory browseable = yes read only = no guest ok = no valid users = someuser create mask = 0660 directory mask = 0770 
-[sharing]\\ +
- path = /home/samba/publicshare\\ +
- comment = Samba share directory\\ +
- browseable = yes\\ +
- read only = no\\ +
- guest ok = no\\ +
- valid users = someuser\\ +
- create mask = 0660\\ +
- directory mask = 0770\\ +
 </code> </code>
  
Zeile 154: Zeile 105:
 In diesem Beispiel lautet der Freigabename: In diesem Beispiel lautet der Freigabename:
  
-<code>\\ +<code> sharing 
-sharing\\ +
 </code> </code>
  
Zeile 163: Zeile 112:
 Richtig: Richtig:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
 Falsch: Falsch:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/home/samba/publicshare -U someuser 
-smbclient //SERVER-IP/home/samba/publicshare -U someuser\\ +
 </code> </code>
  
Zeile 179: Zeile 124:
 Nach jeder Änderung an der Datei smb.conf sollte die Konfiguration geprüft werden: Nach jeder Änderung an der Datei smb.conf sollte die Konfiguration geprüft werden:
  
-<code bash>\\ +<code bash> testparm 
-testparm\\ +
 </code> </code>
  
 Oder kurz zusammengefasst: Oder kurz zusammengefasst:
  
-<code bash>\\ +<code bash> testparm -s 
-testparm -s\\ +
 </code> </code>
  
Zeile 197: Zeile 138:
 Nach erfolgreicher Prüfung Samba neu starten: Nach erfolgreicher Prüfung Samba neu starten:
  
-<code bash>\\ +<code bash> sudo systemctl restart smbd 
-sudo systemctl restart smbd\\ +
 </code> </code>
  
 Status prüfen: Status prüfen:
  
-<code bash>\\ +<code bash> systemctl status smbd 
-systemctl status smbd\\ +
 </code> </code>
  
Zeile 213: Zeile 150:
 Auf dem Samba-Server selbst: Auf dem Samba-Server selbst:
  
-<code bash>\\ +<code bash> smbclient -L //localhost -U someuser -m SMB3 
-smbclient -L //localhost -U someuser -m SMB3\\ +
 </code> </code>
  
 Beispielausgabe: Beispielausgabe:
  
-<code>\\ +<code> Sharename Type Comment --------- ---- ------- print$ Disk Printer Drivers sharing Disk Samba share directory IPC$ IPC IPC Service SMB1 disabled -- no workgroup available 
-Sharename       Type      Comment\\ +
----------       ----      -------\\ +
-print$          Disk      Printer Drivers\\ +
-sharing         Disk      Samba share directory\\ +
-IPC$            IPC       IPC Service\\ +
-SMB1 disabled -- no workgroup available\\ +
 </code> </code>
  
 Die Meldung Die Meldung
  
-<code>\\ +<code> SMB1 disabled -- no workgroup available 
-SMB1 disabled -- no workgroup available\\ +
 </code> </code>
  
Zeile 241: Zeile 167:
 Direkt mit der Freigabe verbinden: Direkt mit der Freigabe verbinden:
  
-<code bash>\\ +<code bash> smbclient //localhost/sharing -U someuser -m SMB3 
-smbclient //localhost/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
Zeile 250: Zeile 174:
 Befehle innerhalb der Samba-Konsole: Befehle innerhalb der Samba-Konsole:
  
-<code>\\ +<code> ls put test.txt get test.txt exit 
-ls\\ +
-put test.txt\\ +
-get test.txt\\ +
-exit\\ +
 </code> </code>
  
Zeile 262: Zeile 181:
 Zuerst die IP-Adresse des Samba-Servers ermitteln: Zuerst die IP-Adresse des Samba-Servers ermitteln:
  
-<code bash>\\ +<code bash> hostname -I 
-hostname -I\\ +
 </code> </code>
  
 Vom Client aus die Freigaben anzeigen: Vom Client aus die Freigaben anzeigen:
  
-<code bash>\\ +<code bash> smbclient -L //SERVER-IP -U someuser -m SMB3 
-smbclient -L //SERVER-IP -U someuser -m SMB3\\ +
 </code> </code>
  
 Direkt verbinden: Direkt verbinden:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
 Beispiel: Beispiel:
  
-<code bash>\\ +<code bash> smbclient //192.168.1.42/sharing -U someuser -m SMB3 
-smbclient //192.168.1.42/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
Zeile 292: Zeile 203:
 Falls UFW aktiv ist: Falls UFW aktiv ist:
  
-<code bash>\\ +<code bash> sudo ufw allow samba 
-sudo ufw allow samba\\ +
 </code> </code>
  
 Oder eingeschränkt auf das lokale Netz, zum Beispiel 192.168.1.0/24: Oder eingeschränkt auf das lokale Netz, zum Beispiel 192.168.1.0/24:
  
-<code bash>\\ +<code bash> sudo ufw allow from 192.168.1.0/24 to any app Samba 
-sudo ufw allow from 192.168.1.0/24 to any app Samba\\ +
 </code> </code>
  
 Status prüfen: Status prüfen:
  
-<code bash>\\ +<code bash> sudo ufw status 
-sudo ufw status\\ +
 </code> </code>
  
Zeile 325: Zeile 230:
 Freigabe direkt über IP-Adresse oder Hostname aufrufen: Freigabe direkt über IP-Adresse oder Hostname aufrufen:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
Zeile 336: Zeile 239:
 Beispiel: Beispiel:
  
-<code>\\ +<code> tree connect failed: NT_STATUS_BAD_NETWORK_NAME 
-tree connect failed: NT_STATUS_BAD_NETWORK_NAME\\ +
 </code> </code>
  
Zeile 349: Zeile 250:
 Wenn die Freigabe in smb.conf so heißt: Wenn die Freigabe in smb.conf so heißt:
  
-<code ini>\\ +<code ini> [sharing] path = /home/samba/publicshare 
-[sharing]\\ +
- path = /home/samba/publicshare\\ +
 </code> </code>
  
 dann muss der Zugriff so erfolgen: dann muss der Zugriff so erfolgen:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
 Nicht so: Nicht so:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/publicshare -U someuser -m SMB3 
-smbclient //SERVER-IP/publicshare -U someuser -m SMB3\\ +
 </code> </code>
  
Zeile 379: Zeile 273:
 Falsch: Falsch:
  
-<code bash>\\ +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
 Richtig mit echter IP-Adresse: Richtig mit echter IP-Adresse:
  
-<code bash>\\ +<code bash> smbclient //192.168.1.42/sharing -U someuser -m SMB3 
-smbclient //192.168.1.42/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
 Oder lokal auf dem Server: Oder lokal auf dem Server:
  
-<code bash>\\ +<code bash> smbclient //localhost/sharing -U someuser -m SMB3 
-smbclient //localhost/sharing -U someuser -m SMB3\\ +
 </code> </code>
  
Zeile 402: Zeile 290:
 Samba-Dienst prüfen: Samba-Dienst prüfen:
  
-<code bash>\\ +<code bash> systemctl status smbd 
-systemctl status smbd\\ +
 </code> </code>
  
 Samba-Konfiguration prüfen: Samba-Konfiguration prüfen:
  
-<code bash>\\ +<code bash> testparm 
-testparm\\ +
 </code> </code>
  
 Aktive Freigaben anzeigen: Aktive Freigaben anzeigen:
  
-<code bash>\\ +<code bash> smbclient -L //localhost -U someuser -m SMB3 
-smbclient -L //localhost -U someuser -m SMB3\\ +
 </code> </code>
  
 Samba-Benutzer anzeigen: Samba-Benutzer anzeigen:
  
-<code bash>\\ +<code bash> sudo pdbedit -L 
-sudo pdbedit -L\\ +
 </code> </code>
  
 Logdatei prüfen: Logdatei prüfen:
  
-<code bash>\\ +<code bash> sudo tail -n 100 /var/log/samba/log.smbd 
-sudo tail -n 100 /var/log/samba/log.smbd\\ +
 </code> </code>
  
 Systemd-Log prüfen: Systemd-Log prüfen:
  
-<code bash>\\ +<code bash> sudo journalctl -u smbd -n 100 --no-pager 
-sudo journalctl -u smbd -n 100 --no-pager\\ +
 </code> </code>
  
 Verzeichnisrechte prüfen: Verzeichnisrechte prüfen:
  
-<code bash>\\ +<code bash> namei -l /home/samba/publicshare 
-namei -l /home/samba/publicshare\\ +
 </code> </code>
  
Zeile 453: Zeile 327:
 Für die Samba-Freigabe sind drei Punkte entscheidend: Für die Samba-Freigabe sind drei Punkte entscheidend:
  
-* Das Linux-Verzeichnis muss existieren.\\ +  * Das Linux-Verzeichnis muss existieren. 
-* Der Samba-Benutzer muss eingerichtet sein.\\ +  * Der Samba-Benutzer muss eingerichtet sein. 
-* Der Zugriff erfolgt über den Freigabenamen aus smb.conf, nicht über den Linux-Pfad.+  * Der Zugriff erfolgt über den Freigabenamen aus smb.conf, nicht über den Linux-Pfad.
  
 Beispiel: Beispiel:
  
-<code ini>\\ +<code ini> 
-[sharing]\\ + [sharing] path = /home/samba/publicshare 
- path = /home/samba/publicshare\\+
  
 </code> </code>
Zeile 467: Zeile 341:
 Zugriff: Zugriff:
  
-<code bash>\\ +<code bash> 
-smbclient //SERVER-IP/sharing -U someuser -m SMB3\\+ smbclient //SERVER-IP/sharing -U someuser -m SMB3 
  
 </code> </code>
 +
 +===== Hinweis zu Ubuntu 24.04 =====
 +
 +Die Einrichtung eines Samba-Servers funktioniert unter Ubuntu Server 24.04 grundsätzlich gleich wie unter Ubuntu Server 22.04.
 +
 +Die wichtigsten Befehle bleiben gleich:
 +
 +<code bash> sudo apt update sudo apt install samba samba-common-bin smbclient cifs-utils sudo systemctl restart smbd testparm 
 +</code>
 +
 +Ubuntu 24.04 verwendet eine neuere Samba-Version als Ubuntu 22.04. Für einfache Freigaben mit Benutzeranmeldung ändert sich dadurch normalerweise nichts an der Konfiguration.
 +
 +Die Meldung
 +
 +<code> SMB1 disabled -- no workgroup available 
 +</code>
 +
 +ist auch unter Ubuntu 24.04 kein Fehler. SMB1 sollte nicht aktiviert werden. Stattdessen wird die Freigabe direkt über IP-Adresse oder Hostname aufgerufen.
 +
 +Beispiel:
 +
 +<code bash> smbclient //SERVER-IP/sharing -U someuser -m SMB3 
 +</code>
 +
 +===== Fazit =====
 +
 +Deine bestehende Anleitung passt auch für **Ubuntu Server 24.04**. Ich würde nur den Titel auf **Ubuntu 22.04 und 24.04**  ändern und den Hinweis zur neueren Samba-Version ergänzen.
  
  
ubuntu/samba.1779719396.txt.gz · Zuletzt geändert: von franz

Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki