Kategorie
GNU/Linux
Veröffentlicht
Lesezeit
20 Minuten
Diskussion
Noch keine Kommentare

GNU/Linux

Fritzbox-Freigaben unter Linux einbinden: GNOME, Plasma und fstab im Tempovergleich

Die Fritzbox als Mini-NAS ist praktisch, doch unter Linux führen mehrere Wege an die Dateien. Nautilus, Dolphin, mount.cifs, smbclient und FTP im Messvergleich: welcher Weg sich wofür lohnt.

Eine Fritzbox 5690 Pro steht hochkant auf einem Server in einem Rechenzentrum, an der Seite steckt ein USB-Stick. Daneben liegen ein Netzwerkkabel mit RJ45-Steckern und ein Einplatinenrechner, dahinter steht ein Notebook mit geöffnetem Dateimanager, weiter hinten Serverracks mit blinkenden LEDs.

Ein USB-Stick an der Fritzbox, und schon haben alle im Haus ein Netzlaufwerk: Fotos, Dokumente, die Musiksammlung. Unter Linux ist die Freigabe aber nicht nur einen Klick entfernt, denn es gibt mehrere Wege dorthin. Der Dateimanager hängt sie bequem ein, die /etc/fstab macht sie dauerhaft verfügbar. Beides führt zum Ziel, unterscheidet sich aber in Tempo und Zuverlässigkeit.

Doch was ist eigentlich der beste Weg? Gibt es Vor- und Nachteile, wenn man die Fritzbox-Freigaben über den Dateimanager einbindet? Wie sieht es mit der Datei /etc/fstab oder mit systemd aus? Und was ist mit FTP: Arbeitet das fast schon in Vergessenheit geratene Protokoll schneller? Eine Messreihe auf zwei Systemen liefert die Antworten.

Bevor es um Linux-Werkzeuge geht: Die Freigaben der Fritzbox lassen sich auch im Browser öffnen, unter https://fritz.box/nas#/. Dort zeigt die Weboberfläche FritzNAS nach der Anmeldung dieselben Ordner, die später im Dateimanager auftauchen, samt Ordner des USB-Sticks. Über Hinzufügen und Neuer Ordner lassen sich Dateien hochladen und Ordner anlegen, eine Suche gibt es ebenfalls. Für einzelne Dateien genügt das, für den Alltag sind die Wege weiter unten bequemer.

Was ihr vorher in der Fritzbox einstellt

Ohne Benutzer geht erst einmal nichts, denn die Fritzbox lässt Gäste nicht an den Speicher. Der Zugriff über das Netz ist immer an ein Konto gebunden. Legt daher unter System | FRITZ!Box-Benutzer einen eigenen Benutzer für den Linux-Rechner an und gebt ihm die Berechtigung Zugang zu NAS-Inhalten, mit Vollzugriff, wenn ihr auch schreiben wollt. Einen Link dorthin findet ihr auch in den Speichereinstellungen unter Benutzer verwalten.

Die Dienste schaltet ihr unter Heimnetz | USB / Speicher | Heimnetzfreigabe ein. Dort braucht ihr das Häkchen bei Zugriff über ein Netzlaufwerk (SMB). Der Freigabename steht ab Werk auf FRITZ.NAS und die Arbeitsgruppe auf WORKGROUP. Unterstützung für SMBv1 bleibt aus, die braucht ihr nicht. Wollt ihr auch FTP nutzen, setzt ihr das Häkchen bei Zugriff über FTP. In der Geräteübersicht muss außerdem NAS-Speicher-Funktion auf Aktiv stehen.

Erreichbar ist die Freigabe unter fritz.box. Sie nutzt SMB, das Protokoll, das auch Windows für Netzlaufwerke verwendet, AVM nennt die Versionen 2 und 3. Darunter liegen die Ordner des Speichers, ein angesteckter USB-Stick erscheint als eigener Unterordner. Der Name fritz.box gilt nur im Heimnetz. Die Oberfläche nennt dort auch die IP-Adresse der Box, die ihr statt des Namens verwenden könnt, falls fritz.box einmal nicht gefunden wird.

// USB-Stick mit USB 3.0

Die Fritzbox kann einen USB-3.0-Stick zunächst nur als USB 2.0 melden. Unter Heimnetz | USB / Speicher | USB-Einstellungen steht der USB-Stromsparmodus: Dort muss Power Mode (USB 3.0) gewählt sein, nicht Green Mode (USB 2.0). Danach zieht ihr den Stick einmal ab und wieder an, dann erscheint er in der Geräteübersicht als USB 3.0.

