{ "meta": { "title": "Host: Aggiungi directory condivisa su Host | ProxMenux Documentazione", "description": "Crea una directory sull’host pronta per i bind mount LXC, con permessi compatibili sia con i container privilegiati sia con quelli non privilegiati. Usa sticky bit, permessi rwx per tutti e ACL per l’ereditarietà predefinita.", "ogTitle": "Host: Aggiungi directory condivisa su Host | ProxMenux Documentazione", "ogDescription": "Prepara una directory sull’host per i bind mount LXC con permessi compatibili con CT privilegiati e non privilegiati." }, "header": { "title": "Host: Aggiungi directory condivisa su Host", "description": "Crea una directory sull’host da rendere accessibile a uno o più container LXC tramite bind mount. ProxMenux applica permessi compatibili con CT privilegiati e non privilegiati, senza dover allineare gli UID spostati o eseguire chown per ogni container, e registra la directory per renderla disponibile a LXC Mount Manager.", "section": "Archiviazione e condivisione · Host" }, "intro": { "title": "Ciò che è (e NON è)", "body": "Questo strumento non registra nulla in Proxmox (nessun pvesm add qui). Prepara semplicemente una directory sull'host — /mnt/shared, per impostazione predefinita — con autorizzazioni che qualsiasi contenitore LXC può leggere e scrivere, indipendentemente dal fatto che il CT sia privilegiato o non privilegiato. Il solito passaggio successivo è collegarlo al montaggio in ogni CT con LXC Mount Manager." }, "why": { "heading": "Perché uno strumento dedicato per questo", "intro": "Quando si esegue il bind mount di una directory host in un contenitore LXC, le autorizzazioni dipendono da:", "items": [ "Se il CT è privilegiato (UID 0 nel CT = UID 0 sull’host) o non privilegiato (UID 0 nel CT = UID 100000 sull’host, con uno spostamento di +100000).", "La proprietà della directory host (un file dell’UID 1000 sull’host usa i permessi per «altri» dal punto di vista di un CT non privilegiato, poiché nessun utente del CT corrisponde a quell’UID host).", "Se più CT condividono la stessa directory (le TC differenti possono avere diversi intervalli UID)." ], "outro": "ProxMenux usa una soluzione pratica: dare accesso a tutti a livello di filesystem, con rwx per tutti, sticky bit e ACL per l’ereditarietà dei permessi. Qualsiasi UID mappato può leggere e scrivere; non serve allineare UID/GID." }, "howRuns": { "heading": "Come funziona lo script", "body": "Lo script non ha menu principale — esegue una singola azione, Crea directory condivisa. Fase 1 raccoglie il percorso di destinazione; Fase 2 crea la directory e applica autorizzazioni." }, "bits": { "heading": "Che ogni bit di autorizzazione fa", "intro": "Il numero 1777 non è arbitrario: è la stessa modalità che utilizza Linux per /tmp. Tre proprietà combinate:", "headerBit": "Bit", "headerEffect": "Effetto", "headerWhy": "Perché è importante qui", "rows": [ { "bit": "1 (sticky bit)", "effect": "Solo il proprietario del file, quello della directory o un processo con privilegi sufficienti può eliminare o rinominare il file.", "why": "Aiuta a impedire agli utenti con UID mappati diversi di eliminare i file altrui. Non isola CT con lo stesso UID mappato o accesso root privilegiato." }, { "bit": "777 (rwx-rwx-rwx)", "effect": "Tutti possono leggere, scrivere e attraversare.", "why": "Gli UID dei CT non privilegiati (100000+) usano i permessi per “altri” sull’host; rwx per tutti concede loro accesso." }, { "bit": "ACL (predefinite)", "effect": "Ereditate su ogni nuovo file / subdir creato.", "why": "I nuovi contenuti ereditano le ACL predefinite senza rieseguire lo script. Le applicazioni possono comunque richiedere modalità restrittive o modificare i permessi in seguito." } ], "privTitle": "I CT privilegiati vedono lo stesso risultato, senza lo spostamento degli UID", "privBody": "Per un CT privilegiato, UID 0 nel CT è UID 0 sull'host, così root all'interno del CT può leggere / scrivere direttamente la directory host. 1777 è ancora bene — significa solo che gli utenti non-root all'interno del CT possono anche usare la directory. Gli stessi permessi coprono entrambi i casi." }, "where": { "heading": "Dove mettere la directory condivisa", "intro": "Il localizzatore offre quattro opzioni:", "opt1Title": "1. Crea una nuova cartella in /mnt", "opt1Body": "La solita scelta. ProxMenux suggerisce automaticamente il primo nome libero (shared, shared2, shared3, ...). Basta confermare o digitare un nome diverso.", "opt2Title": "2. Inserisci il percorso personalizzato", "opt2Body": "Per le directory al di fuori di /mnt. Qualsiasi percorso assoluto funziona (ad es. /srv/media, /data/family). Lo script applica le stesse autorizzazioni.", "opt3Title": "3. Visualizza le cartelle esistenti in /mnt", "opt3Body": "Diagnostica di sola lettura: elenca ogni directory sotto /mnt con le sue autorizzazioni, proprietario e spazio disponibile. Utile prima di creare un nuovo per evitare collisioni di nome.", "opt4Title": "4. Annulla", "opt4Body": "Esce senza creare nulla, come premendo Esc.", "tipTitle": "Dove vive /mnt?", "tipBody": "Per impostazione predefinita /mnt siede sul filesystem Proxmox root. Se si desidera la directory condivisa su un disco diverso (un disco di dati, un ZFS pool), montare il disco sotto /mnt/<name> primo (Disk Manager o Aggiungere il disco locale come archiviazione Proxmox), e quindi creare la directory condivisa come una sottocartella all'interno di esso — o scegliere \"Inserisci percorso personalizzato\" qui e puntare al disco montato." }, "manual": { "heading": "Equivalente manuale", "body": "L'intero flusso può essere riprodotto a mano:" }, "next": { "heading": "Passaggio successivo: bind mount nei container", "body": "La creazione della directory la prepara solo: nessun contenitore la vede ancora. Per renderlo visibile all'interno di uno o più LXC, utilizzare LXC Mount Manager per collegare il montaggio /mnt/<name> ai CT. Poiché i permessi sono già aperti, Mount Manager non offrirà di modificarli: la directory è pronta per l'uso così com'è." }, "troubleshoot": { "heading": "Risoluzione dei problemi", "mkdirTitle": "\"Failed to create directory\"", "mkdirBody": "Di solito un problema filesystem: /mnt è su un filesystem di sola lettura, il percorso contiene un componente che non è una directory (ad esempio digitato /etc/passwd/sub), o disco è pieno. Controllare con df -h /mnt e mount | grep /mnt.", "writeTitle": "Container non può scrivere nonostante le autorizzazioni aperte", "writeBody": "Verifica che il CT stia realmente usando il bind mount con pct config <ctid> | grep ^mp. Nel CT esegui touch /mnt/data/test-$(date +%s). Se ricevi un errore di accesso negato, la directory potrebbe trovarsi su un filesystem dell’host che non rispetta le ACL, come alcune vecchie configurazioni ext3 o vfat. Sposta la directory condivisa su un filesystem ext4, xfs, btrfs o zfs.", "aclTitle": "ACL comanda silenziosamente non disponibile", "aclBody": "In un’installazione minima di Proxmox, setfacl / getfacl potrebbero non essere installati. Lo script ricade con grazia (controllo command -v setfacl) e applica solo le autorizzazioni POSIX — che è spesso abbastanza, ma i nuovi file non erediteranno automaticamente il profilo permissivo. Installare acl con apt-get install -y acl e eseguire nuovamente lo script nella directory." }, "related": { "heading": "Correlati", "items": [ { "href": "/docs/storage-share/lxc-mount-points", "label": "Gestore montaggi LXC", "tail": "— il passo successivo naturale: legare-montare questa directory in uno o più contenitori." }, { "href": "/docs/storage-share/host-local-disk", "label": "Aggiungere disco locale come archiviazione Proxmox", "tailRich": "— se si desidera la directory condivisa su un disco dedicato, preparare il disco prima, montarlo sotto /mnt, quindi creare la sottocartella condivisa qui." } ] } }