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:31] 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 40: 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 62: 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 97: 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 135: 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 146: 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 184: Zeile 105:
 In diesem Beispiel lautet der Freigabename: In diesem Beispiel lautet der Freigabename:
  
-<code> +<code> sharing 
-+
-sharing+
 </code> </code>
  
Zeile 194: 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 214: 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 236: 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 256: 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 288: 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 299: 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 312: 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 350: 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>
  
 ===== 11. Häufige Fehler ===== ===== 11. Häufige Fehler =====
  
-==== Fehler: SMB1 disabled – no workgroup available ====+==== Fehler: SMB1 disabled -- no workgroup available ====
  
 Diese Meldung ist normalerweise unkritisch. Diese Meldung ist normalerweise unkritisch.
Zeile 389: 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 402: 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 416: 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 452: 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 481: 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 546: 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] path = /home/samba/publicshare
-[sharing]+
- path = /home/samba/publicshare\+
  
  
Zeile 563: Zeile 342:
  
 <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.1779719475.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