Ob es geklappt hat, seht ihr in der Geräteübersicht: Der Stick steht dort als USB-Speicher, darunter der Hinweis USB 3.0. Bei der Fritzbox 5690 Pro war der Stromsparmodus ab Werk aktiv, der Stick lief dadurch gebremst. Der Unterschied ist spürbar, denn im Stromsparmodus liefert der Anschluss nur das Tempo von USB 2.0.

// Eigener Benutzer lohnt sich

Nehmt nicht euer Haupt-Konto der Fritzbox für den Linux-Rechner. Ein eigener Benutzer mit NAS-Recht, aber ohne Rechte für Einstellungen, begrenzt den Schaden, falls die Zugangsdaten irgendwo im Klartext landen. Das passiert bei der /etc/fstab schneller, als man denkt. Außerdem lässt sich ein solches Konto später einzeln sperren oder mit einem neuen Passwort versehen, ohne dass andere Geräte davon etwas merken.

GNOME: Dateien

Bei Ubuntu mit GNOME braucht ihr nichts nachzuinstallieren, die nötige Unterstützung für Netzfreigaben ist an Bord. Sie heißt GVfs und ist die Schicht, über die Nautilus auf Netzfreigaben zugreift. Öffnet Dateien, drückt Strg+L und tippt smb://fritz.box in die Adresszeile. Ob die Box in der Netzwerkansicht auftaucht, spielt dabei keine Rolle, die direkte Adresse genügt.

Nautilus zeigt unter Windows-Speicher auf fritz.box zuerst nur den Eintrag FRITZ.NAS, ein Passwort will es dafür noch nicht. Erst der Doppelklick darauf öffnet den Anmeldedialog. Dort schaltet ihr bei Verbinden als auf Registrierter Benutzer, tragt den Fritzbox-Benutzer samt Passwort ein und lasst die Domäne bei WORKGROUP. Wählt ihr Nie vergessen, speichert GNOME das Passwort im Schlüsselbund, und der Dialog bleibt künftig weg.

Danach zeigt Nautilus die Ordner der Freigabe, und links in der Seitenleiste steht ein Eintrag für fritz.nas auf fritz.box, über den ihr sie jederzeit wieder öffnet. Das Auswurfsymbol daneben trennt die Verbindung. Der angesteckte USB-Stick erscheint als eigener Ordner, er trägt den Namen des Datenträgers. Dateien lassen sich dort wie in jedem anderen Ordner kopieren, verschieben und löschen.

Auch Programme, die nichts von GNOME wissen, kommen an die Dateien. GNOME blendet die Freigabe zusätzlich als normalen Ordner unter /run/user/1000/gvfs/smb-share:server=fritz.box,share=fritz.nas ein, dort funktionieren ls, cp oder dd ganz normal. Das hilft bei Skripten. Der Pfad enthält die Benutzerkennung und existiert nur, solange die Freigabe verbunden ist. Auf der Kommandozeile hängt gio mount die Freigabe ohne Dateimanager ein:

Terminal
gio mount smb://fritz.box/FRITZ.NAS

KDE Plasma: Dolphin

Unter TUXEDO OS mit Plasma tippt ihr in Dolphin Strg+L, dann smb://fritz.box/ in die Adresszeile und bestätigt mit Enter. Anders als Nautilus fragt Dolphin sofort nach Benutzer und Passwort, noch bevor es etwas anzeigt. Tragt den Fritzbox-Benutzer ein und setzt, wenn ihr den Dialog nicht jedes Mal sehen wollt, das Häkchen bei Passwort merken.

Beim Öffnen der Freigabe fragt Dolphin ein zweites Mal, diesmal für FRITZ.NAS selbst (Server fritz.box, Ressource FRITZ.NAS). Die Felder sind dann schon ausgefüllt, ihr bestätigt nur noch mit OK. Danach zeigt Dolphin die Ordner der Freigabe, der USB-Stick erscheint wieder als eigener Ordner. Lesen und das Anlegen eines Ordners funktionierten im Test.

Andere Programme sehen die Freigabe nicht ohne Weiteres: Dolphin nutzt dafür die KDE-eigene Schicht KIO, die nur KDE-Programme verstehen. Ein Zusatzdienst namens kio-fuse würde die Freigabe für alle Programme als Ordner einblenden, im Test verweigerte er aber jeden Zugriff. Dolphin selbst konnte schreiben. Wer feste Pfade braucht, die jedes Programm versteht, ist mit der /etc/fstab besser bedient.

