NFS signifie Network File System, un service qui vous aide à partager des fichiers et des dossiers entre les systèmes *nix / Linux, développé par SUN Microsystems en 1990.
NFS vous permet de monter un partage distant comme un disque local. Cet article vous aide à configurer le serveur NFS sur Debian 9 / Ubuntu 16.04 .
Environnement
Ce guide devrait également fonctionner sur les anciennes versions de Debian telles que Debian 8 et Ubuntu versions telles que Ubuntu 17.10 / 17.04 / 15.10 / 15.04 / Ubuntu 14.04 .
Voici les détails de mes nœuds.
Nom d'hôte du serveur NFS :server.itzgeek.local
Adresse IP du serveur NFS :192.168.1.10 /24
Nom d'hôte du client NFS :client.itzgeek.local
Adresse IP du client NFS :192.168.1.20/24
Utilisez une adresse IP statique sur le serveur NFS et le client pour éviter les problèmes de réseau dus à l'indisponibilité du serveur DHCP .
Services importants
rpcbind :Le rpcbind est un serveur qui convertit les numéros de programmes RPC en adresses universelles.
nfs :permet aux clients d'accéder aux partages NFS.
nlockmgr :Le verrouillage de fichier NFS implémente la récupération du verrouillage de fichier lorsqu'un serveur NFS tombe en panne et redémarre.
monté :gère la liste de contrôle d'accès pour déterminer si le client est autorisé à accéder à un partage NFS.
Fichiers de configuration importants
Vous travaillerez sur les fichiers de configuration ci-dessous lors de la configuration du serveur et des clients NFS.
/etc/exports :Le fichier de configuration principal. Dans ce fichier, vous mentionnerez le système de fichiers que vous souhaitez exporter vers des hôtes distants avec des options spécifiques.
/etc/fstab :Ce fichier contient des entrées permettant de monter automatiquement tous les systèmes de fichiers, y compris NFS, au démarrage du système.
/etc/hosts.allow , et /etc/hosts.deny :Ces fichiers sont appelés wrappers TCP, utilisés par NFS pour décider d'accepter ou non les connexions provenant d'une adresse IP externe
Installer et configurer le serveur NFS
Basculez vers l'utilisateur root.
sudo su -
OU
su -
Installez les packages NFS sur le serveur NFS à l'aide de la commande suivante.
apt-get install -y nfs-kernel-server
Créer un partage NFS
Créons un répertoire que nous voulons partager avec les machines clientes. Ici, nous allons créer un nouveau répertoire nommé nfsshare en / partitionnez-le et partagez-le sur NFS.
Vous pouvez également utiliser votre répertoire existant pour NFS.
mkdir /nfsshare
Autoriser les machines clientes à lire et écrire dans le répertoire créé.
chmod 777 /nfsshare/
Exporter le partage NFS
Modifier /etc/exports fichiers pour exporter le partage NFS.
vi /etc/exports
Faire une entrée du répertoire /nfsshare à exporter en tant que partage NFS.
/nfsshare 192.168.1.20(rw,sync,no_root_squash,no_subtree_check)
Où,
/nfsshare :Un répertoire partagé
192.168.1.20 :Adresse IP de la machine cliente. Vous pouvez utiliser le nom d'hôte au lieu d'une adresse IP. Vous pouvez également mentionner des sous-réseaux tels que 192.168.1.0/24 au cas où vous souhaiteriez le partager sur plusieurs machines.
rw :Autorisation d'écriture sur un dossier partagé
synchroniser :toutes les modifications apportées au système de fichiers sont immédiatement vidées sur le disque ; les opérations d'écriture respectives sont en attente.
no_root_squash :Par défaut, tout fichier créé par l'utilisateur root sur la machine cliente est traité comme "personne" sur le serveur. Si no_root_squash est défini, alors root sur la machine cliente aura le même niveau d'accès aux fichiers que root sur le serveur.
no_subtree_check :Si seule une partie d'un volume est exportée, une routine appelée vérification de sous-arborescence vérifie qu'un fichier demandé par le client se trouve dans la partie appropriée du volume. Si le volume entier est exporté, désactivez-le avec no_subtree_check ; cela accélérera les transferts.
Vous pouvez découvrir toutes les options sur la page de manuel (man exports) ou ici.
Utilisez la commande ci-dessous pour exporter les répertoires partagés.
exportfs -ra
Vérifiez le partage exporté à l'aide de la commande ci-dessous.
showmount -e 127.0.0.1
La commande showmount -e répertorie les partages disponibles sur votre machine locale (serveur NFS). La sortie
Sortie :
Export list for 127.0.0.1: /nfsshare 192.168.1.20
Configurer le client NFS
Nous devons installer le package nfs-common sur la machine cliente pour monter un système de fichiers distant.
Assurez-vous que vous êtes en cours d'exécution commandes en tant qu'utilisateur root.
apt-get -y install nfs-common
Monter les partages NFS sur le client
Avant de monter le partage NFS, exécutez la commande showmount sur la machine cliente pour voir si le partage NFS du serveur est visible ou non.
showmount -e 192.168.1.10
Sortie :
Export list for 192.168.1.10: /nfsshare 192.168.1.20
Selon la commande, le /nfshare est disponible sur 192.168.1.10 (serveur) pour 192.168.1.20 (client) .
showmount -e
Créer un répertoire /share sur la machine cliente pour monter le répertoire partagé.
mkdir /mnt/share
Utilisez la commande mount pour monter un répertoire partagé /nfsshare à partir du serveur NFS (192.168.1.10) dans /mnt/share sur la machine client .
mount 192.168.1.10:/nfsshare /mnt/share
Vérifiez le partage monté sur la machine cliente à l'aide du montage commande.
mount | grep nfs
Sortie :
Vous pouvez également utiliser la commande df pour vérifier les partages NFS montés.
df -hT
Sortie :
Créez un fichier sur le répertoire monté pour vérifier l'autorisation de lecture et d'écriture du partage NFS.
touch /mnt/share/test
Si la commande ci-dessus ne renvoie aucune erreur, vous pouvez monter de façon permanente les partages NFS.
Montage automatique des partages NFS
Pour monter automatiquement les partages NFS à chaque redémarrage, vous devez modifier /etc/fstab fichier sur votre système client.
vi /etc/fstab
Ajoutez la ligne ci-dessous à la fin du fichier.
192.168.1.10:/nfsshare/ /mnt/share nfs rw,sync,hard,intr 0 0
Enregistrez et fermez le fichier.
Redémarrez la machine cliente et vérifiez si le partage NFS est automatiquement monté ou non.
reboot
Vérifiez le partage monté sur le client-serveur à l'aide de la commande mount.
mount | grep nfs
Pour démonter le répertoire partagé de votre ordinateur client, utilisez la commande umount pour le démonter.
umount /mnt/share
Vous pouvez configurer AutoFS sur Debian / Ubuntu pour monter les partages NFS uniquement lorsqu'un utilisateur y accède.
C'est tout. Vous avez correctement configuré le serveur NFS sur Debian 9 / Ubuntu 16.04 .