NFS
Generico
Questa guida descrive l'installazione e l'abilitazione della connessione NFS solo sul cliente. Per l'installazione e abilitazione lato server seguire la guida di Digitalocean
Creare la cartella: Montare la cartella: Per montare automaticamente la cartella all'avvio del sistema: e inserire al fondo: Rendere affettive le modifiche riavviando la macchina oppure: A questo punto la cartella è accessibile solo all'utente root, per consentire l'accesso ad un tente specifico, creare un gruppo ad hoc: infine aggiungere l'utente al gruppo appena creato: Configurare le autorizzazioni sulla cartella: Riavviare il server NFS:Proxmox - LXC
Per abilitare un volume NFS su un container LXC, è necessario che questo sia in mode privileged, ma per ragioni di sicurezza è consigliato avviarlo in mode unprivileged. Questo però non permetterebbe la lettura dei volumi in NFS.
Per ovviare al problema, si monta il volume NFS direttamente sull'host. Si crea prima il punto do mount e di binding sull'host:
Successivamente si monta il volume NFS sull'host: Si fa a questo punto il bind del volume: Sul file di configurazione del container si aggiunge la riga: Riavviando il container, il volume NFS risultà già montato.Persistenza del volume al riavvio
Per assicurarti che il volume NFS venga montato automaticamente al riavvio dell'host, devi aggiungere la configurazione al file /etc/fstab e utilizzare uno script di avvio per gestire il mount e il bind. Ecco i passaggi dettagliati:
1. Aggiungi la configurazione al file /etc/fstab
Questo file è utilizzato dal sistema per montare i file system all'avvio. Aggiungi una riga per il volume NFS e il bind mount.
Modifica /etc/fstab con un editor di testo:
2. Aggiungi la configurazione per il bind mount
Aggiungi uno script di avvio per gestire il bind mount. Crea uno script di init nel percorso /etc/init.d/, ad esempio:
#!/bin/bash
### BEGIN INIT INFO
# Provides: mount-nfs-bind
# Required-Start: $network $local_fs
# Required-Stop: $network $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Mount NFS and bind mount
### END INIT INFO
case "$1" in
start)
echo "Mounting NFS share and binding..."
mount -a
mount --bind /mnt/nfs-share /mnt/bindmounts/nfs-share
;;
stop)
echo "Unmounting NFS share and bind mount..."
umount /mnt/bindmounts/nfs-share
umount /mnt/nfs-share
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
exit 0
3. Abilita lo script di avvio
Aggiungi lo script al sistema di avvio:
Verifica la configurazioneDopo aver configurato tutto, riavvia l'host e verifica se il volume NFS e il bind mount vengono applicati correttamente:
Dopo il riavvio, controlla che i mount siano attivi: Dovresti vedere il volume NFS montato su/mnt/nfs-share e il bind mount su /mnt/bindmounts/nfs-share.
Con questi passaggi, il volume NFS dovrebbe montarsi automaticamente all'avvio e il bind mount sarà configurato correttamente per il container LXC. Se hai ulteriori domande o problemi, fammi sapere!