Dauerhaft: die Freigabe in der /etc/fstab

Die Datei /etc/fstab legt fest, welche Laufwerke Linux einbindet. Tragt ihr die Freigabe dort ein, bekommt ihr einen gewöhnlichen Ordner, etwa /mnt/fritz. Das lohnt sich vor allem für Programme, die nur normale Pfade kennen, und für Skripte ohne Anmeldedialog. Dafür braucht ihr das Paket cifs-utils (bei Ubuntu meist schon installiert). Die Zugangsdaten gehören nicht in die fstab, sondern in eine eigene Datei, die nur root lesen darf:

Terminal2 Zeilen
sudo install -m 600 /dev/null /etc/fritz-smb.cred
sudo nano /etc/fritz-smb.cred
/etc/fritz-smb.credINI2 Zeilen
username=DEIN_FRITZBOX_BENUTZER
password=DEIN_PASSWORT

Danach legt ihr den Ordner an, in dem die Freigabe erscheinen soll (den Mountpunkt), und ergänzt die fstab um eine Zeile. Sie nennt Quelle, Mountpunkt, Dateisystemtyp und Optionen, die beiden Nullen am Ende bleiben bei Netzfreigaben immer so. Die Optionen x-systemd.automount und noauto sorgen dafür, dass die Freigabe erst beim ersten Zugriff eingehängt wird. So wartet der Rechner beim Start oder im fremden WLAN nicht auf die Fritzbox:

Terminal2 Zeilen
sudo mkdir -p /mnt/fritz
sudo nano /etc/fstab
/etc/fstabKonfiguration
//fritz.box/FRITZ.NAS  /mnt/fritz  cifs  credentials=/etc/fritz-smb.cred,uid=1000,gid=1000,file_mode=0644,dir_mode=0755,noserverino,_netdev,nofail,noauto,x-systemd.automount,x-systemd.idle-timeout=60,x-systemd.mount-timeout=10  0  0

// uid und gid

Mit uid und gid legt ihr fest, welchem Benutzer und welcher Gruppe die Dateien der Freigabe auf eurem Rechner gehören sollen. Linux kennt beide intern nur als Nummern. Auf Desktop-Systemen bekommt der erste angelegte Benutzer meist die 1000, die Gruppennummer kann aber abweichen: Auf einem meiner Testrechner lautete sie etwa 1004. Eure Zahlen zeigt id, einzeln liefern sie id -u und id -g:

Terminal6 Zeilen
id
uid=1000(NAME) gid=1000(NAME) Gruppen=1000(NAME),27(sudo)
id -u
1000
id -g
1000

Anschließend lest ihr die Konfiguration neu ein und stoßt den Mount mit einem ersten Zugriff an. Im Test klappte das auf Anhieb, und nach 60 Sekunden Ruhe löste systemd den Mount wieder, der Ordner blieb als leerer Auslöser stehen. uid und gid sollten zu eurem Konto passen, der Kasten oben zeigt, wie ihr sie findet. Ohne file_mode und dir_mode erscheinen alle Dateien als ausführbar:

Terminal2 Zeilen
sudo systemctl daemon-reload
ls /mnt/fritz

// Ohne noserverino: „Stale file handle“

Im Test lief der Standard-Mount in einen Fehler: Nachdem der Zwischenspeicher geleert war, ließ sich eine eben geschriebene Datei nicht mehr öffnen, das System meldete Stale file handle. Mit der Option noserverino war das Problem weg, nohandlecache half nicht. Das ließ sich auf Ubuntu und TUXEDO OS, intern wie am Stick, in allen Läufen nachstellen. noserverino gehört bei der Fritzbox deshalb immer dazu.

Linux merkt sich jede Datei an einer internen Nummer, die der Server liefert. Die Fritzbox meldet für dieselbe Datei aber wechselnde Nummern, im Test zuerst eine und nach dem Leeren des Zwischenspeichers eine ganz andere. Linux hält die Datei dann für eine andere und gibt auf. Mit noserverino vergibt Linux die Nummern selbst, und das Problem verschwindet.

Dafür erkennt Linux Verknüpfungen auf dieselbe Datei (Hardlinks) nicht mehr, auf einem Fotoarchiv spielt das kaum eine Rolle. Warum die Box so antwortet, ist nicht geklärt. Derselbe Fehler taucht im Home-Assistant-Forum („Samba error with Fritz.Nas: CIFS stale file handle“) und in einem Umbrel-Issue mit einer Fritzbox als Speicher auf, dort half dieselbe Option.

