From 86cfe8af58edd96b786d8a1db86c9be222137660 Mon Sep 17 00:00:00 2001 From: ghost Date: Sat, 12 Jul 2025 15:40:33 +0200 Subject: [PATCH] Added systemd-mount-units article. --- README.md | 0 linux/img/mounts-in-dolphin2.png | Bin 0 -> 14816 bytes linux/systemd-mount-units.md | 263 +++++++++++++++++++++++++++++++ 3 files changed, 263 insertions(+) create mode 100644 README.md create mode 100644 linux/img/mounts-in-dolphin2.png create mode 100644 linux/systemd-mount-units.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/linux/img/mounts-in-dolphin2.png b/linux/img/mounts-in-dolphin2.png new file mode 100644 index 0000000000000000000000000000000000000000..0ddb7e2d0c6e34e5b98a3202b1f7ef178edd8783 GIT binary patch literal 14816 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 /etc/smb-credentials < Ersetze `user` und `pw` durch die tatsächlichen Zugangsdaten. + +Sichere die Datei mit den richtigen Berechtigungen: + +```bash +sudo chmod 600 /etc/smb-credentials +sudo chown root:root /etc/smb-credentials +``` + +Diese Datei enthält sensible Informationen. Es sollte sichergestellt werden, dass nur `root` darauf Zugriff hat. + +### Schritt 2: Mountpunkte anlegen + +Erstelle die benötigten Verzeichnisse für die Netzwerkfreigaben: + +```bash +sudo mkdir -p /var/mnt/Dokumente # weitere Mounts ergänzen +``` + + +### Schritt 3: systemd Mount- und Automount-Units erstellen + +Für jede Freigabe werden zwei Dateien benötigt: +- eine .mount-Unit +- eine .automount-Unit + +Die Namen können dabei frei gewählt werden. Sie müssen lediglich pro Unit übereinstimmen und die korrekte oben genannte Dateiendung haben. + +#### Beispiel: CIFS-Freigabe für `/var/mnt/Dokumente`: + +#### Mount-Unit: `/etc/systemd/system/var-mnt-Dokumente.mount` + +```bash +sudo nano /etc/systemd/system/var-mnt-Dokumente.mount +``` + +```ini +[Unit] +Description=CIFS Mount für Dokumente +After=network-online.target +Wants=network-online.target + +[Mount] +What=//10.0.0.3/Dokumente +Where=/var/mnt/Dokumente +Type=cifs +Options=credentials=/etc/smb-credentials,file_mode=0777,dir_mode=0777,nofail,_netdev,iocharset=utf8,vers=3.0 + +[Install] +WantedBy=multi-user.target +``` + +#### Automount-Unit: `/etc/systemd/system/var-mnt-Dokumente.automount` + +```bash +sudo nano /etc/systemd/system/var-mnt-Dokumente.automount +``` + +```ini +[Unit] +Description=Automount für CIFS Dokumente + +[Automount] +Where=/var/mnt/Dokumente +TimeoutSec=30 + +[Install] +WantedBy=multi-user.target +``` + + +### Schritt 4: Aktivieren und Starten + +Nach dem Erstellen wird die Automount-Unit aktiviert (die Mount-Unit wird dann automatisch eingebunden): + +```bash +sudo systemctl daemon-reload +sudo systemctl enable --now var-mnt-Dokumente.automount +``` + +Optional den Status prüfen: + +```bash +systemctl status var-mnt-Dokumente.automount +``` + + +## Automount-Triggering + +Systemd automounts werden erst getriggert, wenn auf den Mountpoint zugegriffen wird. Damit die CIFS-Freigaben in Dolphin unter "Fremdgeräte" erscheinen, müssen sie einmalig ausgelöst werden. + +Hierzu kann ein Script erstellt werden, welches nach dem Start des PCs prüft, ob die Freigabe verfügbar ist und den Mount-Point anschließend durch einen ls-Zugriff triggert. + +![Alternativtext](/linux/img/mounts-in-dolphin2.png) + + +### Schritt 1: Trigger-Skript erstellen + +Der Speicherort des Skripts ist beliebig, er muss lediglich im Systemd Service angegeben werden und sollte persistent sein. + +```bash +sudo nano /var/usrlocal/bin/mounts-connect.sh +``` + +```sh +#!/usr/bin/env bash +# /var/usrlocal/bin/mounts-connect.sh + +# ----- Konfiguration ----- +# Zielhost oder IP für Ping-Check +TARGET_HOST="10.0.0.3" + +# Maximale Anzahl an Ping-Versuchen (bei 2 Sekunden Pause pro Versuch) +MAX_TRIES=30 + +# Array mit allen Automount-Pfaden +AUTOMOUNTS=( + "/var/mnt/Dokumente" + # weitere Mounts ergänzen +) + +# ----- Script-Start ----- +count=0 + +# 1. Warteschleife für Netzwerkverfügbarkeit mit Abbruch nach MAX_TRIES +until ping -c 1 -W 1 "${TARGET_HOST}" &> /dev/null; do + ((count++)) + if (( count >= MAX_TRIES )); then + echo "Host ${TARGET_HOST} not reachable after ${MAX_TRIES} tries – cancelled." >&2 + exit 1 + fi + sleep 2 +done + +# Kurze Stabilisierungspause +sleep 5 + +# 2. Automounts triggern +echo "Triggering automounts on ${TARGET_HOST}..." +for mountpath in "${AUTOMOUNTS[@]}"; do + if [ -d "${mountpath}" ]; then + ls "${mountpath}" &> /dev/null && + echo "${mountpath} triggered" || + echo "Error while triggering ${mountpath}" >&2 + else + echo "Path ${mountpath} does not exist" >&2 + fi +done + +echo "All Automounts triggered." +exit 0 +``` + +Das Skript ausführbar machen: + +```bash +sudo chmod +x /usr/local/bin/mounts-connect.sh +``` + + +### Schritt 2: Systemd Service erstellen + +```bash +sudo nano /etc/systemd/system/mounts-connect.service +``` + +```ini +[Unit] +Description=Trigger CIFS Automounts for Dolphin +After=network-online.target +Wants=network-online.target +Before=graphical.target + +[Service] +Type=oneshot +ExecStart=/var/usrlocal/bin/mounts-connect.sh +User=root +RemainAfterExit=yes +TimeoutStartSec=60 + +[Install] +WantedBy=multi-user.target +``` + +Hier ist wichtig, dass der Service erst ausgeführt wird, wenn das network-online target erreicht ist, kurz bevor das grafical target erreicht würde. + +Das Skript hat ein Timeout damit es bei fehlender Verbindung nicht ewig versucht, die Resource zu pingen. + + +### Schritt 3: Service aktivieren + +```bash +sudo systemctl daemon-reload +sudo systemctl enable mounts-connect.service +``` + +## CIFS/SMB Mounts und Standby + +Nach dem Standby (Suspend-to-RAM) verlieren die Mounts manchmal die Verbindung, was dazu führt, dass Dolphin und andere Programme beim Zugriff „einfrieren“ und die Verbindung zu den SMB-Shares schließlich fehlschlägt. + +Während des Standbys wird die Netzwerkverbindung getrennt. Nach dem Aufwachen ist das Netzwerk nicht sofort oder nicht im gleichen Zustand wiederhergestellt. Die bestehenden Mounts werden dadurch „taub“ und reagieren nicht mehr auf Anfragen. + +Systemd-automount erkennt den Verbindungsverlust nicht immer und versucht weiterhin, den Mount zu nutzen, was zu langen Timeouts führt + +### Lösung: + +Die robusteste Methode ist, die Mounts beim Suspend automatisch auszuhängen und nach dem Resume neu einzuhängen. Dies kann mit `systemd-Sleep-Hooks` erreicht werden. + +Das systemd-Subsystem `system-sleep` führt bei bestimmten Energiezustandswechseln des Systems alle Skripte im Ordner `/usr/lib/systemd/system-sleep/` (bzw. auf manchen Systemen `/lib/systemd/system-sleep/`) automatisch aus. + +Zum Wiederverbinden der Mounts verwenden wir das bereits zuvor erstellte `mounts-connect.sh` Skript. + +```bash +sudo nano /usr/lib/systemd/system-sleep/mounts-reconnect.sh +``` + +```sh +#!/bin/bash + +case "$1" in + pre) + umount -l /var/mnt/Dokumente + # weitere Mounts ergänzen + ;; + post) + /var/usrlocal/bin/mounts-connect.sh + ;; +esac +``` + +Das Skript ausführbar machen: + +```bash +sudo chmod +x /usr/lib/systemd/system-sleep/mounts-reconnect.sh +```