externe USB im PM Host an VM und / oder LXC durchschleifen

Ist die Frage was genau du damit machen willst.
Wenn nicht mehrere Gastsysteme auf die selben Daten zugreifen sollen, dann könntest du die USB Disk einfach als weiteren VM/LXC Storage hinzufügen. Dadrauf dann neue virtuelle Disks für deine Gastsysteme erstellen.

Willst du aber so etwas wie einen Gemeinsamen Ordner auf den mehrere Gastsysteme zugreifen können, dann musst du auf Dateiebene anstatt auf Blockebene arbeiten.
Im Falle von LXCs kannst du z.B. Bind-Mounts benutzen um einen Ordner vom Host an einen LXC durchzureichen. Ist wegen dem User-Remapping bei unprivilegierten LXCs aber nicht so ganz anfängerfreundlich. Siehe hier für eine Anleitung: https://pve.proxmox.com/wiki/Unprivileged_LXC_containers

Mit VMs kannst du keine Bind-Mounts benutzen, da sich diese weder Hardware noch Kernel mit dem PVE Host teilen und voll isoliert sind. Da nutzt man dann am besten SMB oder NFS Netzwerkfreigaben. Man müsste also entweder den PV Host zum NAS umfunktionieren, damit der PVE Host per NFS/SMB einen Ordner auf der USB Disk über das Netzwerk mit VMs teilen kann. Oder man setzt sich einen NAS LXC/VM auf, reicht der die USB Disk durch und lässt diese dann die Ordner über das Netzwerk teilen.
 
Ist die Frage was genau du damit machen willst.
Wenn nicht mehrere Gastsysteme auf die selben Daten zugreifen sollen, dann könntest du die USB Disk einfach als weiteren VM/LXC Storage hinzufügen. Dadrauf dann neue virtuelle Disks für deine Gastsysteme erstellen.

Willst du aber so etwas wie einen Gemeinsamen Ordner auf den mehrere Gastsysteme zugreifen können, dann musst du auf Dateiebene anstatt auf Blockebene arbeiten.
Im Falle von LXCs kannst du z.B. Bind-Mounts benutzen um einen Ordner vom Host an einen LXC durchzureichen. Ist wegen dem User-Remapping bei unprivilegierten LXCs aber nicht so ganz anfängerfreundlich. Siehe hier für eine Anleitung: https://pve.proxmox.com/wiki/Unprivileged_LXC_containers

Mit VMs kannst du keine Bind-Mounts benutzen, da sich diese weder Hardware noch Kernel mit dem PVE Host teilen und voll isoliert sind. Da nutzt man dann am besten SMB oder NFS Netzwerkfreigaben. Man müsste also entweder den PV Host zum NAS umfunktionieren, damit der PVE Host per NFS/SMB einen Ordner auf der USB Disk über das Netzwerk mit VMs teilen kann. Oder man setzt sich einen NAS LXC/VM auf, reicht der die USB Disk durch und lässt diese dann die Ordner über das Netzwerk teilen.

Guten Morgen Dunuin,

die Lösung mit virtuellen Disks fällt flach.

Die beiden anderen Lösungen hören sich gut an. Wie ist das denn, kann ich auf dem PM7 Host einen NFS Server installieren? Dann könnte ich auf der VM den NFS Client installieren uns die USB via /etc/fstab einbinden. Kann ich dann parallel noch in LXCs mit Bind-Mounts arbeiten?

In die Anleitung werde ich mich mal einlesen, werde aber vermutlich noch Rückfragen haben.

Vielen Dank erst mal.

Gruß H-Blogx
 
Die beiden anderen Lösungen hören sich gut an. Wie ist das denn, kann ich auf dem PM7 Host einen NFS Server installieren?
Ja. Du kannst mit PVE7 alles machen was du mit einem normalen Debian 11 kannst.
Dann könnte ich auf der VM den NFS Client installieren uns die USB via /etc/fstab einbinden.
Jup, oder wenn du das ganze noch besser isoliert haben willst könntest du die USB HDD auch per fstab einbinden, dann einen NFS server LXC erstellen, dem NFS-Server-LXC per bind-mount die USB HDD durchreichen. Dann hast du den NFS Server im LXC und kannst ihn zusammen mit deinen anderen Gästen sichern und hast weniger Aufwand, wenn du mal PVE neu aufsetzen musst, weil dann dein PVE Host selbst weniger modifiziert ist.
Kann ich dann parallel noch in LXCs mit Bind-Mounts arbeiten?
Ja.
 
Ja. Du kannst mit PVE7 alles machen was du mit einem normalen Debian 11 kannst.