Alternative für Fortgeschrittene: systemd-Einheiten statt fstab

Wer lieber mit systemd-Einheiten arbeitet, schreibt statt der fstab-Zeile eine .mount– und eine .automount-Datei. Das Ergebnis ist dasselbe, denn systemd erzeugt aus der fstab ohnehin genau diese Einheiten. Der Vorteil: Jede Einheit lässt sich einzeln mit systemctl status prüfen, und die Meldungen landen mit journalctl -u mnt-fritz.mount in einem eigenen Protokoll.

Die Dateinamen sind nicht frei wählbar, sie müssen dem Pfad des Mountpunkts entsprechen. Aus /mnt/fritz wird mnt-fritz. Beide Dateien liegen in /etc/systemd/system/. Den Mountpunkt braucht ihr nicht von Hand anzulegen, systemd erstellt /mnt/fritz beim ersten Einhängen selbst. Welchen Namen systemd erwartet, zeigt systemd-escape, für die erste Datei lautet er mnt-fritz.mount:

Terminal2 Zeilen
systemd-escape -p --suffix=mount /mnt/fritz
mnt-fritz.mount
/etc/systemd/system/mnt-fritz.mountsystemd11 Zeilen
[Unit]
Description=Fritzbox-Freigabe FRITZ.NAS
After=network-online.target
Wants=network-online.target

[Mount]
What=//fritz.box/FRITZ.NAS
Where=/mnt/fritz
Type=cifs
Options=credentials=/etc/fritz-smb.cred,uid=1000,gid=1000,file_mode=0644,dir_mode=0755,noserverino
TimeoutSec=10

Dazu kommt mnt-fritz.automount. Die Optionen _netdev, nofail, noauto und die x-systemd.…-Einträge der fstab-Zeile entfallen, denn ihre Aufgaben übernehmen die Abschnitte der Einheiten: After=network-online.target wartet auf das Netz, und TimeoutIdleSec=60 trennt die Verbindung nach einer Minute Ruhe. Die .automount-Datei sorgt dafür, dass die Freigabe erst beim ersten Zugriff eingehängt wird und nach einer Weile ohne Zugriff wieder verschwindet. Sie hört auf denselben Mountpunkt wie die .mount-Datei:

/etc/systemd/system/mnt-fritz.automountsystemd9 Zeilen
[Unit]
Description=Fritzbox-Freigabe FRITZ.NAS bei Zugriff einhängen

[Automount]
Where=/mnt/fritz
TimeoutIdleSec=60

[Install]
WantedBy=multi-user.target

Eingeschaltet wird die .automount-Datei, nicht die .mount-Datei. Zuerst liest systemd die neuen Dateien ein, danach startet der Automount sofort und nach jedem Neustart von selbst. Im Test stand der Mountpunkt dann als autofs bereit, der eigentliche Mount war noch inaktiv. Der erste Zugriff hängte die Freigabe ein, und nach 75 Sekunden Ruhe war wieder nur der autofs-Auslöser übrig:

Terminal3 Zeilen
sudo systemctl daemon-reload
sudo systemctl enable --now mnt-fritz.automount
ls /mnt/fritz

Ein weiterer Vorteil zeigt sich bei Diensten, die ohne die Freigabe nicht laufen sollen, etwa ein Backup oder ein Medienserver. Sie tragen in ihrer Einheit eine einzige Zeile im Abschnitt [Unit] ein. Im Test hängte systemd die Freigabe beim Start eines solchen Dienstes selbst ein und startete ihn erst danach. In systemctl list-dependencies taucht mnt-fritz.mount dann als Abhängigkeit auf. Mit der fstab-Zeile ist das nur über Umwege möglich:

mein-dienst.servicesystemd2 Zeilen
[Unit]
RequiresMountsFor=/mnt/fritz

Wer einen Laptop mit wechselnden Netzen hat, findet in einem älteren Artikel zum NetworkManager-Dispatcher eine weitere Variante samt Fallstricken. Dort wird die Freigabe per Skript eingehängt, sobald das Heimnetz erreichbar ist, und beim Netzwechsel wieder getrennt. Das ist eine Alternative zum Automount, wenn die Verbindung wirklich nur im Heimnetz bestehen soll.

Mehrere Benutzer und Rechner

