NFS Setup · 5 min read · Feb 12, 2026
Impostare un server e un client NFS su Scientific Linux 6.3
Questa guida spiega come impostare un server NFS e un client NFS su Scientific Linux 6.3. NFS sta per Network File System; tramite NFS, un client può accedere (leggere, scrivere) a una condivisione remota su un server NFS come se fosse sul disco rigido locale.
1 Nota Preliminare
Sto usando due sistemi Scientific Linux qui:
- Server NFS: server.example.com, indirizzo IP: 192.168.0.100
- Client NFS: client.example.com, indirizzo IP: 192.168.0.101
2 Installazione di NFS
server:
Sul server NFS eseguiamo:
yum install nfs-utils nfs-utils-libPoi creiamo i collegamenti di avvio del sistema per il server NFS e lo avviamo:
chkconfig --levels 235 nfs on
/etc/init.d/nfs startclient:
Sul client possiamo installare NFS come segue (questo è in realtà lo stesso che sul server):
yum install nfs-utils nfs-utils-lib3 Esportazione delle Directory sul Server
server:
Vorrei rendere le directory /home e /var/nfs accessibili al client; quindi dobbiamo “esportarle” sul server.
Quando un client accede a una condivisione NFS, questo avviene normalmente come utente nobody. Di solito la directory /home non è di proprietà di nobody (e non consiglio di cambiare la sua proprietà a nobody!), e poiché vogliamo leggere e scrivere su /home, diciamo a NFS che gli accessi devono essere effettuati come root (se la nostra condivisione /home fosse stata di sola lettura, questo non sarebbe stato necessario). La directory /var/nfs non esiste, quindi possiamo crearla e cambiare la sua proprietà; nei miei test l’utente e il gruppo nobody avevano entrambi l’ID 99 sui miei sistemi di test Scientific Linux (server e client); quando ho provato a scrivere su /var/nfs dal client NFS, ho ricevuto un errore di Permesso negato, quindi ho eseguito un chmod 777 /var/nfs affinché tutti potessero scrivere in quella directory; scrivere su /var/nfs dal client ha funzionato, e sul client i file scritti in /var/nfs apparivano di proprietà dell’utente e del gruppo nobody, ma sul server erano di proprietà dell’utente e del gruppo (inesistenti) con l’ID 65534; quindi ho cambiato la proprietà di /var/nfs all’utente/gruppo 65534 sul server e ho cambiato i permessi di /var/nfs di nuovo a 755, e voilà, il client era autorizzato a scrivere in /var/nfs:
mkdir /var/nfs
chown 65534:65534 /var/nfs
chmod 755 /var/nfsOra dobbiamo modificare /etc/exports dove “esportiamo” le nostre condivisioni NFS. Specifichiamo /home e /var/nfs come condivisioni NFS e diciamo a NFS di effettuare accessi a /home come root (per saperne di più su /etc/exports, il suo formato e le opzioni disponibili, dai un’occhiata a
man 5 exports)
vi /etc/exports| /home 192.168.0.101(rw,sync,no_root_squash,no_subtree_check) /var/nfs 192.168.0.101(rw,sync,no_subtree_check) |
(L’opzione no_root_squash fa sì che /home venga accessibile come root.)
Ogni volta che modifichiamo /etc/exports, dobbiamo eseguire
exportfs -adopo per rendere effettive le modifiche.
4 Montaggio delle Condivisioni NFS sul Client
client:
Per prima cosa creiamo le directory dove vogliamo montare le condivisioni NFS, ad esempio:
mkdir -p /mnt/nfs/home
mkdir -p /mnt/nfs/var/nfsDopo, possiamo montarle come segue:
mount 192.168.0.100:/home /mnt/nfs/home
mount 192.168.0.100:/var/nfs /mnt/nfs/var/nfsOra dovresti vedere le due condivisioni NFS negli output di
df -h[root@client ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
9.7G 1.7G 7.5G 18% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/sda1 504M 39M 440M 9% /boot
192.168.0.100:/home 9.7G 1.7G 7.5G 19% /mnt/nfs/home
192.168.0.100:/var/nfs
9.7G 1.7G 7.5G 19% /mnt/nfs/var/nfs
[root@client ~]#ed
mount[root@client ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home on /mnt/nfs/home type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[root@client ~]#5 Test
Sul client, ora puoi provare a creare file di test sulle condivisioni NFS:
client:
touch /mnt/nfs/home/test.txt
touch /mnt/nfs/var/nfs/test.txtOra vai sul server e controlla se puoi vedere entrambi i file di test:
server:
ls -l /home/[root@server ~]# ls -l /home/
total 0
-rw-r--r-- 1 root root 0 Dec 11 16:58 test.txt
[root@server ~]#ls -l /var/nfs[root@server ~]# ls -l /var/nfs
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 Dec 11 16:58 test.txt
[root@server ~]#(Nota i diversi proprietari dei file di test: la condivisione NFS /home viene accessibile come root, quindi /home/test.txt è di proprietà di root; la condivisione /var/nfs viene accessibile come nobody/65534, quindi /var/nfs/test.txt è di proprietà di 65534.)
6 Montaggio delle Condivisioni NFS all’Avvio
Invece di montare manualmente le condivisioni NFS sul client, potresti modificare /etc/fstab in modo che le condivisioni NFS vengano montate automaticamente quando il client si avvia.
client:
Apri /etc/fstab e aggiungi le seguenti righe:
vi /etc/fstab| [...] 192.168.0.100:/home /mnt/nfs/home nfs rw,sync,hard,intr 0 0 192.168.0.100:/var/nfs /mnt/nfs/var/nfs nfs rw,sync,hard,intr 0 0 |
Invece di rw,sync,hard,intr puoi usare diverse opzioni di montaggio. Per saperne di più sulle opzioni disponibili, dai un’occhiata a
man nfsPer testare se il tuo /etc/fstab modificato funziona, riavvia il client:
rebootDopo il riavvio, dovresti trovare le due condivisioni NFS negli output di
df -h[root@client ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
9.7G 1.7G 7.5G 18% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/sda1 504M 39M 440M 9% /boot
192.168.0.100:/home 9.7G 1.7G 7.5G 19% /mnt/nfs/home
192.168.0.100:/var/nfs
9.7G 1.7G 7.5G 19% /mnt/nfs/var/nfs
[root@client ~]#ed
mount[root@client ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home on /mnt/nfs/home type nfs (rw,sync,hard,intr,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,sync,hard,intr,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[root@client ~]#7 Link
- Linux NFS: http://nfs.sourceforge.net/
- Scientific Linux: https://www.scientificlinux.org/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.