Jup, oder wenn du das ganze noch besser isoliert haben willst könntest du die USB HDD auch per fstab einbinden, dann einen NFS server LXC erstellen, dem NFS-Server-LXC per bind-mount die USB HDD durchreichen. Dann hast du den NFS Server im LXC und kannst ihn zusammen mit deinen anderen Gästen sichern und hast weniger Aufwand, wenn du mal PVE neu aufsetzen musst, weil dann dein PVE Host selbst weniger modifiziert ist.

Ja.
Ok, jetzt muss ich nochmals nachfragen, damit ich es korrekt verstanden habe.

1.) Die USB Platte via /etc/fstab am PM7 Host einbinden.

2.) Einen neuen LXC aufsetzen. Auf diesem einen NFS Server aufsetzen. Die USB Platte vom Host via Bind-Mount in den LXC "mounten". Dann die gemountete USB Platte auf dem NFS Server zur Verfügung stellen.

3.) Auf der VM den NFS Client installieren und die USB Platte vom NFS Server abgreifen.

4.) Frage: Wie wird jetzt die USB Platte von einem weiteren LXC angesprochen. Via Bind-Mount zum PM7 Host, oder gibt es da eine LXC zu LXC Verbindung?

Gruß und Dank

H-Blogx
 
Ok, jetzt muss ich nochmals nachfragen, damit ich es korrekt verstanden habe.

1.) Die USB Platte via /etc/fstab am PM7 Host einbinden.

2.) Einen neuen LXC aufsetzen. Auf diesem einen NFS Server aufsetzen. Die USB Platte vom Host via Bind-Mount in den LXC "mounten". Dann die gemountete USB Platte auf dem NFS Server zur Verfügung stellen.

3.) Auf der VM den NFS Client installieren und die USB Platte vom NFS Server abgreifen.
Genau. Je nachdem ob du einen privilegierten oder unprivilegierten LXCs erstellst musst du dann aber noch ggf. das User-Remapping ändern. Bei einem unprivilegierten LXC ist der Root-User des LXCs ein unprivilegierter User auf dem Host (UID 0 im LXC aber in Wirklichkeit UID 100000 auf dem Host). Siehe z.B. hier für Bind-Mounts in unprivilegierte LXCs: https://pve.proxmox.com/wiki/Unprivileged_LXC_containers
4.) Frage: Wie wird jetzt die USB Platte von einem weiteren LXC angesprochen. Via Bind-Mount zum PM7 Host, oder gibt es da eine LXC zu LXC Verbindung?
Im Falle von privilegierten LXCs kannst du für den LXC das NFS feature aktivieren und könntest dann ebenfalls im privilegierten LXC den NFS Share mounten. Bei unprivilegierten LXCs gibt es diese Option nicht. Da müsstest du die Ordner der USB-HDD dann per Bind-Mount vom Host in den LXC bringen (so wie ja auch schon beim NFS-Server-LXC).
 
Genau. Je nachdem ob du einen privilegierten oder unprivilegierten LXCs erstellst musst du dann aber noch ggf. das User-Remapping ändern. Bei einem unprivilegierten LXC ist der Root-User des LXCs ein unprivilegierter User auf dem Host (UID 0 im LXC aber in Wirklichkeit UID 100000 auf dem Host). Siehe z.B. hier für Bind-Mounts in unprivilegierte LXCs: https://pve.proxmox.com/wiki/Unprivileged_LXC_containers

Im Falle von privilegierten LXCs kannst du für den LXC das NFS feature aktivieren und könntest dann ebenfalls im privilegierten LXC den NFS Share mounten. Bei unprivilegierten LXCs gibt es diese Option nicht. Da müsstest du die Ordner der USB-HDD dann per Bind-Mount vom Host in den LXC bringen (so wie ja auch schon beim NFS-Server-LXC).
Dunuin, vielen Dank für die tollen Erklärungen!

Ich nutze PM ja nur im privaten Bereich.

Das es privilegierte und unprivilegierte LXCs gibt, habe ich schon gelesen / gesehen, aber kannst Du mir bitte erklären, wo der Unterschied ist. Wann soll ich einen privilegierten bzw. unprivilegierte LXC nutzen?

Wenn ich einen privilegierten LXC mit dem NFS Feature nutze, ist dann in dem LXC von Haus aus eine Art NFS Client aktiv? Oder was steckt hinter diesem Feature?

Gruß H-Blogx
 
Dunuin, vielen Dank für die tollen Erklärungen!

Ich nutze PM ja nur im privaten Bereich.

Das es privilegierte und unprivilegierte LXCs gibt, habe ich schon gelesen / gesehen, aber kannst Du mir bitte erklären, wo der Unterschied ist. Wann soll ich einen privilegierten bzw. unprivilegierte LXC nutzen?

Wenn ich einen privilegierten LXC mit dem NFS Feature nutze, ist dann in dem LXC von Haus aus eine Art NFS Client aktiv? Oder was steckt hinter diesem Feature?