Die Rechte vergibt die Fritzbox, nicht Linux. Jeder Benutzer unter System | FRITZ!Box-Benutzer bekommt die Berechtigung Zugang zu NAS-Inhalten. Beim Bearbeiten des Benutzers (Stift-Symbol) legt ihr fest, wie weit sie reicht: Vollzugriff zum Lesen und Schreiben, Nur Lesezugriff oder Individuelle Einstellungen. Bei der individuellen Variante wählt ihr Verzeichnis für Verzeichnis, wo der Benutzer lesen und wo er auch schreiben darf.

Sinnvoll ist ein Benutzer pro Person statt eines Kontos für alle. Dann lässt sich ein Konto später wieder sperren, ohne dass die anderen ein neues Passwort brauchen, und ein Gast oder ein Kind bekommt nur Nur Lesezugriff. Dasselbe Konto darf sich von mehreren Rechnern gleichzeitig anmelden, das funktionierte im Test ohne Probleme. Ändert ihr ein Passwort, müsst ihr die Zugangsdatei in der fstab anpassen.

Die Linux-Rechte auf dem eingehängten Ordner sind dagegen nur eine Fassade. Sie bestimmen lediglich, was ls -l anzeigt: Im Test meldete chmod 600 Erfolg und ließ den Modus trotzdem bei 644, und chown root änderte den Besitzer nicht. Wer wirklich etwas absperren will, tut das in der Fritzbox, nicht mit chmod. Dasselbe gilt für die Optionen uid, gid, file_mode und dir_mode der fstab-Zeile: Sie ändern nur die Anzeige.

Auf einem Rechner mit mehreren Konten hat der fstab-Mount genau eine Anmeldung, und jeder lokale Benutzer, der in den Ordner kommt, arbeitet mit den Rechten dieses Fritzbox-Benutzers. Mit dir_mode=0755 konnte im Test sogar der Systembenutzer nobody den Ordner auflisten. Setzt auf gemeinsam genutzten Rechnern dir_mode=0700 oder eine eigene Gruppe mit gid= und dir_mode=0770. Der Weg über Dateien in GNOME oder KDEs Dolphin meldet dagegen jedes Konto einzeln an.

// Keine Sperren zwischen den Rechnern

Greifen zwei Rechner auf dieselbe Datei zu, schützt euch die Fritzbox nicht. Im Test hielt eine virtuelle Maschine eine Sperre auf einer Datei, und ein zweiter, echter Rechner bekam trotzdem dieselbe Sperre. Programme, die sich auf solche Sperren verlassen, etwa Datenbanken wie SQLite oder die Passwortdatei von KeePass, sollten deshalb nie gleichzeitig von zwei Geräten auf der Freigabe geöffnet werden.

Auch der Zwischenspeicher spielt hinein. Mit den Standardeinstellungen sah der zweite Rechner eine geänderte Datei sofort. Mit cache=loose,actimeo=30 las er eine Sekunde nach der Änderung noch den alten Inhalt. Für Ordner, in die mehrere Leute schreiben, bleibt es deshalb beim Standard. In jedem Fall gehört die Freigabe ins Heimnetz. Öffnet den SMB-Port 445 der Fritzbox nie ins Internet, von unterwegs reicht ein VPN.

Weitere Wege: smbclient, FTP und rclone

Zum einmaligen Kopieren reicht das Paket smbclient. Es braucht keinen Mount und keine Zusatzrechte, die Zugangsdatei von oben lässt sich mit -A wiederverwenden. Auch FTP funktioniert, sobald ihr Zugriff über FTP eingeschaltet habt: Die Fritzbox hat dann den Port 21 offen, und curl lädt Dateien hoch. Dolphin und Nautilus verstehen ftp:// ebenfalls, nur ist es als Dauerlösung unbequem. Download mit smbclient und Upload per FTP sehen so aus:

Terminal2 Zeilen
smbclient //fritz.box/FRITZ.NAS -A /pfad/zur/cred -c "get datei"
curl --user BENUTZER -T datei ftp://fritz.box/

Beispiel: nächtliches Backup auf die Fritzbox

Ein typischer Einsatz für smbclient ist ein Backup, das nachts läuft. Das Skript packt einen Ordner zu einem tar.gz-Archiv und schiebt es auf die Freigabe. Der Wochentag steckt im Dateinamen, so liegen dort höchstens sieben Archive, die sich der Reihe nach überschreiben, und ihr braucht kein Skript zum Aufräumen. Die Zugangsdatei ist dieselbe wie bei der fstab, NAME_DES_STICKS ersetzt ihr durch den Ordner eures Sticks:

