# Datenaustausch
## Persönliche Samba-Freigaben ermöglichen
Samba-Server im Terminal installieren:
```
sudo apt install samba
```
Für persönliche Freigaben muss ein Benutzer zur Gruppe „sambashare“ gehören. Lassen Sie sich mit
```
groups
```
anzeigen, ob das aktuelle Benutzerkonto bereits dazugehört. Andernfalls führen Sie
```
sudo usermod -aG sambashare [User]
```
aus. Da Samba eine eigene Passwortverwaltung besitzt, muss man außerdem ein Passwort mit
```
sudo smbpasswd -a [User]
```
vergeben. Den Platzhalter „[User]“ ersetzen Sie jeweils durch die Bezeichnung des Benutzerkontos. Nutzer von Ubuntu 24.04 installieren außerdem
```
sudo apt install nautilus-share
```
Die Erweiterung ist nötig, damit der Dateimanager Nautilus „Freigabeoption“ im Kontextmenü anzeigt. Nach diesen Änderungen starten Sie Linux neu.
Erlauben Sie Gästen und anderen Benutzern mit
```
chmod 751 /home/[User]
```
den Zugriff auf das Home-Verzeichnis. Linux Mint weist auf das Problem der fehlenden Berechtigungen im Freigabedialog hin, Ubuntu nicht.
## Globale Samba-Freigaben konfigurieren
Eine neue Freigabe lässt sich beispielsweise über diese drei Zeilen erstellen, die Sie am Ende der Datei „smb.conf“ einfügen:
```
[data1]
path = /data1
writeable = no
```
Damit wird das Verzeichnis „/data1“ unter der Bezeichnung „data1“ freigegeben.
Wenn Sie auch Benutzern ohne Konto den Zugriff auf die Freigabe erlauben wollen, ergänzen Sie die Freigabedefinition um folgende Zeile:
```
guest ok = yes
```
Samba berücksichtigt Konfigurationsänderungen nach einiger Zeit automatisch, was sie über einen Neustart des Dienstes mit
```
sudo systemctl restart smbd
```
beschleunigen können.
**Schreibrechte aktivieren:**
```
sudo chown -R root:sambashare /data1
sudo find /data1 -type d -exec chmod 775 {} +
sudo find /data1 -type f -exec chmod 664 {} +
```
## Apache-Freigaben ohne und mit Schreibzugriff
```
sudo apt install apache2
```
```
sudo mkdir /var/www/html/data
mount --bind /data1 /var/www/html/data
```
```
/data1 /var/www/html/data none bind 0 0
```
```
http://[MeinServer]/data
```
**Freigaben mit Schreibzugriff:**
```
sudo a2enmod dav
sudo a2enmod dav_fs
```
```
sudo mkdir /var/www/webdav
```
```
mount --bind /data1 /var/www/webdav
```
```
sudo chown -R www-data:www-data /var/www/webdav
```
Bauen Sie oberhalb von „“ die folgenden vier Zeilen ein:
```
Alias /webdav /var/www/webdav
DAV On
```
Starten Sie den Webserver mit
```
sudo systemctl restart apache2
```
neu
Den Schreibzugriff können Sie einfach mit
```
sudo chown -R root:root /var/www/webdav
```
unterbinden.
## SFTP für den Datenaustausch nutzen
```
sudo apt install openssh-server
```
```
ssh [User]@[Server-IP]
```
```
http://[Name oder IP]/[Webdav-Ordner]
```
## Datenaustausch mit Android-Geräten
**KDE Connect:**
```
sudo apt install gnome-shell-extension-gsconnect gnome-shell-extension-prefs
sudo apt install kdeconnect --no-install-recommends
```
## Freigabedienste im Netzwerk bekannt machen
Für weitere Serverdienste erstellen Sie Konfigurationsdateien im Ordner „/etc/avahi/services“.
Für SFTP beispielsweise die Datei „sftp.service“ mit diesem Inhalt (neun Zeilen):
```
%h (SFTP)
_sftp-ssh._tcp
22
```
**Webdav**
Datei webdav.service
```
%h (WebDav)
_webdav._tcp
80
path=/webdav
u=''
p=''
```
**Webdavs (https)**
Datei webdavs.service
```
%h (WebDav)
_webdavs._tcp
443
path=/webdav
u=''
p=''
```
Hinter "u=" tragen Sie den Benutzernamen ein und hinter "p=" das Passwort, wenn Sie die Atuthentifizierung in Apache konfiguriert haben.
**WS-Discovery-Service: *
```
sudo apt install wsdd2
```