Gruß H-Blogx
VMs sind komplett vom Host isoliert und bieten daher die beste Sicherheit und erlauben auch andere Betriebssysteme als Linux.
LXCs sind nur Container die sich die Hardware und den Kernel mit dem Host teilen, weshalb man auf Linux beschränkt ist und keine komplette Isolation bestehen kann. Das hat dann zwar ein paar Vorteile, wie z.B. das man Bind-Mounts benutzen, Hardware wie GPUs mit dem Host teilen kann oder auch weniger RAM/CPU braucht, da man einfach das OS vom Host mitbenutzt, was sowieso schon läuft. Gleichzeitig hast du aber auch einige Nachteile, wie z.B. die schlechtere Sicherheit wegen weniger Isolation, mehr Abhängigkeiten vom Host und ggf. mehr Probleme, weil Programme im LXC auf Dinge zugreifen wollen, wo sie aber wegen Isolation keinen Zugriff drauf haben. NFS ist z.B. so ein Fall. Damit im LXC NFS laufen kann muss man erst die Isolation verringern, damit der LXC auf die entsprechenden Dinge vom Host zugreifen darf. Die Rechte erteilst du dann quasi wenn du das NFS Feature des LXCs aktivierst. Dann musst du immer noch NFS selbst einrichten, aber sonst wäre es wegen fehlenden Zugriffsrechten einfach nicht möglich.
Und der Hauptunterschied zwischen privilegierten LXCs und unprivilegierten LXCs ist, dass da der privilegierte LXC noch weniger isoliert ist. Dort findet dann z.B. kein User-Remapping statt und dein Root-User im privilegierten LXC ist dann z.B. auch gleichzeitig dein Root-User vom Host.

Wenn überhaupt würde ich privilegierte LXCs höchstens für Dinge nutzen auf die du nur lokal im LAN Zugriff hast. Weil würde so ein privilegierter LXC mal vom Internet aus gehackt werden, dann ist es deutlich einfach den kompletten Host zu übernehmen oder massiv Schaden anzurichten. Beim unprivilegierten LXC ist es dann schon schwerer. Und will man auf Nummer sicher gehen nimmt man lieber gleich VMs.
 
Last edited:
VMs sind komplett vom Host isoliert und bieten daher die beste Sicherheit und erlauben auch andere Betriebssysteme als Linux.
LXCs sind nur Container die sich die Hardware und den Kernel mit dem Host teilen, weshalb man auf Linux beschränkt ist und keine komplette Isolation bestehen kann. Das hat dann zwar ein paar Vorteile, wie z.B. das man Bind-Mounts benutzen, Hardware wie GPUs mit dem Host teilen kann oder auch weniger RAM/CPU braucht, da man einfach das OS vom Host mitbenutzt, was sowieso schon läuft. Gleichzeitig hast du aber auch einige Nachteile, wie z.B. die schlechtere Sicherheit wegen weniger Isolation, mehr Abhängigkeiten vom Host und ggf. mehr Probleme, weil Programme im LXC auf Dinge zugreifen wollen, wo sie aber wegen Isolation keinen Zugriff drauf haben. NFS ist z.B. so ein Fall. Damit im LXC NFS laufen kann muss man erst die Isolation verringern, damit der LXC auf die entsprechenden Dinge vom Host zugreifen darf. Die Rechte erteilst du dann quasi wenn du das NFS Feature des LXCs aktivierst. Dann musst du immer noch NFS selbst einrichten, aber sonst wäre es wegen fehlenden Zugriffsrechten einfach nicht möglich.
Und der Hauptunterschied zwischen privilegierten LXCs und unprivilegierten LXCs ist, dass da der privilegierte LXC noch weniger isoliert ist. Dort findet dann z.B. kein User-Remapping statt und dein Root-User im privilegierten LXC ist dann z.B. auch gleichzeitig dein Root-User vom Host.

Wenn überhaupt würde ich privilegierte LXCs höchstens für Dinge nutzen auf die du nur lokal im LAN Zugriff hast. Weil würde so ein privilegierter LXC mal vom Internet aus gehackt werden, dann ist es deutlich einfach den kompletten Host zu übernehmen oder massiv Schaden anzurichten. Beim unprivilegierten LXC ist es dann schon schwerer. Und will man auf Nummer sicher gehen nimmt man lieber gleich VMs.
Alles klar, dann mach ich mich jetzt mal ans Werk ... bzw. später, habe gerade noch keine Zeit.

Danke

Gruß H-Blogx
 
Wenn ich diesen LXC dann sichere, sind dann dort auch die Daten vom NFS Server mit drin? Das möchte ich nämlich nicht.
Du kannst mit dem Backup-Flag bestimmen was im Backup enthalten sein soll und was nicht. Wenn ich mich richtig erinnere sollten Bind-Mounts eigentlich nicht im Backup landen.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!