NFS-Utils-2.6.4

Introduction à NFS Utilities

Le paquet NFS Utilities contient le serveur en espace utilisateur et le client nécessaires pour utiliser les possibilités NFS du noyau. NFS est un protocole qui permet le partage de systèmes de fichiers sur un réseau.

This package is known to build and work properly using an LFS 12.1 platform.

Informations sur le paquet

Dépendances de NFS Utilities

Requises

libtirpc-1.3.4, libevent-2.1.12, rpcsvc-proto-1.4.4 et SQLite-3.45.1

Facultatives

Cyrus SASL-2.1.28 (pour l'authentification SASL), LVM2-2.03.23 (libdevmapper pour la prise en charge de NFSv4), libnsl-2.0.1 (pour le client NIS), OpenLDAP-2.6.7 (pour l'authentification LDAP), MIT Kerberos V5-1.21.2 ou libgssapi et librpcsecgss (pour la prise en charge de la sécurité RPC et GSS) et libcap-2.69 avec PAM

Requises (exécution)

rpcbind-1.2.6

Configuration du noyau

Activez les options suivantes dans la configuration du noyau (choisissez le support client ou serveur en fonction de ce qui est approprié) et recompilez le noyau si nécessaire :

File systems --->
  [*] Network File Systems --->                            [NETWORK_FILESYSTEMS]
    <*/M> NFS client support                                            [NFS_FS]
    <*/M> NFS server support                                              [NFSD]

Sélectionnez les sous-options adéquates qui apparaissent quand les options ci-dessus sont sélectionnées.

[Note]

Note

Dans BLFS, nous supposons que nfs v3 sera utilisé. Si le serveur offre nfs v4 (pour Linux, CONFIG_NFSD_V4) alors l'auto-négotiation pour la v3 échouera et vous devrez ajouter nfsver=3 aux options de montage. Ceci s'applique aussi si cette option est activée dans le noyau du client, par exemple dans une distribution tentant de monter un serveur v3 BLFS.

Même si aucune partie dans la connexion ne supporte nfs v4, l'ajout de nfser=3 reste utile car il évite un message d'erreur « NFS : mauvaise valeur d'option de montage spécifiée : minorversion=1 » à chaque montage.

Installation de NFS Utilities

Installez NFS Utilities en exécutant les commandes suivantes :

./configure --prefix=/usr          \
            --sysconfdir=/etc      \
            --sbindir=/usr/sbin    \
            --disable-nfsv4        \
            --disable-gss          \
            LIBS="-lsqlite3 -levent_core" &&
make

Maintenant, en tant qu'utilisateur root :

make install                       &&
chmod u+w,go+r /usr/sbin/mount.nfs &&
chown nobody:nogroup /var/lib/nfs

Les tests pour ce paquet requièrent qu'il soit installé. En plus, le démon rpc.statd ne doit pas tourner et les tests doivent être lancés en tant qu'utilisateur root.

Pour tester les résultats, lancez, en root :

make check

Explication des commandes

--disable-gss : Désactive le support de RPCSEC GSS (RPC Security).

LIBS="-lsqlite3 -levent_core" : est requis pour le programme fsidd.

chown nobody:nogroup /var/lib/nfs : Le programme rpc.statd utilise la propriété de ce répertoire pour initialiser son UID et son GID. Cette commande les donne à un utilisateur non privilégié.

Configuration de NFS Utilities

Configuration du serveur

/etc/exports contient les répertoires exportés sur des serveurs NFS. Reportez-vous à la page de manuel exports.5 pour la syntaxe de ce fichier. Reportez-vous aussi au « guide pratique NFS » disponible sur https://nfs.sourceforge.net/nfs-howto/ pour des informations sur la manière de configurer les serveurs et les clients de façon sécurisée. Par exemple, pour partager le répertoire /home via le réseau local, vous pouvez ajouter la ligne suivante :

cat >> /etc/exports << EOF
/home 192.168.0.0/24(rw,subtree_check,anonuid=99,anongid=99)
EOF
[Note]

Note

Soyez certain de remplacer le répertoire, l'adresse réseau et le préfixe pour correspondre à votre réseau. Le seul espace dans la ligne ci-dessus doit être entre le répertoire et l'adresse réseau.

Script de démarrage