~/bin/fritz-backup.shBash14 Zeilen
#!/bin/bash
# Nächtliches Backup: Ordner als tar.gz auf die Fritzbox schieben
set -euo pipefail

QUELLE="$HOME/Dokumente"                 # dieser Ordner wird gesichert
FREIGABE="//fritz.box/FRITZ.NAS"
ZIEL="NAME_DES_STICKS/Backup"            # Ordner auf der Freigabe
CRED="$HOME/.fritz-smb"                  # Zugangsdatei mit username= und password=
DATEI="/tmp/backup-$(date +%a).tar.gz"   # Wochentag im Namen: sieben Archive im Wechsel

tar -czf "$DATEI" -C "$(dirname "$QUELLE")" "$(basename "$QUELLE")"
smbclient "$FREIGABE" -A "$CRED" -c "mkdir $ZIEL" >/dev/null 2>&1 || true
smbclient "$FREIGABE" -A "$CRED" -c "put $DATEI $ZIEL/$(basename "$DATEI")"
rm -f "$DATEI"

Für einen Test lasst ihr das Skript zweimal laufen: Beim ersten Mal legt es den Zielordner an, beim zweiten überschreibt es das Archiv vom selben Wochentag. Bei einem unmöglichen Ziel endet es mit Fehlercode 1, damit ein Timer den Fehler im Protokoll festhält. Das Zurückholen eines Archivs und das Auspacken klappten ebenfalls, nur der Wochentag im Dateinamen muss zum gewünschten Stand passen:

Terminal2 Zeilen
smbclient //fritz.box/FRITZ.NAS -A ~/.fritz-smb -c "get NAME_DES_STICKS/Backup/backup-Mo.tar.gz"
tar -xzf backup-Mo.tar.gz

Wer FTP bevorzugt, ersetzt die beiden smbclient-Zeilen durch einen curl-Aufruf. Der Zielordner wird dabei von selbst angelegt. Die Zugangsdaten stehen in einer eigenen Datei im Home-Verzeichnis, die nur ihr lesen dürft (chmod 600), damit das Passwort weder im Skript noch in der Prozessliste auftaucht. Auch das sollte bei euch im Test funktionieren, das Archiv landete im Zielordner auf dem Stick:

Terminal2 Zeilen
install -m 600 /dev/null ~/.fritz-netrc
nano ~/.fritz-netrc
~/.fritz-netrcKonfiguration
machine fritz.box login DEIN_FRITZBOX_BENUTZER password DEIN_PASSWORT
Code3 Zeilen
curl --fail --silent --show-error --ftp-create-dirs \
     --netrc-file "$HOME/.fritz-netrc" \
     -T "$DATEI" "ftp://fritz.box/$ZIEL/$(basename "$DATEI")"

Für die Nacht braucht ihr einen Timer. Unter systemd genügen zwei kleine Dateien im Benutzerordner ~/.config/systemd/user/, das Skript liegt als ~/bin/fritz-backup.sh. Der Dienst startet das Skript, und der Timer ruft ihn um 2:30 Uhr auf. Persistent=true holt einen verpassten Lauf nach, etwa wenn der Rechner um diese Zeit aus war:

~/.config/systemd/user/fritz-backup.servicesystemd6 Zeilen
[Unit]
Description=Backup auf die Fritzbox

[Service]
Type=oneshot
ExecStart=%h/bin/fritz-backup.sh
~/.config/systemd/user/fritz-backup.timersystemd9 Zeilen
[Unit]
Description=Backup auf die Fritzbox jede Nacht

[Timer]
OnCalendar=*-*-* 02:30
Persistent=true

[Install]
WantedBy=timers.target

Eingeschaltet wird der Timer, nicht der Dienst. Der dritte Befehl startet einen Lauf sofort, damit ihr seht, ob alles klappt, und der vierte zeigt das Protokoll. Im Test stand der nächste Lauf danach für 2:30 Uhr in der Liste, und der manuell gestartete Lauf legte das Archiv auf dem Stick ab:

Terminal4 Zeilen
systemctl --user enable --now fritz-backup.timer
systemctl --user list-timers fritz-backup.timer
systemctl --user start fritz-backup.service
journalctl --user -u fritz-backup.service

