GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce que NFS et comment l'installer sous Linux

Présentation

Il s'agit d'un sujet riche qui contient de nombreuses informations susceptibles de vous intéresser si vous êtes dans la zone de stockage pour être un administrateur système, de stockage ou de sauvegarde.

Il existe des variantes de types de systèmes de fichiers et notre sujet principal aujourd'hui concerne l'un d'entre eux, à savoir NFS.

Types de stockage

Les trois principaux types de stockage sont :

– DAS

– SAN

– NAS

NAS (stockage en réseau)

D'une manière simple, NAS est de partager des dossiers pour que d'autres puissent stocker leurs données au lieu de leurs disques locaux. Vous devez avoir une connectivité entre le serveur et les clients pour que cela fonctionne et bien sûr des disques avec de l'espace libre sur le serveur. NAS est un stockage de niveau fichier, ce qui signifie que vous formatez les disques côté serveur et que vous les partagez avec le système de fichiers formaté.

Et voici notre NFS système de fichiers, c'est l'un des systèmes de fichiers que vous pouvez formater sur votre NAS disques avec, et c'est ce que nous voulons faire maintenant, pour utiliser notre système d'exploitation Linux comme un NFS serveur, ce qui signifie en fait que nous l'utilisons comme un NAS serveur mais avec nos disques formatés avec NFS système de fichiers

NFS (partage de fichiers réseau)

Est un protocole qui vous permet de partager des répertoires et des fichiers avec d'autres clients Linux sur un réseau. Les répertoires partagés sont généralement créés sur un serveur de fichiers, exécutant le NFS composant serveur. Les utilisateurs y ajoutent des fichiers, qui sont ensuite partagés avec d'autres utilisateurs ayant accès au dossier.

Un NFS Le partage de fichiers est monté sur une machine cliente, ce qui le rend disponible comme les dossiers que l'utilisateur a créés localement. NFS est particulièrement utile lorsque le disque manque d'espace et que vous devez échanger des données publiques entre les ordinateurs clients.

Serveur NFS côté

Installez d'abord les packages NFS


# yum install nfs-utils rpcbind

Activez maintenant les services au démarrage


#  systemctl enable nfs-server
#  systemctl enable rpcbind

Démarrer les services


#  systemctl start rpcbind
#  systemctl start nfs-server

Créons le répertoire partagé pour que les clients stockent ou lisent leurs données


# mkdir /sharednfs

Définissez des autorisations afin que tout utilisateur sur la machine cliente puisse accéder au dossier (dans le monde réel, vous devez déterminer si le dossier nécessite des paramètres plus restrictifs).


# sudo chown nobody:nogroup /sharednfs 
# sudo chmod 777 /sharednfs 

Accorder l'accès aux clients NFS

Pour accorder l'accès aux clients NFS, nous devons définir un fichier d'exportation. Le fichier se trouve généralement dans /etc/exports

Modifiez le fichier /etc/exports dans un éditeur de texte et ajoutez l'une des options suivantes

ro / rw :
a) ro :autorise les clients à accéder en lecture seule au partage.
b) rw :autorise les clients à accéder en lecture et en écriture au partage.
synchronisé/asynchrone :
a) sync :le serveur NFS répond à la requête uniquement après que les modifications apportées par la requête précédente ont été écrites sur le disque.
b) async :spécifie que le serveur n'a pas à attendre.
wdelay / no_wdelay
a) wdelay :le serveur NFS retarde la validation des demandes d'écriture lorsqu'il soupçonne qu'une autre demande d'écriture est imminente.
b) no_wdelay :utilisez cette option pour désactiver le délai. L'option no_wdelay ne peut être activée que si la synchronisation par défaut option est activée.
no_all_squash / all_squash :
a) no_all_squash :ne change pas le mappage des utilisateurs distants.
b) all_squash :pour écraser tous les utilisateurs distants, y compris root.
root_squash / no_root_squash :
a) root_squash :empêche les utilisateurs root connectés à distance d'avoir un accès root. Écraser efficacement les privilèges root distants.
b) no_root_squash :désactive l'écrasement de la racine.