Installez le script de démarrage /etc/rc.d/init.d/nfs-server fourni dans le paquet blfs-bootscripts-20240209 pour lancer le serveur au démarrage.

make install-nfs-server

Maintenant créez le fichier de configuration /etc/sysconfig/nfs-server :

cat > /etc/sysconfig/nfs-server << "EOF"
PORT="2049"
PROCESSES="8"
KILLDELAY="10"
EOF
[Note]

Note

Les paramètres ci-dessus peuvent être mis, éventuellement, dans /etc/sysconfig/rc.site.

Configuration du client

/etc/fstab contient les répertoires qui doivent être montés sur le client. Les partitions peuvent aussi être montées par l'utilisation de la commande mount avec les bonnes options. Pour monter les partitions /home et /usr, ajoutez ce qui suit au fichier /etc/fstab :

<server-name>:/home  /home nfs   rw,_netdev 0 0
<server-name>:/usr   /usr  nfs   ro,_netdev 0 0

Les options qui peuvent être utilisées sont spécifiées dans man 5 nfs. Si le client et le serveur utilisent des versions récentes de Linux, la plupart des options pourront être négociées (mais voir la note au dessus sur nfsver=3). Vous pouvez spécifier soit rw ou ro, _netdev si le système de fichier doit être monté automatiquement au démarrage, ou noauto (et peut-être user) pour les autres systèmes de fichiers.

Si le serveur de fichiers n'utilise pas une version récente de Linux, vous devrez spécifier d'autres options.

Script de démarrage
[Note]

Note

Le script de démarrage suivant n'est pas requis si le script du serveur nfs est installé.

Installez le script de démarrage /etc/rc.d/init.d/nfs-client fourni dans le paquetblfs-bootscripts-20240209 pour lancer les services clients au démarrage.

make install-nfs-client

Pour monter automatiquement des systèmes de fichiers nfs, les clients devront également installer le script de démarrage netfs comme décrit au chapitre Configuration des systèmes de fichiers réseau.

Contenu

Programmes installés: exportfs, fsidd, mountstats, mount.nfs, mount.nfs4 (lien vers mount.nfs), nfsconf, nfsdclnts, nfsiostat, nfsstat, rpc.mountd, rpc.nfsd, rpc.statd, rpcdebug, showmount, sm-notify, start-statd, umount.nfs (lien vers mount.nfs) et umount.nfs4 (lien vers mount.nfs)
Bibliothèques installées: Aucune
Répertoires installés: /var/lib/nfs

Descriptions courtes

exportfs

maintient une liste des systèmes de fichiers exportés par NFS

fsidd

offre une interface domain socket UNIX pour que tous les espaces utilisateurs NFS puissent envoyer des requêtes à la base de données reexport

mountstats

affiche des statistiques par montage des clients NFS

mount.nfs

est utilisé pour monter un partage réseau en utilisant NFS

mount.nfs4

est utilisé pour monter un partage réseau en utilisant NFSv4

nfsconf

peut être utilisé pour tester et récupérer les paramètres de configuration à partir d'un certain nombre de fichiers de configuration de nfs-utils

nfsdclnts

affiche les informations des clients NFS

nfsiostat

signale les statistiques d'entrée/sortie des systèmes de fichiers réseaux

nfsstat

affiche des statistiques sur le client NFS et l'activité du serveur

rpc.mountd

implémente le protocole de montage NFS sur un serveur NFS

rpc.nfsd

implémente la partie du serveur niveau utilisateur du service ou du serveur NFS

rpc.statd

est utilisé par le service de verrouillage de fichier NFS. Lancé des deux côtés, côté client et serveur, quand vous voulez activer le verrouillage de fichier

rpcdebug

paramètre ou vide les drapeaux de débogage du client et du serveur NFS

showmount

affiche des informations de montage d'un serveur NFS

sm-notify

est utilisé pour envoyer des messages de redémarrage au Network Status Monitor

start-statd

est un script appelé par nfsmount lors du montage d'un système de fichiers avec le verrouillage activé, si statd ne semble pas fonctionner. On peut l'automatiser avec n'importe quel drapeau approprié à la situation

umount.nfs

est utilisé pour démonter un partage réseau utilisant NFS

umount.nfs4

est utilisé pour démonter un partage réseau utilisant NFSv4