Wer mehrere Cloud-Speicher und die Fritzbox über ein Werkzeug ansprechen will, nutzt rclone mit SMB-Backend. Die Freigabe wird dort als eigener Speicher angelegt, der Freigabename FRITZ.NAS steht im Pfad. Im Test funktionierten Kopieren und Spiegeln eines Ordners. Das Passwort landet bei diesem Befehl im Shell-Verlauf, wer das vermeiden will, gibt es stattdessen interaktiv über rclone config ein:

Terminal2 Zeilen
rclone config create fritz smb host fritz.box user DEIN_BENUTZER pass DEIN_PASSWORT --obscure
rclone sync ~/Dokumente fritz:FRITZ.NAS/NAME_DES_STICKS/Backup/Dokumente

Nicht möglich sind dagegen WebDAV und SSH (sshfs): Port 22 ist zu, und einen WebDAV-Zugang auf den Speicher gibt es offenbar nicht. Für den Alltag spielt das kaum eine Rolle, denn SMB und FTP decken die üblichen Fälle ab: Dateien hochladen, Backups ablegen und eine Freigabe als Ordner einhängen. Zu NFS folgt weiter unten ein eigener Abschnitt.

Tempovergleich

Gemessen wurde auf einem TUXEDO-Notebook mit Ubuntu 26.04.1, GNOME 50.1 und Kernel 7.0, angeschlossen über einen 2,5-Gbit-USB-Adapter an eine Fritzbox 5690 Pro, die an einem Gigabit-Port hängt. Getestet wurden zwei Speicher: der interne der Box (1,7 GB) und ein USB-3.0-Stick mit 128 GB. Jeder Test lief dreimal, die Tabelle zeigt den Median. Gelesen und geschrieben wurde eine 512 MB große Datei (mit Nullen gefüllt, vor jedem Lesen Cache geleert).

WegSchreiben intern (MB/s)Schreiben Stick (MB/s)Lesen intern (MB/s)Lesen Stick (MB/s)
GVfs (Dateien/Nautilus)49,260,266,364,6
mount.cifs, SMB 3.1.145,544,9104,7104,9
mount.cifs, SMB 3.045,344,8104,4104,6
mount.cifs, SMB 2.145,745,1104,8105,2
mount.cifs, cache=loose48,444,6109,4109,4
smbclient54,770,6106,8103,9
FTP (curl)53,965,5107,7107,6

Dieselben Läufe wurden später auf demselben Notebook unter TUXEDO OS wiederholt (Kernel 7.2, Plasma). Die Werte liegen fast deckungsgleich: Der Kernel-Mount schreibt mit 46 bis 49 MB/s und liest mit 105 MB/s, smbclient schreibt mit 64 bis 68 MB/s, FTP mit 52 bis 65 MB/s, je nach Speicher. Abweichungen von mehr als 3 MB/s gab es nur beim Schreiben mit smbclient auf den internen Speicher (64 statt 55 MB/s).

Beim Lesen großer Dateien bremst nicht Linux, sondern das Netz: Die Fritzbox hängt an einem Gigabit-Port, und gut 100 MB/s ist knapp unter dem, was eine solche Verbindung hergibt. Intern wie am Stick kommt dasselbe heraus. Der 2,5-Gbit-Adapter des Notebooks wird dabei nicht ausgereizt. Die SMB-Version spielt keine Rolle, 2.1, 3.0 und 3.1.1 sind gleich schnell.

Beim Schreiben bleibt der Kernel-Mount bei rund 45 MB/s, egal ob intern oder am Stick. smbclient und FTP schreiben auf den USB-3-Stick dagegen mit 65 bis 71 MB/s, GVfs mit 60 MB/s. Der Speicher ist beim Kernel-Mount also nicht die Bremse, und auch das Messverfahren ist nicht die Ursache, das ist gegengeprüft.

Gefunden wurde der Grund beim Ausprobieren von Einstellungen. Puffergrößen (wsize) und andere Optionen ändern nichts, das Signieren der Pakete (sign) kostet sogar fast die Hälfte. Mit nostrictsync springt das Schreiben dagegen auf rund 95 MB/s. Die Option verhindert, dass Linux beim Schließen einer Datei verlangt, dass die Box sie auf den Datenträger schreibt. Die Box meldet dann „fertig“, bevor die Daten auf dem Stick liegen.

// nostrictsync nur mit Bedacht