Exemple 1 (client unique) :


# vi /etc/exports
/sharednfs {clientIP}(rw,sync,no_subtree_check)

Exemple2 (plusieurs clients) :


# vi /etc/exports
/sharednfs {clientIP-1}(rw,sync,no_subtree_check)
           {clientIP-2}(...)
           {clientIP-3}(...)

Exemple 3 (sous-réseau) :


# vi /etc/exports
/sharednfs {subnetIP}/{subnetMask}(rw,sync,no_subtree_check)

Rendre le partage NFS disponible pour les clients

Exportez le partage pour rendre le répertoire accessible aux clients


# sudo exportfs -a 

-a : exports entries in /etc/exports but do not synchronize with /var/lib/nfs/etab
-i : ignore entries in /etc/exports and uses command line arguments
-u : un-export one or more directories
-o : specify client options on command line
-r : re-exports entries in /etc/exports and sync /var/lib/nfs/etab with /etc/exports

Redémarrez ensuite le service


# systemctl restart nfs-server

Paramètres du pare-feu

Par défaut, tous les ports non utilisés sont désactivés sous Linux, nous devons donc autoriser NFS ports dans la configuration du pare-feu.

Pour ce faire, procédez comme suit


firewall-cmd --permanent --add-service mountd
firewall-cmd --permanent --add-service rpc-bind
firewall-cmd --permanent --add-service nfs
firewall-cmd --reload

Côté client

Nous devons également installer le package sur la machine client


yum install -y nfs-utils

Pour vérifier les dossiers partagés sur le serveur spécifié qui sont disponibles pour notre client


showmount -e {serverIP}

Il affichera quelque chose comme ce qui suit


Export list for {serverIP}:
/sharednfs {clientIP}

Monter les dossiers partagés

Maintenant, il est temps de monter les dossiers partagés côté client

Tout d'abord, nous devons créer un répertoire de points


mkdir /mnt/sharednfs

Il est temps de monter


mount {serverIP}:/sharednfs /mnt/sharednfs

Pour vérifier, essayez de créer un répertoire ou un fichier sur le point monté


touch /mnt/sharednfs/test

Pour monter automatiquement les partages NFS

Modifier dans le fichier fstab


vi /etc/fstab

ajouter cette ligne


{serverIP}:/sharednfs /mnt/sharednfs    nfs     nosuid,rw,sync,hard,intr  0  0

Pour démonter le NFS partages


umount /mnt/sharednfs

Enfin, n'oubliez pas d'ajouter également les règles de pare-feu côté client


firewall-cmd --permanent --add-service mountd
firewall-cmd --permanent --add-service rpc-bind
firewall-cmd --permanent --add-service nfs
firewall-cmd --reload

Conclusion

NFS est un excellent protocole pour centraliser vos données en un seul endroit ou un dossier partagé au lieu de les stocker localement sur chaque appareil. Cela vous donne également la possibilité de venir sur l'espace local limité sur votre appareil.

Avec la connectivité et la configuration appropriées, vous aurez la solution parfaite pour stocker vos données en un seul endroit.


Linux
  1. Comment installer et tester Ansible sur Linux

  2. Flatpak sur Linux :qu'est-ce que c'est et comment installer des applications avec ?

  3. Comment installer et utiliser Flatpak sous Linux

  4. Qu'est-ce que Podman et comment installer Podman sous Linux

  5. Comment installer et utiliser Traceroute sous Linux

Comment installer et utiliser phpMyAdmin sous Linux

Comment installer et utiliser la commande fd sous Linux

Comment installer et utiliser Nu Shell sous Linux

Comment installer et configurer un serveur NFS sur un système Linux

Comment installer et configurer un serveur Linux Ubuntu NFS

Comment installer Java 8 JRE et JDK à partir du fichier RPM sous Linux