In meiner HomeLab-Reihe wollte ich unbedingt ausprobieren, wie sich ein Ugreen NAS mit TrueNAS in der Praxis schlägt. Ich habe ja bereits gezeigt, wie man Proxmox auf dem Ugreen NAS installiert und welche Möglichkeiten sich damit ergeben. Doch die meisten, die ein solches System aufbauen, wünschen sich auch klassische NAS-Funktionen: Datenspeicher, SMB-Freigaben, Backups und ein stabiles Dateisystem.
In diesem Beitrag zeige ich dir Schritt für Schritt, wie ich TrueNAS als virtuelle Maschine unter Proxmox eingerichtet habe, welche Fallstricke es gab – und warum ich mich am Ende gegen TrueNAS in meinem HomeLab entschieden habe.
Warum überhaupt TrueNAS?
Ich bin ein großer Fan modularer Systeme. Proxmox läuft auf meinem Ugreen DXP4800 Plus bereits als Hypervisor, und damit lassen sich wunderbar virtuelle Maschinen oder Container verwalten. Aber ein Hypervisor allein ersetzt kein NAS. Deshalb lag es nahe, ein TrueNAS-System zu virtualisieren, um so die Vorteile beider Welten zu kombinieren: Virtualisierung, Datensicherheit, ZFS-Pool, Freigaben – alles in einem Gerät.
Das Ganze ist kein Sponsored-Post. Ugreen hat mir zwar die Geräte (DXP4800 Plus und DXP8800 Plus) kostenlos zur Verfügung gestellt, aber die Entscheidung, wie ich sie einsetze und bewerte, liegt komplett bei mir.
Transparenz
Die in diesem Blogbeitrag vorgestellten Links sind Affiliate Links. D.h. , wenn ihr über diesen Link ein Produkt erwerbt, dann erhalte ich eine kleine Provision, ihr zahlt aber nicht mehr. Ihr unterstützt damit meine Arbeit. Herzlichen Dank dafür.
Ein Login ist nicht nötig – einfach „No thank you, I have already signed up“ wählen und die neueste Stable-Version herunterladen. Ich habe das Image anschließend in meinen Download-Ordner gelegt, um es danach in Proxmox hochzuladen.
Proxmox-Grundlage auf dem Ugreen NAS
In meinem vorherigen Beitrag habe ich bereits erklärt, wie du Proxmox auf dem Ugreen NAS installierst. Falls du das noch nicht gesehen hast, findest du den Artikel hier: 👉 Proxmox auf Ugreen NAS installieren
Für dieses Setup verwende ich diesmal mein DXP4800 Plus.
Das größere 8800-Modell läuft bei mir bereits produktiv – und genau dort habe ich eine andere Lösung im Einsatz, über die ich später noch sprechen werde.
Lieferumfang: 1 x Samsung 990 PRO NVMe M.2 SSD, Speicherkapazität: 2 TB
159,00 EUR
Darauf läuft ein ZFS-RAIDZ1-Pool, um Redundanz zu haben. Das ist zwar kein Muss, aber für mich aus Sicherheitsgründen einfach sinnvoll.
TrueNAS-Image in Proxmox hochladen
Ich lade also das zuvor heruntergeladene TrueNAS-Image in Proxmox hoch. Das geht erstaunlich schnell – und schon liegt das ISO im lokalen Storage bereit.
Kleiner Tipp: Wenn du später ähnliche Projekte machst, lohnt sich eine eigene ISO-Library in Proxmox, damit du deine Images zentral verwalten kannst.
Virtuelle Maschine anlegen
Jetzt wird’s spannend: In Proxmox lege ich eine neue virtuelle Maschine an.
Name: TrueNAS
OS: das hochgeladene ISO-Image auswählen
System: Typ Q35
Bios: Default (SeaBIOS)
Disk: 64 GB (Writeback aktiviert, wenn NVMe-Storage)
CPU: 2 Cores
RAM: 8 GB
Netzwerk: Standard (virtio)
Damit ist die Grundkonfiguration fertig. Bevor ich starte, habe ich noch einen wichtigen Schritt gemacht: Ich habe den SATA-Controller des Ugreen NAS per PCI-Passthrough an die VM durchgereicht. Nur so kann TrueNAS später die physischen Festplatten erkennen – inklusive SMART-Werte.
Controller-Passthrough & Festplatten
Beim DXP4800 Plus funktioniert das problemlos. Beim DXP8800 Plus gibt es zwei Controller, aber nur der erste lässt sich durchreichen. Für mein Setup war das kein Problem, da ich ohnehin nur vier Platten brauchte und die anderen Platten für andere Anwendungen im Konzept gedacht sind.
Damit TrueNAS auch später nested Virtualisierung oder Apps sauber ausführen kann, wähle ich bei der CPU den Typ „host“ – das ermöglicht maximale Kompatibilität.
Danach starte ich die VM – und der Installer begrüßt mich mit dem bekannten Menü.
TrueNAS Installation
Ich wähle „Install/Upgrade“, nehme die zuvor angelegte virtuelle Disk (64 GB) als Ziel und vergebe ein Passwort. Wichtig: Der Login-User heißt seit einiger Zeit truenas_admin (nicht mehr root).
Nach kurzer Installationszeit startet das System neu und zeigt mir eine IP-Adresse – in meinem Fall 192.168.100.152. Diese rufe ich im Browser auf, logge mich ein und bin direkt auf der Weboberfläche.
Fehler & Korrektur – Controller nachreichen
Beim ersten Start sehe ich allerdings keine Festplatten. Grund: Ich hatte vergessen, den Controller tatsächlich zuzuweisen. Also VM ausschalten, in die Hardware-Sektion gehen und folgendes hinzufügen:
Add → PCI Device → Raw Device → ASMedia Serial ATA AHCI Controller → All Functions aktivieren → Add
Nach dem Neustart sind alle Platten sichtbar – inklusive Seriennummern und SMART-Funktionen.
ZFS-Pool anlegen
Jetzt geht es an das Herzstück: den ZFS-Pool. Ich erstelle einen neuen Pool mit dem Namen zfspool und wähle RAIDZ1 als Layout. Das bietet mir Datensicherheit, weil eine Platte ausfallen darf, ohne dass Daten verloren gehen.
Zur Erklärung: Bei vier 8-TB-Platten ergibt sich netto etwa 24 TB nutzbarer Speicher – eine Platte dient der Ausfallsicherheit.
Ich verzichte in meinem Fall auf zusätzliche Cache- oder Log-Drives, da mein Fokus auf Datensicherheit, nicht auf Performance liegt. Außerdem brauche ich die NVMEs in meinem Proxmox Setup noch für weitere virtuelle Maschinen 🙂
SMB-Freigaben & Benutzer
Anschließend lege ich einen neuen Benutzer an (home) und vergebe ein Passwort. Unter Datasets wähle ich meinen Pool aus und erstelle ein Dataset namens Backup. Als Preset wähle ich SMB, damit automatisch der passende Dienst aktiviert wird.
Nach dem Speichern fragt mich TrueNAS, ob der SMB-Service gestartet werden soll – natürlich bestätige ich das. Im nächsten Schritt weise ich meinem Benutzer die entsprechenden Berechtigungen zu:
Edit → Add Item → User auswählen → Apply permissions recursively → Save Access Control List
Danach kann ich auf meinem Windows-Rechner einfach \\192.168.100.152 eingeben, mich mit home anmelden – und sehe sofort meine Freigabe.
Beim Testkopieren erreiche ich die volle Gigabit-Geschwindigkeit, also rund 110 MB/s.
Performance & Stabilität
Die Performance ist beeindruckend. Selbst bei gleichzeitigen Zugriffen reagiert das System stabil und flüssig. ZFS ist bekannt für seine Datensicherheit und Integrität, und das merkt man hier deutlich.
Aber: Jede Medaille hat zwei Seiten. Denn ZFS hat einen hohen RAM-Bedarf und sorgt dafür, dass alle Platten aktiv bleiben, sobald auf den Pool zugegriffen wird.
Energieverbrauch – mein ehrliches Fazit
Ich habe das System mit meinem Home Assistant gemessen: Das Setup verbraucht rund 48 Watt im Idle-Betrieb.
Das liegt daran, dass bei einem ZFS-Pool alle Festplatten ständig aktiv sind. Selbst wenn nur auf eine Datei zugegriffen wird, laufen alle vier HDDs mit. Rechnet man das hoch, sind das schnell 20–30 W Mehrverbrauch gegenüber einem Setup mit Spindown aller Platten. Und gerade bei einem Datengrab braucht man nicht 24/7 Zugriff und die Platten könnten eigentlich in den Spindown gehen.
In meinem HomeLab möchte ich aber effizient arbeiten. Darum habe ich mich entschieden, künftig auf eine andere Lösung zu setzen: Unraid. Auch hier würde sich eine ZFS Infrastruktur umsetzen lassen, aber mit den gleichen Thema der Energieeffizienz. Unraid bietet aber auch die Möglichkeit ein Array anzulegen. Das hat zwar keine native ZFS-Struktur, erlaubt aber ebenfalls Datensicherheit über eine Paritätsplatte – und lässt ungenutzte Laufwerke schlafen.
Über meinen Wechsel zu Unraid erzähle ich ausführlich im nächsten Teil der Serie. Wenn dich das interessiert, abonniere meinen Kanal auf youtube und verfolge meine Blog Beiträge.
Fazit: TrueNAS auf dem Ugreen NAS – stark, aber nicht für jeden
Mein Test hat gezeigt: Ein Ugreen NAS mit TrueNAS unter Proxmox ist absolut machbar – und technisch spannend. Die Einrichtung ist klar, das System stabil und durch ZFS sehr sicher.
Aber für meinen Einsatzzweck im HomeLab war es nicht die perfekte Lösung. Der Energieverbrauch ist mir einfach zu hoch, und die permanente Aktivität aller Platten passt nicht zu meinem Konzept eines stromsparenden Setups.
Für alle, die ein reines Daten-NAS mit Fokus auf Stabilität und Redundanz suchen, ist TrueNAS eine hervorragende Wahl. Wer dagegen Energieeffizienz und Flexibilität im Vordergrund hat, wird mit Unraid oder sogar Proxmox-LXC-Storage-Containern glücklicher.
Ich persönlich bleibe bei meinem Proxmox-Host, kombiniere aber künftig virtuelle Maschinen, Container und ein stromsparendes Storage-System.
Wenn du gerade ein Ugreen NAS besitzt oder planst, dir eins zuzulegen, dann ist TrueNAS auf jeden Fall einen Blick wert. Die Einrichtung macht Spaß, du lernst viel über Storage-Konzepte, und du kannst alles flexibel virtualisieren.
Aber wie so oft gilt: Die perfekte Lösung hängt vom eigenen Ziel ab. Ich wollte mein HomeLab möglichst effizient gestalten – und TrueNAS hat mir gezeigt, wo die Grenzen liegen.
Falls du Fragen hast, schreib’s gerne in die Kommentare bei Youtube oder schau auf meinem YouTube-Kanal vorbei – dort findest du das komplette Video mit allen Details.
Ugreen hat mit den NAS-Systemen DXP4800 Plus, DXP6800 Plus, DXP8800 Plus und weiteren Varianten richtig starke Geräte auf den Markt gebracht. Was die Hardware angeht, bekommt man für den Preis wirklich viel Leistung. Beim Ugreen OS selbst war ich allerdings für mein Anforderungsprofil nicht ganz glücklich – zu eingeschränkt, zu wenig flexibel. Das trifft aber bei mir auf alle NAS Systeme zu… Also habe ich mir gedacht: Das muss besser gehen.
In diesem Beitrag zeige ich dir daher, wie ich das Ugreen OS sichere, Proxmox auf dem NAS installiere und daraus ein durchdachtes HomeLab-Konzept aufbaue. Wir sprechen also nicht nur über eine Installation – wir erschaffen gemeinsam ein System, das flexibel, performant und zukunftssicher ist.
Transparenz: UGreen hat mir die NAS – Systeme kostenlos zur Verfügung gestellt. Die Produkt Links in diesem Beitrag sind Affiliate Links. Ihr zahlt nicht mehr, ich erhalte allerdings eine kleine Provision.
Ich habe in meinem Setup das UGreen DXP 8800 Plus als Hauptsystem verwendet.
Zwei 10GbE-Netzwerkanschlüsse: Zwei 10GbE-Hochgeschwindigkeitsnetzwerkanschlüsse, die zu einer Bandbreite von 20 G zusammengefasst werden können, um Downloadgeschwindigkeiten von bis zu 2500 MB/s zu erreichen. Große Dateien lassen sich problemlos übertragen. Die Last zwischen den beiden Portverbindungen kann dynamisch angepasst und ausgeglichen werden, um die Übertragungseffizienz zu verbessern.
Beispiellose Verarbeitungsleistung: Mit einem Intel Core i5-Prozessor der 12. Generation mit 10 Kernen und 12 Threads wird die Verarbeitungsleistung im Vergleich zu früheren Prozessoren sprunghaft verbessert.
8-Bay, 256 TB riesiger Datenspeicher: Ausgestattet mit acht SATA- und zwei M.2 NVMe-Laufwerkschächten verfügt das NASync DXP8800 Plus über eine maximale Speicherkapazität von bis zu 256 TB. Speichern Sie Tausende von HD-Filmen, Bildern und Dokumenten und machen Sie NASync zu einer Filmbibliothek, einem Fotoalbum und einem Dateispeicherplatz in einem.
Eine umfassende App: Anstatt einzelne Anwendungen für bestimmte Funktionen herunterzuladen, integriert die NAS-App diese Funktionen an einem Ort. Greifen Sie von einem praktischen Ort aus auf Speichermanager, Dateien, Fotos und mehr zu.
Professionelle Datensicherheit: Im Vergleich zu Cloud-Laufwerken ermöglicht NASync Benutzern, große Mengen persönlicher Daten auf vertrauenswürdigen lokalen Geräten zu speichern, wodurch Datenverlust und Überwachung weitestgehend verhindert werden. Datenübertragung und Konten können mit professioneller Verschlüsselung und Multi-Faktor-Authentifizierung vollständig geschützt werden.
Wenn ihr in Summe nicht so viel Leistung benötigt, dann lässt sich auch ein sehr gutes Home Lab Setup mit dem DXP 4800 Plus umsetzen. Die ausgeführten Schritte bleiben die Gleichen. Ich will hier gar nicht im Detail auf die Hardware eingehen, dazu gibt es jede Menge guter Reviews auf Youtube. Mir geht es hier um die technische Umsetzung eines Home Lab Konzepts.
12. Gen 5-Kern Intel Prozessor: Diese leistungsstarke CPU von Intel bietet ein außergewöhnlich flüssiges Erlebnis und sorgt für einen erheblichen Leistungszuwachs im Vergleich zu früheren Generationen.
Benutzerfreundliche App: Verwalte deinen Speicher und greife von all deinen Geräten auf deine Dateien zu, ganz einfach mit unserer maßgeschneiderten Software – und das alles ohne mehrere Tools oder komplizierte Drittanbieter-Software. Verfügbar für Android, iOS, Windows, Mac, Webbrowser und Smart-TVs.
4 Bays und maximal 136TB: Die vier SATA-Bays unterstützen jeweils bis zu 30TB. Zusätzlich können zwei kompakte M.2 NVMe SSDs mit jeweils bis zu 8TB installiert werden (für SSD-Caching oder zusätzlichen schnellen Speicher). Bei vollständiger Ausnutzung aller Steckplätze beträgt die maximale Kapazität beeindruckende 136TB.
Blitzschnelle 10GbE- und 2.5GbE-Netzwerkanschlüsse: Der NASync DXP4800 Plus bietet Datenraten von bis zu beeindruckenden 1250 MB/s über zwei separate Anschlüsse. Ideal für alle, die eine schnelle und reibungslose Übertragung von 4K-Videos und großen Dateien benötigen.
Professionelle Datensicherheit: Mit sicherer Verschlüsselung sind Benutzerkonten und Daten vollständig geschützt.
Mein Plan: Vom NAS zum HomeLab
Ich wollte nicht einfach nur ein NAS betreiben, sondern eine Plattform schaffen, auf der virtuelle Maschinen, Backups und verschiedene Dienste parallel laufen können. Ugreen liefert mit dem DXP8800 Plus eine hervorragende Basis – drei NVMe-Slots, starke Hardware und genügend Platz für mehrere Festplatten.
Geliefert wird das NAS mit 8GB RAM und einer NVME , wo sich das UGREEN OS drauf befindet. Bei mir war eine 128 GB Festplatte verbaut, was für ein Proxmox zunächst ausreichend ist. Die beiden anderen Slots habe ich mit NVME Festplatten von Samsung belegt.
Da mir die 8GB RAM für meinen Anwendungsfall nicht genügten, habe ich den RAM um 48GB RAM erweitert. Achtet dabei darauf, dass ihr DDR5 RAM mit 4800 MHz verwendet. Ich habe sehr positive Erfahrungen mit Corsair Vengeance gemacht. Es gehen aber genauso auch andere Hersteller. Als Hinweis sei noch erwähnt, dass in den Spezifikationen von UGREEN angegeben ist, dass lediglich 2×32 GB RAM funktionieren. Das ist aber nicht der Fall, es funktionieren auch 2×48 GB RAM. Ich habe mit einem 48GB RAM Riegel angefangen und zusätzlich den 8GB Riegel belassen. Wenn mein Bedarf an RAM mal steigen sollte, kommt ein weiterer Riegel hinzu.
Kompatibel mit nahezu allen Intel-Systemen: Der branchenübliche SODIMM-Formfaktor ist mit einer Vielzahl der gängigen Gaming- und -Performance-Laptops sowie Kompakt-PCs und mit Intel NUC-Kits kompatibel
Einfache Installation: Für die Installation in den meisten Laptops wird lediglich ein Schraubendreher benötigt
Maximaler Geschwindigkeitsschub: Für kürzere Ladezeiten, Multitasking und weitere Funktionen stellt VENGEANCE SODIMM in kompatiblen Systemen automatisch auf die maximal unterstützte Geschwindigkeit um
Umfassend getestete Zuverlässigkeit: Die Module sind gründlich geprüft und getestet, um eine erstklassige Leistung und Zuverlässigkeit zu gewährleisten
Kompatibilität: Intel 13th or 14th Gen Mobile-CPUs
Damit das funktioniert, beginne ich mit einem vollständigen Backup des Ugreen-Betriebssystems, bevor es gelöscht wird.
Schritt 1: Backup des Original-Systems mit Clonezilla
Bevor man irgendetwas verändert, sollte man das Ugreen OS vollständig sichern. Ich habe dafür Clonezilla verwendet – ein zuverlässiges Open-Source-Tool, das ein komplettes Image der Festplatte erstellt. Man kann auch die vorhandene NVME mit dem UGreen OS ausbauen und eine andere NVME dafür einbauen, aber warum sollte ich Ressourcen verschwenden, wenn ich doch mit einem Backup ebenfalls das Betriebssystem sauber gesichert bekomme und diesen Zustand jederzeit wiederherstellen kann ?
【Zuverlässige Fernsteuerung】 Starten Sie defekte Computer neu, installieren Sie das Betriebssystem per BIOS-Steuerung und schalten Sie sie mit einer Zubehörerweiterung sogar aus der Ferne ein. Nie wieder müssen Sie Rechenzentren aufsuchen, um abgestürzte Systeme zu reparieren – ideal für IT-Teams und Smart-Home-Enthusiasten.
【Universelle Kompatibilität & einfache Einrichtung】 Mühelose Verbindung zu Laptops, Desktops, Servern, Industrie-PCs und Streaming-Geräten. Einfache Ein-Klick-Verbindung per App – der zu steuernde Computer benötigt keine zusätzliche Software.
【4K Auflösung & Audio-Unterstützung】 Unterstützung für Gigabit-Netzwerkzugriff. Erleben Sie Desktop-Qualität mit einer Auflösung von 3840 x 2160 bei 30 Hz und einer Verzögerung von < 60 ms. Mit synchronisiertem Audio fühlt sich die Arbeit aus der Ferne so natürlich an, als wäre man vor Ort.
【Sofortige Dateiübertragung】 Bewältigen Sie den Nachteil herkömmlicher KVM-Geräte, Dateien nicht übertragen zu können: Unsere Lösung ermöglicht die nahtlose Dateifreigabe zwischen Geräten – keine lästigen Synchronisierungsprobleme mehr bei der Fernarbeit.
【Zugriff überall und jederzeit】 Sichern Sie sich ständigen Fernzugriff auf Ihre Computer und steigern Sie Ihre Produktivität – egal, ob Sie zu Hause oder unterwegs sind. Geeignet für die Fernarbeit und zum Verwalten mehrerer Computer.
Ich nutze gerne ein KVM over IP Device, weil ich oftmals keine Lust habe einen extra Monitor , Tastatur und Maus anzuschließen. So kann ich alles bequem über meinen PC im Browser konfigurieren.
Der nächste Schritt ist nun das Clonezilla Image zu booten und wie in im Video gezeigt die Einstellungen vorzunehmen und ein Backup des UGreen OS durchzuführen. Das Clone Zilla Boot Image findet ihr hier . Ich habe die „stable“ Variante gewählt. Als Speicherziel für das Backup habe ich auf einem anderen NAS eine SMB/CIFS Freigabe erstellt. Hier könnt ihr jede beliebige Freigabe verwenden.
Achte unbedingt darauf, im BIOS den Watchdog zu deaktivieren, sonst startet das NAS mitten in der Sicherung neu.
Nach Abschluss hatte ich ein Image von etwa 3,4 GB Größe – klein, aber mit allem Wichtigen. Damit kann ich jederzeit das Originalsystem wiederherstellen.
Schritt 2: Installation von Proxmox VE 9.0.1
Jetzt geht’s ans Eingemachte: Proxmox installieren. Ich habe die aktuelle ISO (Version 9.x) heruntergeladen und sie über mein KVM-System gemountet.
In der Regel werden euch die Netzwerkeinstellungen korrekt vorgegeben. Bei mir war es allerdings so, dass er das /23 Netzwerk scheinbar nicht richtig erkannt hat. Insofern habe ich die Settings manuell anpassen müssen. Wenn ihr ein /24 er Netzwerk habt, sollte das ohne manuelle Anpassungen funktionieren.
Nach dem Neustart kann man sich über den Browser anmelden:
https://192.168.100.2:8006
Standard-Login ist root, gefolgt vom Passwort aus der Installation.
Schritt 3: Repositories und Updates einrichten
Nach der Erstinstallation meldet sich Proxmox mit dem Hinweis auf eine fehlende Subscription. Das kann man entweder offiziell lizenzieren oder – wie ich es gemacht habe – mit einem kleinen Helfer-Script umgehen.
Danach läuft ein automatischer Update-Prozess. Wichtig: Das Terminal offen lassen – der Vorgang dauert einige Minuten. Nach dem anschließenden Reboot ist das System vollständig auf Proxmox VE 9.x.x aktualisiert.
Schritt 4: Überblick über die Hardware
Wenn du dich in der Weboberfläche anmeldest, siehst du:
Drei NVMe-Laufwerke, ideal für virtuelle Maschinen
Mehrere HDD-Bays (je nach Modell bis zu 8 Stück)
CPU-Auslastung und Speicherübersicht
Damit eignet sich das Ugreen NAS perfekt für:
Proxmox-Cluster
Virtuelle NAS-Instanzen (z. B. Unraid oder TrueNAS)
Backup-Server
Home Assistant-VMs oder Container
Schritt 6: Nächste Schritte – Unraid oder TrueNAS als VM
Jetzt, wo Proxmox läuft, kannst du entscheiden, welche NAS-Software du darauf als virtuelle Maschine nutzen willst. Ich werde im nächsten Teil zeigen, wie man Unraid oder TrueNAS installiert, Festplatten durchreicht und ein performantes NAS-System in Proxmox betreibt.
Mich interessiert deine Meinung: ➡️ Soll ich zuerst Unraid oder TrueNAS zeigen? Schreib’s mir gerne in die Youtube Kommentare!
Fazit
Mit wenigen Schritten lässt sich das Ugreen DXP8800 Plus oder auch das kleinere DXP4800 in ein vollwertiges HomeLab-System verwandeln. Statt das eingeschränkte Ugreen OS zu nutzen, erhältst du mit Proxmox:
volle Kontrolle über Hardware und Virtualisierung
flexible Backup- und Restore-Möglichkeiten
unbegrenzte Erweiterbarkeit
Ich bin beeindruckt, wie gut sich das System schlägt – trotz kompakter Bauweise. Und das Beste: Du behältst dein ursprüngliches Ugreen OS als Image, falls du es jemals zurückspielen möchtest.
Im nächsten Teil zeige ich dir die Integration eines virtuellen NAS und den Aufbau eines echten HomeLab-Konzepts, das Backup-Server, Smart-Home-Automatisierung und zentrale Datenspeicherung vereint. Auch das Thema Redundanz wird in den weiteren Teilen noch behandelt werden.
Proxmox API Home Assistant Backup – in diesem Praxis‑Guide lernst du, wie du mithilfe der Proxmox API den Zustand deiner virtuellen Maschinen abfragst, Dashboards in Home Assistant erstellst und Backups automatisierst. Statt auf HACS setzt du dabei auf REST‑Sensoren und API‑Calls, um deine VMs sicher zu überwachen und zu sichern.
Vorbereitung in Proxmox – Benutzer, Token und Rechte einrichten
Bevor du in Home Assistant loslegen kannst, musst du Proxmox entsprechend vorbereiten.
API‑Benutzer und Token anlegen
Erstelle im Proxmox DataCenter einen neuen User (z. B. homeassistant) ohne Passwort, denn wir arbeiten mit API‑Tokens. Wähle als Realm pve und lege anschließend unter API Token einen neuen Token für diesen User an. Achte darauf, Privilege Separation zu deaktivieren. Kopiere dir den Token sofort, da er später nicht mehr angezeigt wird.
Rollen konfigurieren
Für den Zugriff auf VM‑Informationen und Backups benötigen wir passende Rollen:
Lege eine neue Rolle (z. B. homeassistant-role) mit den Privilegien VM.Audit, Datastore.Audit und Datastore.AllocateSpace, VM.Backup an.
Weise diese Rolle dem User auf den benötigten Pfaden zu: dem Node (/nodes/pve-lerch) und den VMs (/vms/*).
Diese granularen Berechtigungen sorgen dafür, dass Home Assistant lediglich die benötigten Daten abrufen und einen Proxmox API Home Assistant Backup auslösen darf.
Home Assistant konfigurieren – REST‑Sensoren anlegen
Im nächsten Schritt richten wir Home Assistant ein. Falls du noch keinen File Editor installiert hast, installiere diesen im Add-on Store von Home Assistant.
REST‑Sensor für VM‑Informationen
Über den YAML‑Eintrag rest: definieren wir einen Sensor, der regelmäßig einen GET‑Request an die Proxmox API sendet. Die URL lautet beispielsweise:
Als Header gibst du Authorization: PVEAPIToken=<user>@pve!<token-id>=<token> an. Im value_template kannst du die JSON‑Antwort weiterverarbeiten und die Daten in Attributen speichern.
- resource: https://192.168.101.69:8006/api2/json/nodes/pvelerch/qemu
method: GET
headers:
Authorization: "PVEAPIToken=homeassistant@pve!proxmox=be729a21-e76b-430b-84bf-40d096d035a6"
verify_ssl: false
scan_interval: 10
sensor:
- name: "PVELerch VM Raw"
unique_id: pvelerch_vm_raw
value_template: "OK"
json_attributes:
- data
Vergiss nicht, Home Assistant neu zu starten, damit der Sensor angelegt wird. Anschließend siehst du eine Liste aller VMs als JSON‑Attribut, inklusive ihrer Namen, IDs und Status.
REST‑Sensor für LXC‑Container
Für LXC‑Container wiederholst du den Sensor mit dem Endpunkt .../lxc. Denke daran, dass nicht alle API‑Attribute identisch sind – die Belegung des Festplattenspeichers (disk-usage) steht nur bei Containern zur Verfügung.
Dashboard gestalten – Markdown‑Karte für VM‑Übersicht
Um die Daten ansprechend zu visualisieren, kannst du eine Markdown‑Karte in deinem Home‑Assistant‑Dashboard einfügen. Im Template liest du die Attribute der Sensoren aus und listest jede VM mit Name, Uptime, Status und, bei LXC‑Containern, prozentual belegtem Speicherplatz auf.
{% set vms = state_attr('sensor.pvelerch_vm_raw', 'data') or [] %}
{% set lxcs = state_attr('sensor.pvelerch_lxc_raw', 'data') or [] %}
## 🖥️ Virtuelle Maschinen (QEMU)
{% for vm in vms | sort(attribute='vmid') %}
{% set days = vm.uptime // 86400 %}
{% set hours = (vm.uptime % 86400) // 3600 %}
{% set minutes = (vm.uptime % 3600) // 60 %}
{% if days > 0 %}
{% set uptime_str = days ~ 'd ' ~ hours ~ 'h' %}
{% else %}
{% set uptime_str = hours ~ 'h ' ~ minutes ~ 'm' %}
{% endif %}
- **{{ vm.vmid }}** | {{ vm.name }} | Uptime: {{ uptime_str }} | {{ "🟢" if vm.status == "running" else "🔴" }}
{% endfor %}
## 📦 LXC-Container
{% for lxc in lxcs | sort(attribute='vmid') %}
{% set days = lxc.uptime // 86400 %}
{% set hours = (lxc.uptime % 86400) // 3600 %}
{% set minutes = (lxc.uptime % 3600) // 60 %}
{% if days > 0 %}
{% set uptime_str = days ~ 'd ' ~ hours ~ 'h' %}
{% else %}
{% set uptime_str = hours ~ 'h ' ~ minutes ~ 'm' %}
{% endif %}
- **{{ lxc.vmid }}** | {{ lxc.name }} | Disk: {{ ((lxc.disk / lxc.maxdisk) * 100) | round(1) if lxc.maxdisk and lxc.maxdisk > 0 else 'n/a' }} % | Uptime: {{ uptime_str }} | {{ "🟢" if lxc.status == "running" else "🔴" }}
{% endfor %}
So siehst du live, wenn eine VM gestoppt wird oder startet. Über Automationen kannst du sogar Benachrichtigungen verschicken, wenn sich der Status ändert. Achte darauf, dass du die Entitäten auf deine Entitätsnamen anpasst.
sensor.pvelerch_vm_raw
sensor.pvelerch_lxc_raw
Monitoring & Test – Live‑Überwachung von VMs
Teste deine Konfiguration, indem du eine VM in Proxmox stoppst und wieder startest. Die Änderungen sollten in der Markdown‑Karte nach dem nächsten Scan‑Intervall sichtbar sein. Dieses Szenario zeigt, wie zuverlässig die REST‑API im Zusammenspiel mit Home Assistant funktioniert.
Backups per API auslösen
Eines der mächtigsten Features der Proxmox API ist die Möglichkeit, Backups zu starten.
Rollen erweitern
Erweitere deine Rolle um die Berechtigungen VM.Backup und Datastore.AllocateSpace, damit der User Backups auslösen darf ( haben wir schon im ersten Schritt getan ). Vergiss nicht, auch den Storage‑Pfad (/storage) mit dieser Rolle zu verknüpfen.
REST‑Command für VZDump
In Home Assistant legst du unter rest_command: einen neuen Befehl an. Die URL endet diesmal auf /vzdump, die Methode ist POST, und als Payload übergibst du Parameter wie vmid, mode (z. B. snapshot), storage und compress.
Ein Aufruf dieses REST‑Commands startet sofort den Backup‑Job in Proxmox. Über die Home‑Assistant‑Entwicklerwerkzeuge kannst du den Befehl testen. In einer Automation oder auf einem Button platziert, kannst du einen Proxmox API Home Assistant Backup sogar zeit‑ oder ereignisgesteuert auslösen.
Fazit & Ausblick
Mit ein wenig Konfigurationsaufwand lässt sich die Proxmox API hervorragend in Home Assistant integrieren. Du kannst den Zustand deiner VMs und LXC‑Container überwachen, in Dashboards visualisieren und sogar Backups per Knopfdruck starten. Nutze diese Lösung als Grundlage für weitere Automatisierungen, zum Beispiel um Benachrichtigungen zu verschicken oder externe Dienste einzubinden.
In diesem Video zeige ich euch, wie ihr unter Proxmox ( LXC oder VM), oder einem separaten PC Paperless NGX einrichtet. Da es recht viele Dinge dabei zu berücksichtigen gibt, habe ich euch dafür 3 Skripte erstellt.
Installation
Backup
Restore
Mit diesen Skripten wird euch fast die gesamte Arbeit abgenommen.
Möchtest du Paperless ngx als Home Assistant Addon installieren, findest du hier eine Anleitung dazu: https://youtu.be/wCiSkHQtYEE
Wichtiger Hinweis ! Bitte unbedingt beachten!
Ich habe die Freigabenamen umbenannt. Im Video bin ich darauf nochmal kurz eingegangen. Die Freigaben heißen nun:
consume
backup
restore
D.h. , wenn unter Windows die Freigaben gemountet werden, müssen diese Freigabenamen verwendet werden !
Skript install_paperless.sh
Hinweis: Die Skripte wurden auf Postgres 17, Redis 8 und Gotenberg „latest“ aktualisiert ( 26.10.2025)
#!/bin/bash
set -euo pipefail
# Funktion zur sicheren Passworteingabe mit Bestätigung
function prompt_for_password() {
local password password_confirm
# Falls PAPERLESS_PASSWORD eingegeben wird, zusätzliche Erklärung ausgeben
if [[ "$1" == "PAPERLESS_PASSWORD" ]]; then
echo -e "\n💡 Hinweis: Dieses Passwort wird für den Linux-Benutzer 'paperless' und den Samba-Server verwendet."
echo -e "Es wird für den Zugriff auf freigegebene Samba-Ordner benötigt.\n"
fi
while true; do
echo -e "\n🔒 Bitte geben Sie das Passwort für **$1** ein:"
read -s password
echo -e "\n🔒 Bitte bestätigen Sie das Passwort:"
read -s password_confirm
if [[ "$password" == "$password_confirm" ]]; then
echo -e "\n✅ Passwort erfolgreich gesetzt für **$1**.\n"
eval "$2='$password'"
break
else
echo -e "\n❌ Die Passwörter stimmen nicht überein. Bitte erneut eingeben.\n"
fi
done
}
# Funktion zur Eingabe des Admin-Benutzernamens mit Standardwert
function prompt_for_admin_user() {
echo -e "\n👤 Bitte geben Sie den **Admin-Benutzernamen** ein (Standard: paperless):"
read admin_user_input
ADMIN_USER="${admin_user_input:-paperless}"
echo -e "\n✅ Admin-Benutzer wurde auf **'$ADMIN_USER'** gesetzt.\n"
}
# Passwörter abfragen
prompt_for_password "PAPERLESS_PASSWORD" PAPERLESS_PASSWORD
prompt_for_admin_user
prompt_for_password "ADMIN_PASSWORD" ADMIN_PASSWORD
# Weitere Konfigurationen
SAMBA_PASSWORD="$PAPERLESS_PASSWORD"
DB_PASSWORD="paperless"
# System aktualisieren und benötigte Pakete installieren
update_and_install_dependencies() {
echo "Aktualisiere Paketliste und installiere benötigte Pakete..."
sudo apt update
sudo apt install -y apt-transport-https curl jq gnupg openssh-server samba samba-common-bin
}
# Docker-Repository hinzufügen
add_docker_repo() {
echo "Füge Docker GPG-Schlüssel und Repository hinzu..."
sudo mkdir -p /etc/apt/keyrings
if [[ ! -f /etc/apt/keyrings/docker.gpg ]]; then
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
fi
. /etc/os-release
DOCKER_REPO="deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $VERSION_CODENAME stable"
echo "$DOCKER_REPO" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
}
# Paperless-Benutzer und Gruppe anlegen
ensure_paperless_user_and_group() {
if ! getent group paperless &>/dev/null; then
echo "Erstelle Gruppe 'paperless' mit GID 1002..."
sudo groupadd -g 1002 paperless
fi
if ! id -u paperless &>/dev/null; then
echo "Erstelle Benutzer 'paperless' mit UID 1002 und GID 1002..."
sudo useradd -m -s /bin/bash -u 1002 -g paperless paperless
echo "paperless:$PAPERLESS_PASSWORD" | sudo chpasswd
fi
}
# Docker installieren
install_docker() {
if ! command -v docker &>/dev/null; then
echo "Docker wird installiert..."
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
fi
if ! groups paperless | grep -q "\bdocker\b"; then
echo "Füge Benutzer 'paperless' zur Docker-Gruppe hinzu..."
sudo usermod -aG docker paperless
fi
}
# Samba Konfiguration
configure_samba() {
# Backup der Original-Samba-Konfiguration
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo mkdir -p /data/paperless/{backup,restore}
sudo chown -R paperless:paperless /data/paperless/
sudo chmod -R 770 /data/paperless/
# Für den Share [consume] soll nur der Ordner /data/paperless/consume freigegeben werden:
if ! grep -q "^\[consume\]" /etc/samba/smb.conf; then
sudo tee -a /etc/samba/smb.conf > /dev/null <<'EOF'
[consume]
comment = Paperless Daten
path = /data/paperless/consume
browsable = yes
writable = yes
guest ok = no
create mask = 0770
directory mask = 0770
valid users = paperless
EOF
fi
# Share für Backup
if ! grep -q "^\[backup\]" /etc/samba/smb.conf; then
sudo tee -a /etc/samba/smb.conf > /dev/null <<'EOF'
[backup]
comment = Paperless Backup Daten
path = /data/paperless/backup
browsable = yes
writable = yes
guest ok = no
create mask = 0770
directory mask = 0770
valid users = paperless
EOF
fi
# Share für Restore
if ! grep -q "^\[restore\]" /etc/samba/smb.conf; then
sudo tee -a /etc/samba/smb.conf > /dev/null <<'EOF'
[restore]
comment = Paperless Restore Daten
path = /data/paperless/restore
browsable = yes
writable = yes
guest ok = no
create mask = 0770
directory mask = 0770
valid users = paperless
EOF
fi
sudo systemctl restart smbd
echo "Samba Shares [consume], [backup] und [restore] wurden konfiguriert."
(echo "$SAMBA_PASSWORD"; echo "$SAMBA_PASSWORD") | sudo smbpasswd -a paperless -s
sudo systemctl restart smbd
}
# Docker-Compose-Datei erstellen
deploy_containers() {
echo "Erstelle docker-compose.yml im Verzeichnis von 'paperless'..."
sudo mkdir -p /home/paperless
cat <<EOL | sudo tee /home/paperless/docker-compose.yml > /dev/null
services:
broker:
image: redis:8
container_name: broker
restart: unless-stopped
volumes:
- /data/paperless/redis/_data:/data
db:
image: postgres:17
container_name: db
restart: unless-stopped
volumes:
- /data/paperless/postgresql/_data:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: $DB_PASSWORD
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
container_name: webserver
restart: unless-stopped
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- "8001:8000"
volumes:
- /data/paperless/consume:/usr/src/paperless/consume
- /data/paperless/data:/usr/src/paperless/data
- /data/paperless/media:/usr/src/paperless/media
- /data/paperless/export:/usr/src/paperless/export
environment:
PAPERLESS_ADMIN_USER: $ADMIN_USER
PAPERLESS_ADMIN_PASSWORD: $ADMIN_PASSWORD
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
PAPERLESS_OCR_LANGUAGE: deu
PAPERLESS_TIME_ZONE: Europe/Berlin
PAPERLESS_CONSUMER_ENABLE_BARCODES: "true"
PAPERLESS_CONSUMER_ENABLE_ASN_BARCODE: "true"
PAPERLESS_CONSUMER_BARCODE_SCANNER: ZXING
PAPERLESS_EMAIL_TASK_CRON: '*/10 * * * *'
USERMAP_UID: "1002"
USERMAP_GID: "1002"
gotenberg:
image: gotenberg/gotenberg:latest
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-javascript=false"
- "--chromium-allow-list=.*"
tika:
image: ghcr.io/paperless-ngx/tika:latest
container_name: tika
restart: unless-stopped
EOL
cd /home/paperless
sudo docker compose up -d
}
# Hauptprogramm
update_and_install_dependencies
add_docker_repo
ensure_paperless_user_and_group
install_docker
configure_samba
deploy_containers
sleep 60
sudo chown -R paperless:paperless /data/paperless
# Lokale IP-Adresse ermitteln
LOCAL_IP=$(hostname -I | awk '{print $1}')
echo -e "\n🚀 **Paperless ist jetzt bereit!**"
echo -e "🔗 **Zugriff im Browser:** http://$LOCAL_IP:8001\n"
echo -e "🔗 ** Bitte einmal neu booten"
Um die Scripte unter Linux vom Webserver zu laden, kannst du auch folgenden Befehl verwenden.
#!/bin/bash
# Skript: backup.sh
# Dieses Skript führt ein Backup über docker-compose aus und verschiebt anschließend die Backup-Datei(en).
echo "Starte Backup: Ein Backup wird jetzt durchgeführt..."
# Wechsel in das Verzeichnis, in dem sich die docker-compose Datei befindet
cd /home/paperless || { echo "Fehler: Verzeichnis /home/paperless nicht gefunden."; exit 1; }
# Führe den docker-compose Befehl aus
sudo docker compose exec webserver document_exporter ../export -z
# Prüfe, ob der Befehl erfolgreich war
if [ $? -eq 0 ]; then
echo "Backup erfolgreich abgeschlossen."
# Prüfen, ob das Quellverzeichnis existiert
if [ -d "/data/paperless/export" ]; then
# Sicherstellen, dass das Zielverzeichnis existiert (falls nicht, wird es angelegt)
mkdir -p /data/paperless/backup
# Prüfen, ob im Quellverzeichnis Dateien vorhanden sind
if compgen -G "/data/paperless/export/*" > /dev/null; then
echo "Verschiebe Backup-Datei(en) nach /data/paperless/backup..."
mv /data/paperless/export/* /data/paperless/backup/
if [ $? -eq 0 ]; then
echo "Datei(en) erfolgreich verschoben."
else
echo "Fehler beim Verschieben der Datei(en)."
fi
else
echo "Keine Datei(en) im Verzeichnis /data/paperless/export gefunden."
fi
else
echo "Quellverzeichnis /data/paperless/export existiert nicht."
fi
else
echo "Fehler beim Backup."
fi
Script restore.sh
#!/bin/bash
# Skript: restore.sh
# Dieses Skript stellt ein Backup wieder her.
set -e
echo "Starte Wiederherstellung: Das Backup wird nun wiederhergestellt..."
DOCKER_COMPOSE_FILE="/home/paperless/docker-compose.yml"
# Funktion zum Auskommentieren der Umgebungsvariablen in docker-compose.yml
comment_out_env_vars() {
echo "Kommentiere PAPERLESS_ADMIN_USER und PAPERLESS_ADMIN_PASSWORD in der docker-compose.yml aus..."
# Erstelle ein Backup der Datei, falls noch nicht gesichert
if [ ! -f "${DOCKER_COMPOSE_FILE}.bak" ]; then
sudo cp "$DOCKER_COMPOSE_FILE" "${DOCKER_COMPOSE_FILE}.bak"
fi
# Setze sicherheitshalber Schreibrechte
sudo chmod u+w "$DOCKER_COMPOSE_FILE"
# Füge das `#` nur hinzu, falls es noch nicht vorhanden ist
sudo sed -i 's/^\( *PAPERLESS_ADMIN_USER: \)/#\1/' "$DOCKER_COMPOSE_FILE"
sudo sed -i 's/^\( *PAPERLESS_ADMIN_PASSWORD: \)/#\1/' "$DOCKER_COMPOSE_FILE"
echo "Variablen erfolgreich auskommentiert."
}
# Variablen auskommentieren, bevor das Skript weiterläuft
comment_out_env_vars
# Verzeichnisse definieren
BACKUP_DIR="/data/paperless/restore"
EXPORT_DIR="/data/paperless/export"
DIRECTORIES_TO_DELETE=(
"/data/paperless/consume"
"/data/paperless/export"
"/data/paperless/media"
"/data/paperless/postgresql"
"/data/paperless/redis"
)
# Prüfe, ob das Backup-Verzeichnis existiert
if [ ! -d "$BACKUP_DIR" ]; then
echo "Fehler: Backup-Verzeichnis $BACKUP_DIR existiert nicht."
exit 1
fi
# Schritt 1: Docker Compose herunterfahren
echo "Wechsle in /home/paperless und fahre Docker Compose herunter..."
cd /home/paperless || { echo "Fehler: Verzeichnis /home/paperless nicht gefunden."; exit 1; }
sudo docker compose down
# Schritt 2: Lösche die angegebenen Verzeichnisse
echo "Lösche die folgenden Verzeichnisse:"
for dir in "${DIRECTORIES_TO_DELETE[@]}"; do
echo " $dir"
if [ -d "$dir" ]; then
sudo rm -rf "$dir"
echo " -> $dir gelöscht."
else
echo " -> $dir existiert nicht, überspringe..."
fi
done
# Schritt 3: Erstelle das Export-Verzeichnis neu
echo "Erstelle das Verzeichnis $EXPORT_DIR..."
sudo mkdir -p "$EXPORT_DIR"
if [ $? -ne 0 ]; then
echo "Fehler: Konnte $EXPORT_DIR nicht erstellen."
exit 1
fi
# Schritt 4: Suche nach einer Archivdatei im Backup-Verzeichnis (z. B. *.zip)
ARCHIVE_FILE=$(find "$BACKUP_DIR" -maxdepth 1 -type f -name "*.zip" | head -n 1)
if [ -z "$ARCHIVE_FILE" ]; then
echo "Fehler: Keine Archivdatei (*.zip) im Backup-Verzeichnis gefunden."
exit 1
fi
echo "Gefundene Archivdatei: $ARCHIVE_FILE"
# Schritt 5: Kopiere die Archivdatei in das Export-Verzeichnis
echo "Kopiere die Archivdatei nach $EXPORT_DIR..."
sudo cp "$ARCHIVE_FILE" "$EXPORT_DIR"
if [ $? -ne 0 ]; then
echo "Fehler beim Kopieren der Archivdatei."
exit 1
fi
# Schritt 6: Wechsel in das Export-Verzeichnis und entpacke die Archivdatei
cd "$EXPORT_DIR" || { echo "Fehler: Konnte nicht in $EXPORT_DIR wechseln."; exit 1; }
# Überprüfe, ob 'unzip' installiert ist und installiere es gegebenenfalls
if ! command -v unzip >/dev/null 2>&1; then
echo "Das Paket 'unzip' ist nicht installiert. Versuche, es zu installieren..."
if command -v apt-get >/dev/null 2>&1; then
sudo apt-get update && sudo apt-get install -y unzip
elif command -v yum >/dev/null 2>&1; then
sudo yum install -y unzip
else
echo "Kein unterstützter Paketmanager gefunden. Bitte installiere 'unzip' manuell."
exit 1
fi
fi
# Entpacken der Archivdatei
ARCHIVE_BASENAME=$(basename "$ARCHIVE_FILE")
echo "Entpacke $ARCHIVE_BASENAME..."
unzip "$ARCHIVE_BASENAME"
if [ $? -ne 0 ]; then
echo "Fehler beim Entpacken von $ARCHIVE_BASENAME."
exit 1
fi
echo "Archiv erfolgreich entpackt."
# Optional: Entferne die kopierte Archivdatei, falls sie nicht mehr benötigt wird
# sudo rm "$ARCHIVE_BASENAME"
# Schritt 7: Starte Docker Compose Container neu
echo "Wechsle zurück nach /home/paperless und starte die Container..."
cd /home/paperless || { echo "Fehler: Verzeichnis /home/paperless nicht gefunden."; exit 1; }
sudo -u paperless docker compose up -d
if [ $? -ne 0 ]; then
echo "Fehler: Docker Compose konnte nicht gestartet werden."
exit 1
fi
sudo chown -R paperless:paperless /data/paperless/consume /data/paperless/media
sudo chmod -R 775 /data/paperless/consume /data/paperless/media
sudo chown paperless:paperless /home/paperless/docker-compose.yml
sleep 60
cd /home/paperless
# Schritt 8: Führe den Importbefehl aus
echo "Führe Importbefehl aus..."
sudo docker compose exec webserver document_importer ../export
sudo chown -R paperless:paperless /data/paperless
if [ $? -eq 0 ]; then
echo "Import erfolgreich abgeschlossen."
else
echo "Fehler beim Import."
exit 1
fi
echo " Bitte einmal das System neu booten ! "
echo "---------------------------ENDE--------------------------------"
Upgrade Postgres 16 zu Postgres 17 ( bei vorhandener Installation )
ACHTUNG: Bitte zuvor unbedingt ein Backup der virtuellen Maschine oder des LXC Containers machen !
Zunächst begebt euch im Container oder der VM in das Verzeichnis /home/paperless. Dort findet ihr eine Datei docker-compose.yml.
Als ersten Schritt müssen wir nun die Docker Container beenden.
docker compose down
mit nano docker-compose.yml kontrollieren wir die Eintragungen der Compose Datei. Dabei ist folgender Abschnitt relevant:
Hier sieht man , dass aktuell das Image postgres:16 verwendet wird. Das brauchen wir für den Migrationsprozess in genau dieser Form. Merkt euch zudem auch den POSTGRES_USER , den brauchen wir für den nächsten Schritt.
Mit Strg+X beenden wir den Dateieditor und begeben uns in die Konsole. Dort geben wir nun folgenden Befehl zum starten der Datenbank ein:
docker compose up -d db
Im nächsten Schritt sichern wir uns nun die aktuelle Datenbank:
docker exec -t db pg_dumpall -U DATENBANKUSER > all.sql
Bei DATENBANKUSER müsst ihr den User aus eurer docker-compose.yml eintragen. Im Beispiel ist es der User paperless.
Nachdem die Sicherung erfolgt ist, beenden wir erneut die Container:
Diese Ergänzung zeigt eine einfache, robuste 1:1-Sicherung und Wiederherstellung einer Paperless-ngx-Instanz – ohne export/import und ohne Manifest-Probleme. Geeignet für Umzüge auf eine neue LXC/VM und für regelmäßige Vollbackups.
Vorteile:
Vollständiges Abbild von /data/paperless (Dokumente, Postgres, Redis, Konfiguration)
Versionsunabhängig (kein Versions-Matching beim Import nötig)
Schnelle Wiederherstellung des exakten Zustands
Wichtig: Nach dem Restore sind die alten Benutzer & Passwörter der Quellinstanz wieder aktiv – auch wenn beim Neuaufsetzen andere Zugangsdaten vergeben wurden.
Ein komprimiertes Archiv wird erstellt und in /data/paperless/backup abgelegt.
Container werden automatisch neu gestartet.
4) Backup übertragen
Das erzeugte Archiv (z. B. paperless-backup-YYYY-MM-DD_HH-MM.tar.gz) auf die Zielinstanz kopieren (z. B. mit scp oder rsync).
B) Restore auf der Zielinstanz durchführen
1) Zielumgebung bereitstellen
Paperless auf der Zielinstanz wie gewohnt mit dem Install-Skript einrichten (Compose/ENV). Hinweis: Nach dem Restore gelten wieder die alten Credentials aus der gesicherten Instanz.
2) Backup-Datei platzieren
Backup nach /home/paperless kopieren. Nicht nach /data/paperless/restore legen – das Restore-Skript löscht/data/paperless vollständig.
3) Restore-Skript laden und ausführbar machen
cd /root
wget https://smarthomeundmore.de/wp-content/uploads/restore_new.sh
chmod +x restore_new.sh
An dieser Stelle auch ein herzliches Dankeschön an Murat, der mich nach einem meiner YouTube-Videos auf eine interessante Ergänzung aufmerksam gemacht hat.
Er hatte bei der Nutzung des ASN-QR-Code-Label-Generators von Tobias Maier Schwierigkeiten, die QR-Codes korrekt und passgenau zu drucken. Deshalb hat er kurzerhand ein eigenes Projekt gestartet, mit dem sich mehr Kontrolle über den Druck realisieren lässt:
Vielleicht ist das auch für dich hilfreich, wenn du ähnliche Probleme beim Druck hast. Murat freut sich sicherlich über Feedback und Tests aus der Community.
Home Assistant Rest API Sensoren
Im Video habe ich auch gezeigt, wie man einen Sensor in Home Assistant erstellt, um sich die Anzahl der Dokumente im Posteingang anzeigen zu lassen. Die Informationen dazu habe ich von Flemming´s Blog, wo einige Beispielsensoren zu finden sind. Tolle Arbeit und sehr gut erklärt.
Ein weiterer Scanner, der häufiger im Kontext mit paperless-ngx genannt wird, ist der Brother ADS-1700W. Da ich diesen allerdings nicht selber getestet habe, kann ich keine direkte Empfehlung dazu aussprechen.
Solltest du in den Scripten noch Fehler finden, kannst du mir gerne deine Korrekturen als Mail zukommen lassen. Meine Kontakdaten findest du im Impressum.
In der Welt der NAS-Systeme ist TrueNAS eine meiner bevorzugten Optionen, die sowohl für Einsteiger als auch für erfahrene Nutzer viele Möglichkeiten bietet. In diesem Artikel führe ich dich durch die Schritte zur Installation und Konfiguration von TrueNAS, damit du dein eigenes NAS-System optimal nutzen kannst.
Ich möchte euch heute einen allgemeinen Amazon-Link teilen, über den ihr eine Vielzahl von Produkten entdecken könnt. Egal, ob ihr nach Smart Home-Geräten, Gadgets oder anderen nützlichen Artikeln sucht, Amazon hat für jeden etwas zu bieten.
Wenn ihr über diesen Link einkauft, unterstützt ihr meinen Kanal, ohne dass es für euch zusätzliche Kosten verursacht. Das hilft mir, weiterhin spannende Inhalte für euch zu erstellen!
Ich möchte dir zeigen, wie ich TrueNAS installiere und welche Funktionen es bietet, um mein Smart Home zu unterstützen. Dabei konzentriere ich mich auf die Installation und Grundkonfiguration von TrueNAS.
Installation von TrueNAS
Ich starte mit der Installation von TrueNAS, einem wichtigen Schritt, um die leistungsstarken Funktionen des Systems nutzen zu können. Es gibt verschiedene Versionen von TrueNAS, darunter TrueNAS Core und TrueNAS Scale, die ich kurz erläutere, um dir bei der Auswahl der richtigen Version zu helfen.
Der Installationsprozess
Ich zeige dir, wie ich TrueNAS Scale von einem USB-Stick installiere, und erkläre, wie ich den USB-Stick mit dem TrueNAS-Image bespiele. Dieser Prozess ist einfach und effizient, um das System schnell in Betrieb zu nehmen. Anschließend führe ich die Installation auf der Boot-Festplatte durch.
Wichtige Informationen
Ich spreche über die Hardware-Anforderungen und -Optionen, die du für dein TrueNAS-System in Betracht ziehen solltest. Zudem zeige ich dir, wie ich einen ZFS-Pool erstelle, um die Datenspeicherung zu optimieren, sowie die erste Anmeldung bei TrueNAS und die Benutzeroberfläche.
Erweiterungsmöglichkeiten
Ich stelle einige nützliche Apps vor, die ich in TrueNAS verwende, um die Funktionalität meines Systems zu erweitern. Ein weiteres Highlight ist die Installation von Home Assistant als virtuelle Maschine (VM), um mein Smart Home zu steuern und zu automatisieren. Ich erkläre dabei auch, wie ich Home Assistant Supervised auf TrueNAS installiere, um alle Vorteile der Automatisierung zu nutzen.
Zusätzlich gehe ich auf die Nachteile von TrueNAS ein, damit du eine fundierte Entscheidung treffen kannst, ob es die richtige Lösung für deine Bedürfnisse ist. Außerdem erkläre ich, wie ich USB-Passthrough einrichte, um meine Smart Home-Geräte direkt über TrueNAS zu integrieren, und zeige dir, wie ich SMB-Freigaben einrichte, damit du problemlos auf deine Daten zugreifen kannst.
Fazit
In diesem Artikel habe ich die wichtigsten Punkte zur Installation und Konfiguration von TrueNAS zusammengefasst. Alle wichtigen Details werden im Video ausführlich gezeigt, sodass du den gesamten Prozess nachvollziehen kannst. Ich betone die Vorteile, die TrueNAS für mein Smart Home bieten kann, sowie die Nachteile, die du berücksichtigen solltest.
Mit dieser Anleitung bist du bestens gerüstet, um dein eigenes TrueNAS-System aufzubauen und die Vorteile zu nutzen, die es dir für dein Smart Home bietet. Viel Erfolg bei deiner Installation!
Shell Kommandos zur Installation von Home Assistant
sudo wget https://github.com/home-assistant/operating-system/releases/download/13.1/haos_ova-13.1.qcow2.xz # Download des aktuellen HA Images ( bei euch ggf. eine andere Version ! )
sudo unxz haos_ova-13.1.qcow2.xz
sudo qemu-img convert -O raw haos_ova-13.1.qcow2 /dev/zvol/ZFS+Pool/homeassistant
Wichtiger Hinweise!
Im Video habe ich die Einblendung an dieser Stelle falsch gemacht. Das was in der Konsole angezeigt wird ist korrekt . Die Einblendung zeigt in meinem Setup aus dem Video den falschen Pfad an.
In diesem Video zeige ich euch, wie ihr die Hetzner Storage Box für Offsite Backups von Home Assistant einrichten könnt. Zusätzlich erkläre ich, wie ihr die Storage Box in Proxmox VE integrieren könnt, ohne dabei die Konsole nutzen zu müssen. So könnt ihr eure Backups und Speicherkapazitäten ganz einfach verwalten, auch wenn ihr keine tiefergehenden Linux-Kenntnisse habt.
Viel Spaß beim Anschauen! 😊
Ich möchte euch heute einen allgemeinen Amazon-Link teilen, über den ihr eine Vielzahl von Produkten entdecken könnt. Egal, ob ihr nach Smart Home-Geräten, Gadgets oder anderen nützlichen Artikeln sucht, Amazon hat für jeden etwas zu bieten.
Wenn ihr über diesen Link einkauft, unterstützt ihr meinen Kanal, ohne dass es für euch zusätzliche Kosten verursacht. Das hilft mir, weiterhin spannende Inhalte für euch zu erstellen!
Erfahre, wie du den Proxmox Backup Server auf deinem Synology NAS als virtuelle Maschine installierst. Diese Anleitung beinhaltet die Grundkonfiguration, zeigt die nahtlose Integration unter Proxmox VE und erklärt die effektive Nutzung der Prune Settings. Entdecke detaillierte Schritte für ein reibungsloses Backup und Restore.
Home Assistant als virtuelle Maschine unter Proxmox 8.1 installieren ist schwierig ? Ist es nicht… Wie das mit einem Mini-PC in meinem Fall der Orbsmart AW-13 mit wenigen einfachen Schritten durchgeführt werden kann, zeigt dieses Video. Dabei werden die Installationsschritte für Proxmox 8.1, Installation einer Home Assistant VM, der Umgang mit mit einem EMMC Speicher als Hauptspeicher und auch das Thema Backup betrachtet.
Leistungsstarker & lüfterloser 4K Mini-PC auf Windows 11 Pro Basis inklusive 2.5″ Festplattenschacht – flexibel einsetzbar als stromsparender Büro-PC, Medienzentrale, Streaming-Client etc.
Vollwertiges Windows 11 Professional vorinstalliert / Auflösung bis zu 4K ULTRA HD (2160p@60Hz) möglich
Aktuelle Intel Chip-Generation „Jasper Lake“: Quad-Core CPU N5100 (Burst freq: 2.80 GHz) / 16GB DDR4-RAM / 256GB int. Speicher / Autostart-Funktion (direktes Hochfahren nach Stromzufuhr), WOL + PXE + RTC-Support
Dank HTML5 & Silverlight Support volle Kompatibilität zu allen IPTV Streaming Inhalte (Youtube, Netflix, Prime Video, Disney+, Skygo, Magenta TV & Co.) – Webrowsing wie an jedem Windows PC
【Leistungsstarker Prozessor】 AMD Ryzen 9 7940HS, 8 Kerne/16 Threads (16 MB Cache, bis zu 5,2 GHz Taktfrequenz), gefertigt im 4-Nanometer-Prozess von TSMC, AMD Radeon 780M (Grafikfrequenz 2,8 GHz), ausgestattet mit AMD Ryzen AI-Technologie, die eine effiziente und energieeffiziente Unterstützung für verschiedene KI-Anwendungen bietet, ohne die Leistung von CPU und GPU zu beeinträchtigen.
Es ist nicht zu empfehlen Proxmox auf einem EMMC Speicher zu installieren. Viele Schreibzugriffe können die Lebensdauer eines EMMC Speichers stark beeinträchtigen. Deshalb unterbindet die Proxmox Installation die Installation auf einem EMMC Speicher. Es gibt eine Möglichkeit das dennoch zu tun. Wie das funktioniert, wird im Video erklärt. Hier die dazugehörigen Befehle:
nano /usr/share/perl5/Proxmox/Sys/Block.pm
Im Editor muss dann die Funktion sub get_partition_dev angepasst werden. Geht dazu zu dieser Stelle der Datei Block.pm
} elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) {
return "${dev}p$partnum";
} else {
die "unable to get device for partition $partnum on device $dev\n";
}
Ändert diesen Teil, wie in der nächsten Abbildung gezeigt (Zeile 3+4 ergänzen! ).
} elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) {
return "${dev}p$partnum";
} elsif ($dev =~ m|^/dev/mmcblk\d+$|) {
return "${dev}p$partnum";
} else {
die "unable to get device for partition $partnum on device $dev\n";
}
Um Home Assistant als VM über ein Script einfach und schnell zu installieren, öffnet in eurem PVE-Node die Shell und gebt dort folgenden Befehl ein. Es handelt sich bei den Skripten um die Proxmox-VE Helper Scripts.
Nachdem ihr diesen Befehl eingegeben habt, wird das Script heruntergeladen und ausgeführt. Es wird automatisch eine VM mit Home Assistant und allen nötigen Grundeinstellungen angelegt.
Hypervisor Monitoring ? Mit Home Assistant lässt sich komfortabel der Status von Proxmox Nodes , VMs und LXC Containern überwachen und sogar steuern. Eine VM fällt aus, kann mit der Hausautomatisierungslösung Home Assistant schnell eine Nachricht geschickt werden oder ein Prozess angestoßen werden um das betroffene System wieder automatisch zu starten. So lassen sich einfach die Zustände der angebundenen Speichergeräte, CPU und RAM Auslastung erfassen. Du fragst dich wie das funktioniert ? Dann schau dieses Video 🙂
Leistungsstarker & lüfterloser 4K Mini-PC auf Windows 11 Pro Basis inklusive 2.5″ Festplattenschacht – flexibel einsetzbar als stromsparender Büro-PC, Medienzentrale, Streaming-Client etc.
Vollwertiges Windows 11 Professional vorinstalliert / Auflösung bis zu 4K ULTRA HD (2160p@60Hz) möglich
Aktuelle Intel Chip-Generation „Jasper Lake“: Quad-Core CPU N5100 (Burst freq: 2.80 GHz) / 16GB DDR4-RAM / 256GB int. Speicher / Autostart-Funktion (direktes Hochfahren nach Stromzufuhr), WOL + PXE + RTC-Support
Dank HTML5 & Silverlight Support volle Kompatibilität zu allen IPTV Streaming Inhalte (Youtube, Netflix, Prime Video, Disney+, Skygo, Magenta TV & Co.) – Webrowsing wie an jedem Windows PC
【Leistungsstarker Prozessor】 AMD Ryzen 9 7940HS, 8 Kerne/16 Threads (16 MB Cache, bis zu 5,2 GHz Taktfrequenz), gefertigt im 4-Nanometer-Prozess von TSMC, AMD Radeon 780M (Grafikfrequenz 2,8 GHz), ausgestattet mit AMD Ryzen AI-Technologie, die eine effiziente und energieeffiziente Unterstützung für verschiedene KI-Anwendungen bietet, ohne die Leistung von CPU und GPU zu beeinträchtigen.