Das Tempo von nostrictsync ist erkauft: Die Daten liegen zunächst nur im Arbeitsspeicher der Fritzbox. Fällt dort der Strom aus oder zieht ihr den Stick gleich nach dem Kopieren ab, können Dateien fehlen oder beschädigt sein. Für Backups sollte die Option aus bleiben, für ein Fotoarchiv, das ihr ohnehin noch einmal sichert, ist sie vertretbar.

Bei vielen kleinen Dateien (300 Stück à 16 KB) ist GVfs deutlich abgeschlagen: Am Stick braucht es zum Schreiben 2,4 und zum Lesen 2,5 Sekunden, der Kernel-Mount nur 0,8. Für ein paar Fotos fällt das nicht auf, bei einem Ordner mit tausenden Dateien schon. Auf dem internen Speicher sah es genauso aus (2,3 gegen 0,7 Sekunden).

cache=loose bringt beim Lesen vier Prozent und beim Schreiben nichts Messbares. Die vier Prozent merkt man im Alltag kaum. Dafür sieht der Rechner Änderungen anderer Geräte später. Für ein Netzlaufwerk, auf das mehrere Leute zugreifen, sollte es aus bleiben. Die Messreihe stammt von einem Tag und einem Router, die Werte sind also Anhaltspunkte und keine Garantie.

// Welcher Weg wofür

Für den Alltag ist die Freigabe im Dateimanager schnell genug und am bequemsten. Wer viele Dateien kopiert oder Programme darauf zugreifen lässt, nimmt die /etc/fstab mit x-systemd.automount. Für einzelne große Dateien, die ihr auf die Box schreibt, sind smbclient oder FTP am schnellsten. Auf cache=loose und nostrictsync verzichtet ihr am besten, solange mehrere Geräte schreiben.

NFS und Freetz

Die Fritzbox selbst bietet kein NFS an: Auf Port 2049 und 111 antwortet die Box nicht. Früher half das Zusatzprojekt Freetz, das unter anderem einen NFS-Server nachrüstete. Das ursprüngliche Freetz gilt als veraltet, seine letzte Version stammt aus dem Jahr 2012. In alten Foren-Beiträgen findet ihr dazu viele Anleitungen, die sich auf Boxen und Firmware-Stände beziehen, die lange nicht mehr aktuell sind.

Lebendig ist der Fork Freetz-NG, der die Arbeit des ursprünglichen Projekts weiterführt: Die News reichen bis November 2026, zuletzt erschien im September ein neuer Stand. Auch ein NFS-Server mit Weboberfläche gehört weiter dazu, der nfsd-cgi. Die Liste der unterstützten Firmwares führt viele Fritzboxen auf, darunter die 5690 Pro. Wer es ausprobieren will, sollte vorher klären, welche Firmware die eigene Box hat.

Ein Selbstläufer ist es trotzdem nicht. Freetz-NG ersetzt die Firmware der Box durch ein selbst gebautes Abbild, und laut den News laufen neuere FritzOS-8.5-Stände nur teilweise, viele Anpassungen schlagen fehl. Die Dokumentation des NFS-Servers nennt nur eine alte Fritzbox 7390 als Testgerät. Für die 5690 Pro ist es ungetestet, und der Gewinn wäre überschaubar: Beim Lesen sitzt das Netz schon an der Grenze, beim Schreiben bremst das Wegschreiben auf den Datenträger.

Erfahrungen und Messwerte

Wie hängt ihr eure Fritzbox-Freigaben ein? Erfahrungen und Tipps gehören gern in die Kommentare, besonders zu anderen Fritzbox-Modellen und Firmware-Ständen, zu USB-Datenträgern mit anderen Dateisystemen und zu Ordnerrechten pro Benutzer, die sich in diesem Test nicht klären ließen. Auch Messwerte von schnelleren Speichern oder einem 2,5-Gbit-Anschluss an der Box sind willkommen.

Diskussion Noch keine Kommentare – schreib den ersten.

Kommentar schreiben

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Markdown wird unterstützt: **fett**, _kursiv_, [Linktext](URL), `Code`, Zeilen mit - für Listen, 1. für nummerierte Listen, dreifache Backticks für Codeblöcke.

Sicherheitsprüfung: läuft automatisch, du musst nichts tun.

Zeilen sind breiter als der Bildschirm. Quer halten zeigt mehr – oder Umbrechen einschalten.

Linux und Ich — Fritzbox-Freigaben unter Linux einbinden: GNOME, Plasma und fstab im Tempovergleich
https://linuxundich.de/fritzbox-freigabe-linux-einbinden-samba-gnome-plasma-fstab/ — gedruckt am 12. November 2026