Installer les composants serveur

Fedora 28

Sous Fedora 28, il faut installer les composants suivants :

$ sudo dnf install nfs-utils
Raspbian 10

Sous Raspbian 10, il faut installer les composants suivants :

$ sudo apt install nfs-kernel-server

Éditer la configuration

On doit modifier le fichier /etc/idmapd.conf en admin pour intégrer le domaine dans la configuration :

Décommenter la ligne et indiquer le nom du domaine :

Domain = acegrp.lan

On vérifira également la configuration du mapping :

Nobody-User = nobody
Nobody-Group = nogroup

L'idée principale est de centraliser les dossiers à partager dans le dossier /export.

Par exemple, je veux partager le dossier /media.

## Création du dossier /export/media :

$ sudo mkdir -p /export/media

## Création d'un point de montage entre /media et /export/media. Ajout d'une entrée dans le fichier /etc/fstab :

/media    /export/media   none    bind  0  0

## Demande de montage :

$ sudo /export/media

## Modifier le fichier /etc/exports :

/export       192.168.1.0/24(rw,fsid=0,insecure,no_subtree_check,async)
/export/media 192.168.1.0/24(rw,nohide,insecure,no_subtree_check,async)

## Mise à jour des exports :

$ sudo exportfs -ra
Fedora 28 Sous Fedora 28, deux services doivent être activé et démarrés : RPCbind et nfs :
$ sudo systemctl start rpcbind nfs-server
$ sudo systemctl enable rpcbind nfs-server
Raspbian 10

Sous Raspbian 10, il faut activer le service nfs-kernel-server :

$ sudo systemctl enable nfs-kernel-server

Puis démarrer le service nfs-kernel-server :

$ sudo systemctl start nfs-kernel-server

## Installer les pilotes

Debian 9

Sous Debian ou assimilé, il faut installé le pilote nfs-common :

$ sudo apt install nfs-common

## Création des dossiers qui recevront le point de montage :

$ sudo mkdir /media/disk_6
$ sudo mkdir /media/disk_23
$ sudo mkdir /media/disk_24
$ sudo mkdir /media/disk_25

## Vérifier que les partages accessibles

Sous Fedora 28 et Raspbian 10 il peut être utile de vérifier l’accessibilité du service. On peut utiliser la commande showmount :

$ showmount -e 192.168.100.1
 
Export list for 192.168.100.1:
/export/media/disk_25 192.168.100.0/24
/export/media/disk_24 192.168.100.0/24
/export/media/disk_23 192.168.100.0/24
/export/media/disk_6  192.168.100.0/24

## Ajout dans le fichier /etc/fstab des lignes avec l'option nfs :

192.168.100.1:/export/media/disk_6  /media/disk_6  nfs auto 0 0
192.168.100.1:/export/media/disk_24  /media/disk_24  nfs auto 0 0
192.168.100.1:/export/media/disk_25  /media/disk_25  nfs auto 0 0
192.168.100.1:/export/media/disk_23  /media/disk_23  nfs auto 0 0

## Montage des points :

$ sudo mount /media/disk_6
$ sudo mount /media/disk_23
$ sudo mount /media/disk_24
$ sudo mount /media/disk_25
rpcinfo -p 192.168.100.5

Résultat

   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp  40258  status
    100024    1   tcp  41279  status
    100005    1   udp  20048  mountd
    100005    1   tcp  20048  mountd
    100005    2   udp  20048  mountd
    100005    2   tcp  20048  mountd
    100005    3   udp  20048  mountd
    100005    3   tcp  20048  mountd
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  60788  nlockmgr
    100021    3   udp  60788  nlockmgr
    100021    4   udp  60788  nlockmgr
    100021    1   tcp  35701  nlockmgr
    100021    3   tcp  35701  nlockmgr
    100021    4   tcp  35701  nlockmgr

Sous Fedora 28 et Raspbian 10 il peut être utile de vérifier l’accessibilité du service. On peut utiliser la commande showmount :

$ showmount -e 192.168.100.5
 
Export list for 192.168.100.5:
/media/disk_8 192.168.0.0/255.255.0.0
/media/disk_7 192.168.0.0/255.255.0.0
/media/disk_6 192.168.0.0/255.255.0.0
/media/disk_5 192.168.0.0/255.255.0.0

On rajoute 4 exceptions exactement :

  • 2049 en udp et tcp
  • 111 en udp et tcp
sudo firewall-cmd --add-port=2049/udp
sudo firewall-cmd --add-port=2049/tcp
sudo firewall-cmd --add-port=111/udp
sudo firewall-cmd --add-port=111/tcp

ou encore plus rapidement

sudo firewall-cmd --add-service=nfs --permanent
sudo firewall-cmd --reload

Le message clnt_create: RPC: Unable to receive apparaît après l'utilisation de la commande showmount. Que faire ?

# showmount -e 192.168.100.6

clnt_create: RPC: Unable to receive

1. Vérifier la connectivité au serveur avec la commande ping

# ping 192.168.100.6

PING 192.168.100.6 (192.168.100.6) 56(84) bytes of data.
64 bytes from 192.168.100.6: icmp_seq=1 ttl=64 time=0.224 ms
64 bytes from 192.168.100.6: icmp_seq=2 ttl=64 time=0.209 ms
^C
--- 192.168.100.6 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1009ms
rtt min/avg/max/mdev = 0.209/0.216/0.224/0.016 ms

Si la commande ping ne répond pas, vérifier par une connexion ssh

# ssh cedric@192.168.100.6

cedric@192.168.100.6's password:
Last login: Sat May  5 07:03:20 2018 from 192.168.100.29
[cedric@srv06 ~]$

2. Lister les informations RPC avec la commande rpcinfo

# rpcinfo -p 192.168.100.6

192.168.100.6: RPC: Remote system error - Connection refused
  • informatique/cfp/nfs.txt
  • Dernière modification: 2020/04/05 01:17
  • par Cédric ABONNEL