Files

129 lines
11 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"meta": {
"title": "NFS Client in LXC | ProxMenux Dokumentation",
"description": "NFS-Freigaben direkt in einem Proxmox-LXC-Container mit ProxMenux einhängen. Installiert nfs-common automatisch, unterstützt automatische Erkennung im LAN, dauerhafte Mounts über /etc/fstab und sichere Starteinstellungen. Erfordert einen privilegierten Container.",
"ogTitle": "NFS Client in LXC | ProxMenux Dokumentation",
"ogDescription": "NFS-Freigaben in einem privilegierten LXC einhängen. Automatische Erkennung, dauerhafte Einträge in /etc/fstab und sichere Starteinstellungen."
},
"header": {
"title": "NFS-Client in LXC",
"description": "NFS-Freigaben direkt in einem Proxmox-LXC-Container einhängen. Der Container ist ein eigener NFS-Client: Er kommuniziert über das Netzwerk mit dem Server, führt mount.nfs aus und schreibt in /etc/fstab. ProxMenux installiert nfs-common, hilft beim Auffinden von Servern und Exporten und setzt sichere Starteinstellungen.",
"section": "Speicher und Freigaben · LXC"
},
"privReq": {
"title": "Privilegierter Container erforderlich",
"body": "Der Kernel-<code>mount.nfs</code>-Client benötigt Funktionen (mindestens <code>SYS_ADMIN</code>), die nicht privilegierte LXC-Container nicht bereitstellen. Das Skript erzwingt dies - es fordert Sie auf, einen CT auszuwählen, und <strong>bricht bei unprivilegierten CTs ab</strong>. Wenn Sie die Freigabe in einem unprivilegierten CT benötigen, montieren Sie sie zuerst auf dem Proxmox-Host (mit <hostNfsLink>NFS-Freigabe als Proxmox-Speicher</hostNfsLink>) und binden Sie sie mit dem <mountLink>LXC-Mount-Manager</mountLink> in den CT ein."
},
"what": {
"heading": "Was das macht",
"body": "Im Gegensatz zum LXC Mount Manager, der den CT dazu bringt, etwas <em>via</em> im Proxmox-Host zu sehen, gibt dieses Skript dem Container seinen <strong>eigenen NFS-Client</strong>: Er spricht NFS über das Netzwerk, mountet Shares direkt vom NFS-Server und speichert das Mount im <code>/etc/fstab</code> des Containers. Der Proxmox-Host befindet sich nicht im Datenpfad.",
"diagramServerLabel": "NFS-Server",
"diagramServerDetail": "/export/data",
"diagramHostLabel": "Proxmox-Host",
"diagramHostDetail": "(nur eine\nNetzwerkbrücke)",
"diagramCtLabel": "LXC (privilegiert)",
"diagramCtDetail": "/mnt/data\nmount.nfs im CT",
"diagramArrow": "NFS",
"twoWaysTitle": "Zwei Möglichkeiten, einem CT NFS Zugang zu gewähren - wählen Sie einen",
"twoWaysBind": "<strong>Bind-Mount über den Host</strong> (<mountLink>LXC Mount Manager</mountLink>): Der Host bindet die NFS-Freigabe einmal ein; jeder CT erhält denselben Pfad als Bind-Mount. Funktioniert mit unprivilegierten CTs und empfiehlt sich, wenn mehrere CTs dieselbe Freigabe benötigen.",
"twoWaysDirect": "<strong>Direct NFS Mount im CT</strong> (diese Seite): Der CT montiert den NFS selbst. Erfordert Privilegien. Nützlich, wenn der CT seine Verbindung / Anmeldeinformationen besitzen muss, oder für Setups, bei denen jeder CT mit einem anderen Server spricht."
},
"opening": {
"heading": "Öffnen des Tools",
"body": "Öffnen Sie im Hauptmenü von ProxMenux <strong>Storage &amp; Share Manager → NFS-Client in LXC (nur privilegiert)</strong> konfigurieren. ProxMenux fordert Sie zuerst auf, <strong> das Ziel CT</strong> auszuwählen (und startet es, wenn es gestoppt wird); abbricht, wenn es nicht privilegiert ist. Sobald das CT ausgewählt ist, sehen Sie dieses sub-Menü:",
"imageAlt": "NFS Client-Manager-Menü — Mount / View / Unmount / Testverbindung"
},
"howRuns": {
"heading": "Wie das Skript läuft (Mount Flow)"
},
"fstabFlags": {
"heading": "Warum diese Fstab Flags",
"intro": "Für permanente Mounts fügt das Skript drei Flags hinzu, die über die Standard-NFS-Optionen hinausgehen: <code>_netdev,x-systemd.automount,noauto</code>. Jeder löst ein echtes Boot-Time-Problem:",
"headerFlag": "Flagge",
"headerEffect": "Was es tut",
"rows": [
{
"flag": "_netdev",
"effect": "Sagt dem init-system, dass dieses mount das netzwerk benötigt. Boot blockiert nicht das Warten darauf, bevor das Netzwerk aufgebaut ist."
},
{
"flag": "x-systemd.automount",
"effectRich": "Erstellt eine automatische systemd-Einheit: Die Mount erfolgt nur beim ersten Zugriff auf <code>/mnt/&lt;path&gt;</code>. NFS-Server, der beim Booten nicht erreichbar ist, stoppt den CT nicht."
},
{
"flag": "noauto",
"effect": "Überspringt das sofortige Einhängen beim Booten. Zusammen mit der Automount-Einheit wird der Mount erst beim ersten Zugriff eingerichtet."
}
],
"netEffectTitle": "Nettoeffekt",
"netEffectBody": "Das NFS-Dateisystem wird beim <em>ersten Zugriff</em> eingehängt statt sofort beim Booten. Ist der Server offline, kann dieser Zugriff warten oder fehlschlagen; davon abhängige Dienste können betroffen sein. Automount verringert die Abhängigkeit beim Booten, garantiert aber nicht, dass alle CT-Dienste von einem NFS-Ausfall unberührt bleiben."
},
"manual": {
"heading": "Manuelles Äquivalent",
"body": "Replizieren Sie den gesamten Ablauf per Hand – jeder Befehl führt <strong> im CT</strong> über <code>pct exec &lt;ctid&gt; --</code> oder direkt über <code>pct enter &lt;ctid&gt;</code> aus:"
},
"view": {
"heading": "Aktuelle Mounts anzeigen",
"body": "Listet jeden NFS-Montagepunkt auf, der innerhalb des CT (<code>mount | grep nfs</code>) aktiv ist, sowie jede NFS-Linie im <code>/etc/fstab</code> des CT. Für jeden fstab-eintrag wird der live-mount-status angezeigt - nützlich, um permanente mounts zu erkennen, die beim booten nicht aufgekommen sind."
},
"unmount": {
"heading": "NFS-Freigabe aushängen",
"body": "Kombiniert die Live-Mounts und die fstab-Einträge in einer Liste, lässt Sie einen auswählen und <strong>entfernt die entsprechende Zeile aus <code>/etc/fstab</code></strong>. Das Skript führt <em>nicht</em> <code>umount</code> auf dem Live-Mount aus – stattdessen teilt es Ihnen mit, dass ein CT Neustart erforderlich ist, damit das Unmounten wirksam wird.",
"warnTitle": "Das Skript entfernt fstab-Einträge, nicht Live-Mounts",
"warnBody": "Dies ist eine bewusste Entscheidung: <code>umount</code> schlägt bei einem noch verwendeten Mount mit „device busy“ fehl, wenn ein Prozess im CT darauf zugreift. Ohne den fstab-Eintrag wird der Mount beim nächsten CT-Start nicht erneut eingerichtet. Soll er <em>sofort</em> verschwinden und sind Sie sicher, dass nichts mehr darauf zugreift, führen Sie nach Abschluss des Skripts <code>pct exec &lt;ctid&gt; -- umount /mnt/&lt;path&gt;</code> manuell aus."
},
"test": {
"heading": "NFS-Verbindung testen",
"body": "Diagnose im CT: Prüft, ob <code>nfs-common</code> installiert ist und <code>rpcbind</code> läuft, und listet die aktuellen NFS-Mounts auf. Anschließend wird für jeden in fstab eingetragenen NFS-Server die Folge Ping → Port 2049 → <code>showmount -e</code> geprüft. Ein sinnvoller erster Schritt, wenn ein dauerhafter Mount nicht verfügbar wird."
},
"troubleshoot": {
"heading": "Fehlerbehebung",
"privTitle": "Privilegierter Container erforderlich (Skript bricht ab)",
"privBody": "Der ausgewählte CT ist unprivilegiert. Der Kernel-NFS-Client benötigt <code>SYS_ADMIN</code>-Fähigkeiten, die nicht privilegierte CTs nicht aussetzen. Entweder konvertieren Sie die CT in privilegierte (die Konvertierung von Disk Manager &amp; ist auf der <importLink>Import Disk in LXC</importLink> Seite dokumentiert) oder verwenden Sie den alternativen Pfad, der in der Warnung oben auf dieser Seite beschrieben ist.",
"aptTitle": "apt-get install nfs-common fails",
"aptIntro": "Das Skript nimmt eine Debian-Familie CT (<code>apt-get</code>) an. Wenn der CT Alpine / Arch / Rocky / Alma läuft, schlägt der Installationsschritt lautlos fehl. Installieren Sie den NFS-Client von Hand für diese Distribution:",
"aptItems": [
"Alpine: <code>apk add nfs-utils</code>",
"Arch: <code>pacman -S nfs-utils</code>",
"Rocky / Alma: <code>dnf install nfs-utils</code>"
],
"aptOutro": "Führen Sie dann das ProxMenux-Skript erneut aus - der Installationsschritt überspringt, wenn die Tools bereits vorhanden sind.",
"portTitle": "\"NFS port (2049) is not accessible\"",
"portBody": "Ping war erfolgreich, aber <code>nc -z &lt;server&gt; 2049</code> scheiterte innerhalb des CT. Überprüfen Sie, ob der NFS-Dienst auf dem Server ausgeführt wird, ob die Firewall 2049 aus dem Netzwerk des CT zulässt und ob der CT tatsächlich eine gültige Netzwerkroute hat (probieren Sie <code>pct exec &lt;ctid&gt; -- ip route</code>).",
"bootTitle": "Permanent Mount gelingt, kommt aber nicht beim Booten",
"bootBody": "Fast immer einer von: Das Netzwerk ist nicht bereit, wenn die CT-Mounts (die <code>_netdev,x-systemd.automount,noauto</code>-Flags des Skripts beheben dies - fügen Sie das Mount über das Skript erneut hinzu, wenn Sie die Fstab-Zeile von Hand ohne diese geschrieben haben), der Server ist beim Booten nicht erreichbar (Auto-Mount wartet auf den ersten Zugriff - das ist normal), oder DNS ist beim Booten ungelöst (verwenden Sie die IP des Servers, nicht seinen Hostnamen).",
"squashTitle": "Server Squashes root, kein Schreibzugriff von innen CT",
"squashIntro": "Der NFS-Export verwendet <code>root_squash</code> (Standard) und der CT schreibt als root. Zwei Optionen:",
"squashItems": [
"Server-Seite: Ändern Sie den Export in <code>no_root_squash</code> (nur wenn Sie dem CT vertrauen).",
"CT-Seite: Schreiben Sie als Nicht-Root-Benutzer, den der Server akzeptiert, oder chownen Sie die Freigabe entsprechend."
],
"squashOutro": "ProxMenux kann dies nicht beheben - es ist eine Serverrichtlinie."
},
"related": {
"heading": "Verwandte Themen",
"items": [
{
"href": "/docs/storage-share/lxc-mount-points",
"label": "LXC-Einhängepunkte (Host ↔ Container)",
"tail": "— die Alternative für unprivilegierte CTs: mount on host, bind in CT."
},
{
"href": "/docs/storage-share/lxc-samba-client",
"label": "Samba-Client in LXC",
"tail": " — verwandte Seite mit demselben Ablauf für SMB-/CIFS-Freigaben."
},
{
"href": "/docs/storage-share/lxc-nfs-server",
"label": "NFS Server in LXC",
"tailRich": " — die umgekehrte Richtung: Ordner <em>aus</em> einem CT über NFS freigeben."
},
{
"href": "/docs/storage-share/host-nfs",
"label": "NFS-Freigabe als Proxmox-Speicher",
"tail": " — die Freigabe direkt in Proxmox statt in einem einzelnen CT registrieren."
}
]
}
}