Installer un serveur NFS sous CentOS 7

NFSNFS (Network File System) est le système de fichiers en réseau “classique” des plateformes Unix, avec un fonctionnement client-serveur. Le serveur met à disposition des ressources pour les clients du réseau ou une partie du réseau. Les fichiers distants sont montés dans un répertoire et apparaissent comme un système de fichiers local. À partir de là, les utilisateurs clients accèdent en toute transparence aux fichiers partagés par le serveur, en parcourant les répertoires comme s’il s’agissait d’une arborescence locale.

Dans cet article, nous allons décrire la mise en place d’un serveur NFS sous CentOS 7. Le but ultime de cette opération sera la création de profils itinérants avec une authentification centralisée dans le réseau local. Notre serveur NFS constituera la première brique logicielle d’une telle configuration.

Prérequis

NFSv4 utilise le port 2049 en TCP. Il faut donc songer à ouvrir ce port dans le pare-feu.

Installation

Installer la panoplie d’outils NFS et leurs dépendances.

# yum install nfs-utils

Si l’on a désactivé l’IPv6 sur le serveur, il faut impérativement reconstruire le disque mémoire initial, sous peine de se retrouver avec un service RPC (Remote Procedure Call) qui refuse obstinément de démarrer.

# dracut -f -v

Pour plus de détails, consulter les explications sur cette page.

Configuration

Renseigner le domaine local dans /etc/idmapd.conf.

[General]
#Verbosity = 0
# The following should be set to the local NFSv4 domain name
# The default is the host's DNS domain name.
Domain = microlinux.lan

Voici les répertoires utilisateurs que je souhaite partager en lecture et en écriture.

# tree -d -L 1 /home/
/home/
|-- adebuf
|-- fbanester
|-- fteyssier
|-- jmortreux
`-- kikinovak

Par ailleurs, je dispose également d’une arborescence /data que je souhaite partager en lecture seule.

# tree -d -L 1 /data/
/data/
|-- audio
|-- iso
`-- video

Nous allons définir ces partages dans le fichier /etc/exports.

# /etc/exports
/data  192.168.2.0/24(ro,async,no_subtree_check) \
         *.microlinux.lan(ro,async,no_subtree_check)
/home  192.168.2.0/24(rw,async,no_subtree_check) \
         *.microlinux.lan(rw,async,no_subtree_check)
  • L’option ro monte le répertoire distant en lecture seule.
  • L’option rw monte le répertoire distant en lecture/écriture.
  • L’option async permet des écriture asynchrones, c’est-à-dire que le serveur n’attend pas l’écriture d’une requête précédente avant de répondre.
  • Sans trop rentrer dans les détails, l’option no_subtree_check neutralise la vérification des sous-répertoires, ce qui a de subtiles implications au niveau de la sécurité, mais peut améliorer la fiabilité dans certains cas.
  • La barre oblique inversée \ permet d’éviter les lignes à rallonge.
  • Attention à ne pas mettre d’espace entre la définition du réseau 192.168.2.0/24 et les options (rw,async).

Gestion

Activer et démarrer les services RPC et NFS.

# systemctl enable rpcbind
# systemctl enable nfs-server
# systemctl start rpcbind
# systemctl start nfs-server

La configuration des clients NFS fait l’objet d’un article à part.

Documentation

Ce contenu a été publié dans CentOS, Documentation Microlinux, avec comme mot(s)-clé(s) , , . Vous pouvez le mettre en favoris avec ce permalien.

5 réponses à Installer un serveur NFS sous CentOS 7

  1. Ping : Installer un serveur NFS sous CentOS 7 - My Tiny Tools

  2. Sleipnir dit :

    Ça semble devenir autrement plus compliqué quand on veut l’associer à une authentification ldap qui semble néanmoins être le compagnon idéal de nfs.

  3. Sleipnir dit :

    Mais un tiens vaut mieux qu’une pierre qui n’amasse pas mousse.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.