Benutzer-Werkzeuge

Webseiten-Werkzeuge


project:backup

Dies ist eine alte Version des Dokuments!


Projekt: Raspberry PI als Backupserver

☚ zurück - Einstiegskurs

In diesem Projekt bauen wir aus einem Raspberry Pi einen einfachen, aber sauberen NFS-Backupserver für ein lokales Netzwerk. Ziel ist es, eine klare Trennung zwischen einem öffentlichen, nur lesbaren Bereich und einem schreibbaren Datenbereich umzusetzen. Dabei wird bewusst kein Benutzerabgleich zwischen Client und Server verwendet. Stattdessen werden alle schreibenden Zugriffe serverseitig auf einen definierten Service-User abgebildet. Dadurch bleibt die Konfiguration auf den Clients einfach und konsistent.

Konzept

Der Server stellt zwei Verzeichnisse bereit:

  • /srv/nfs/public → nur lesend (ro)
  • /srv/nfs/data → lesend + schreibend (rw, Service-User 2000)

Für das Datenverzeichnis wird ein technischer Service-User mit der UID/GID 2000 eingerichtet. Alle Schreibzugriffe werden mittels all_squash auf diesen Benutzer umgeleitet. Dadurch gehören sämtliche erzeugten Dateien immer demselben Systemkonto – unabhängig davon, welcher Client sie erstellt hat.

Dieses Modell verhindert UID-Konflikte zwischen unterschiedlichen Systemen im Netzwerk.

Alle schreibenden Zugriffe auf /srv/nfs/data werden serverseitig auf UID/GID 2000 abgebildet (all_squash).

SERVER Die Ip-adresse des Server wird hier mit IP gekennzeichnet, und muss ich Kurs durch die tatsächliche Ip-addrs ersetzt werden.

NFS SERVER

Im Kurs steht der Server bereits zur Verfügung, so das es darum geht ihn einzubinden, Wer eien eigenen NFS-Server erstelen will erfäht hier wie das gemacht werden kann.

Einrichtung Server

NFS CLIENT

Verfügbare Exports anzeigen

sudo apt install -y nfs-common
showmount -e IP

Manuell Mounten

sudo mkdir -p /mnt/public
sudo mkdir -p /mnt/data
 
sudo mount -t nfs -o ro IP:/srv/nfs/public /mnt/public
sudo mount -t nfs -o rw,soft,timeo=50,retrans=3 IP:/srv/nfs/data /mnt/data

Automatisch Mounten (/etc/fstab)

IP:/srv/nfs/public  /mnt/public  nfs  ro,_netdev,noatime,x-systemd.automount,nofail  0  0
IP:/srv/nfs/data    /mnt/data    nfs  rw,_netdev,noatime,x-systemd.automount,x-systemd.device-timeout=10s,x-systemd.idle-timeout=600,soft,timeo=50,retrans=3,nofail  0  0
 
sudo systemctl daemon-reload
sudo mount -a

Ergebnis

  • /srv/nfs/public → nur lesbar für alle Clients
  • /srv/nfs/data → schreibbar, serverseitig UID/GID 2000
  • Client bootet auch wenn Server offline ist
  • Mount erfolgt erst bei Zugriff (automount)
  • Keine UID-Anpassung auf Clients erforderlich
project/backup.1772531052.txt.gz · Zuletzt geändert: von torsten.roehl