{
"meta": {
"title": "NFS server i LXC | ProxMenux Dokumentation",
"description": "Dela mappar via NFS från en Proxmox LXC-container med ProxMenux. Installerar nfs-kernel-server automatiskt och konfigurerar den gemensamma gruppen sharedfiles, /etc/exports, nätverks-ACL:er och fullständig avinstallation. Kräver en privilegierad container.",
"ogTitle": "NFS server i LXC | ProxMenux Dokumentation",
"ogDescription": "Kör en NFS-server i en privilegierad LXC med den gemensamma gruppen sharedfiles, nätverks-ACL:er och fullständig avinstallation."
},
"header": {
"title": "NFS server i LXC",
"description": "Kör en NFS-kärnserver i en Proxmox LXC-container och dela mappar med andra datorer i nätverket. ProxMenux installerar nfs-kernel-server, konfigurerar den gemensamma gruppen sharedfiles så att flera privilegierade CT:er kan dela filer med samma grupp-ID, hanterar /etc/exports och erbjuder fullständig avinstallation.",
"section": "Lagring & Dela · LXC"
},
"privReq": {
"title": "Privilegierad container krävs",
"body": "nfs-kernel-server måste montera kärnans filsystem nfsd på /proc/fs/nfsd. Det kräver CAP_SYS_ADMIN i värdkärnans namnrymd, inte bara i containerns användarnamnrymd. Oprivilegierade LXC-containrar saknar denna förmåga: rpc.nfsd: Unable to access /proc/fs/nfsd errno 2 (No such file or directory); systemd markerar nfs-server.service som misslyckad på grund av ett beroende. Skriptet kräver därför en privilegierad CT och avbryter för oprivilegierade CT:er. Ett alternativ är att köra NFS-servern i en VM."
},
"what": {
"heading": "Vad detta gör",
"body": "Detta är motsatsen till sidan om NFS-klienten: CT:n blir en NFS-server och delar en egen mapp med andra CT:er, Proxmox-värden, VM:ar eller fysiska datorer.",
"diagramServerLabel": "LXC (privilegierad) - NFS server",
"diagramServerDetail": "/mnt/data\n(mappen du delar)\n\nchown root:sharedfiles\nchmod 2775 (SGID)\n\nnfs-kernel-server\n+ rpcbind körs",
"diagramClientLabel": "Valfri klient",
"diagramClientDetail": "En annan CT, värden,\nVM, en fysisk maskin.",
"diagramArrow": "NFS-export"
},
"shared": {
"heading": "Den gemensamma gruppen ”sharedfiles”",
"body": "Innan du exporterar mappen skapar ProxMenux en grupp som heter sharedfiles med GID 101000 inuti containern, lägger till varje vanlig användare till den och ställer sedan in exportkatalogen till root:sharedfiles med läge 2775. 2 på framsidan är SGID-biten - varje fil eller mapp som skapas inuti ärver automatiskt sharedfiles-gruppen.",
"gidTitle": "Varför GID 101000",
"gidBody": "Med LXC:s standardmappning (+100000) visas värdens GID 101000 som GID 1000 i en oprivilegierad CT. Detta serverflöde använder en privilegierad CT utan förskjutning. Två privilegierade CT:er med sharedfiles på GID 101000 har därför samma numeriska grupp-ID.",
"remapTitle": "Äldre skapande av ”remap_*”-användare hoppas över för privilegierade CT:er",
"remapBody": "Den äldre grenen för oprivilegierade CT:er skulle skapa remap_<uid>-användare med UID <uid> + 100000, alla i sharedfiles, för vanliga användare och vanliga UID:n (33, 1000, 1001, 1002). Denna +100000-förskjutning gäller inte de privilegierade CT:er som krävs här, så skriptet hoppar över grenen. Det är väntat att remap_*-konton saknas i getent passwd och betyder inte att något är fel."
},
"defaults": {
"heading": "Standardexportalternativ - läs detta första",
"warnTitle": "Standardalternativ inkluderar no_root_squash",
"warnBody": "ProxMenux använder som standard rw,sync,no_subtree_check,'<'strong'>'no_root_squash'<'/strong'>'. Varje root-användare på en klient kan skriva som root på exporten. Använd detta endast i ett betrott hemnätverk. Om CT:n kan nås från ett obetrott nätverk (VPS eller obetrott VLAN), byt alternativet till root_squash i dialogen för egna alternativ."
},
"opening": {
"heading": "Öppna verktyget",
"body": "Öppna Storage & Share Manager → Configure NFS Server in LXC i huvudmenyn. Endast privilegierade CT:er visas. Välj mål-CT:n; skriptet startar den om den är stoppad och avvisar oprivilegierade CT:er. Menyn har fem alternativ.",
"imageAlt": "NFS Server Manager-menyn - Skapa / Visa / Ta bort / Status / Avinstallera"
},
"howRuns": {
"heading": "Hur manuset går (Skapa flöde)"
},
"network": {
"heading": "Nätverks-ACL — vilka klienter får montera?",
"intro": "/etc/exports styr vilka klienter som får montera exporten. Dialogen har tre lägen:",
"headerMode": "Läge",
"headerValue": "Värde skrivet till /etc/exports",
"headerWhen": "När man väljer den",
"rows": [
{
"mode": "Lokalt nätverk",
"value": "192.168.0.0/16",
"whenRich": "För vanliga hem- och småföretagsnät. Omfattar alla adresser under 192.168.*.*."
},
{
"mode": "Anpassad subnet",
"value": "din CIDR (t.ex. 10.0.0.0/24)",
"when": "När ditt LAN inte är i 192.168.x.x eller om du vill ha en hårdare omfattning."
},
{
"mode": "Ensam värd",
"value": "din IP (till exempel 10.0.0.42)",
"when": "Endast en viss dator får montera exporten. Mest begränsande."
}
]
},
"options": {
"heading": "Exportalternativ förklarade",
"headerOption": "Alternativ",
"headerEffect": "Vad det gör",
"rows": [
{
"option": "rw / ro",
"effect": "Tillåt läsning och skrivning eller endast läsning för anslutande klienter."
},
{
"option": "sync",
"effectRich": "Bekräftar skrivbegäranden först när data finns på disk. Säkrare än async, men med lägre genomströmning."
},
{
"option": "no_subtree_check",
"effect": "Hoppar över kontrollen vid varje begäran att filen fortfarande ligger i det exporterade underträdet. Det går snabbare och undviker problem när filer byter namn under pågående åtkomst."
},
{
"option": "no_root_squash",
"effectRich": "Lita på root på klienten. En klient som monterar som root skriver som root på servern. Passar betrodda LAN, exempelvis när säkerhetskopieringsverktyg måste bevara ägare. Ersätt med root_squash om du inte litar helt på varje dator som nätverkets ACL tillåter."
}
]
},
"manual": {
"heading": "Manuell motsvarande",
"body": "Utför hela flödet manuellt. Varje kommando körs inne i CT:n via pct exec <ctid> -- eller pct enter <ctid>:"
},
"view": {
"heading": "Visa aktuell export",
"body": "Visar /etc/exports inifrån CT:n utan kommentarer och tomma rader, med nätverks-ACL och alternativ för varje export. Användbart för att kontrollera delade mappar innan du lämnar ut CT:ns IP-adress."
},
"delete": {
"heading": "Ta bort en export",
"body": "Listar varje rad i /etc/exports för val, tar bort den valda (sed -i), kör exportfs -ra och startar om nfs-kernel-server. Mappen själv och dess innehåll lämnas intakt."
},
"status": {
"heading": "Kontrollera NFS status",
"body": "Diagnostik: kontrollerar att nfs-kernel-server och rpcbind är installerade och aktiva, visar utdata från exportfs -v, aktiva NFS-sessioner (showmount -a) och aktuella klientanslutningar."
},
"uninstall": {
"heading": "Avinstallera NFS server",
"body": "Fullständig rensning efter bekräftelse: stoppar och inaktiverar nfs-kernel-server och rpcbind, tömmer /etc/exports, tar bort NFS-paketen med apt-get purge, gruppen sharedfiles och användarna remap_* samt avslutar kvarvarande processer. De exporterade mapparna raderas inte; endast NFS-konfigurationen och paketen tas bort.",
"warnTitle": "Skriptet stannar vid exportlinjen, inte vid data",
"warnBody": "Både Ta bort export och Avinstallera NFS-server tar bort exportkonfigurationen. Data i den delade mappen bevaras. Om även data ska tas bort, gör det uttryckligen med rm -rf efter att skriptet har avslutats och säkerhetskopiera först om någon kan behöva dem."
},
"troubleshoot": {
"heading": "Felsökning",
"privTitle": "Privilegierad container krävs (skriptet avbryter)",
"privBody": "Den valda CT är oprivilegierad. nfs-kernel-server kan inte starta där eftersom montering /proc/fs/nfsd behöver CAP_SYS_ADMIN i värdkärnans namnrymd, och nfsd-modulen inte heller är tillgänglig i containerns namnrymd (modprobe nfsd inifrån returnerar FATAL: Module nfsd not found). Om du kringgår kontrollen ser du rpc.nfsd: Unable to access /proc/fs/nfsd errno 2 (No such file or directory) i journalen och inga NFS-portar kommer någonsin att öppnas. De enda användbara alternativen är: konvertera CT till privilegierad, eller flytta NFS-servern till en VM.",
"aptTitle": "apt-get install misslyckas",
"aptIntro": "Manuset antar en Debian-familj CT. På Alpine / Arch / Rocky / Alma, installera NFS serverpaket för hand:",
"aptItems": [
"Alpine: apk add nfs-utils",
"Arch: pacman -S nfs-utils",
"Rocky / Alma: dnf install nfs-utils"
],
"aptOutro": "Kör sedan ProxMenux-skriptet igen; installationen hoppas över om verktygen redan finns.",
"aclTitle": "Kunden kan inte montera: \"åtkomst nekas av servern\"",
"aclBody": "Klientens IP ligger utanför nätverkets ACL. Skapa exporten på nytt med ett större undernät eller lägg till klientens exakta IP. Vanlig fallgrop: via router-NAT kan klienten visas med routerns WAN-IP i stället för sin LAN-IP. Kontrollera på servern med tcpdump -n port 2049.",
"ownTitle": "Filer skrivna av kunden visas med konstig ägande på servern",
"ownIntro": "Två möjligheter:",
"ownItems": [
"Med no_root_squash (standard) skriver klientrot som rot på servern. Filer ägs av root:sharedfiles tack vare SGID på mappen.",
"Icke-root klient användare skriver som sin egen UID / GID. Om deras UID inte finns på servern visas filer med råa nummer (t.ex. 1234:1234). Använd sharedfiles-gruppen på klienten också, eller anpassa UID över de system som delar filer."
],
"noShowTitle": "Servern kan nås men showmount returnerar inget",
"noShowBody": "Efter att du redigerat /etc/exports måste du ladda om exporttabellen med exportfs -ra och starta om nfs-kernel-server. Skriptet gör båda, men efter manuell redigering måste du göra det själv. Kontrollera även att brandväggen i CT:n och på Proxmox-värden tillåter TCP/UDP 2049 och rpcbind-porten (111)."
},
"related": {
"heading": "Relaterad",
"items": [
{
"href": "/docs/storage-share/lxc-nfs-client",
"label": "NFS klient i LXC",
"tail": " — omvänt: montera externa NFS-delningar i en CT."
},
{
"href": "/docs/storage-share/lxc-samba-server",
"label": "Samba server i LXC",
"tail": " — syskonsidan, samma mönster med SMB / CIFS istället för NFS."
},
{
"href": "/docs/storage-share/host-nfs",
"label": "NFS-delning som Proxmox-lagring",
"tailRich": " — när CT:n delar ut via NFS, registrera NFS-delningen i Proxmox så att den visas under Datacenter → Storage."
}
]
}
}