Initialisation

This commit is contained in:
2024-01-07 10:02:35 +01:00
commit b7291133a3
4418 changed files with 169147 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
====== Découvrir les exports ======
Découvrir les partages d'un serveur.
Il est peut être utile de vérifier laccessibilité du service NFS distant.
===== Avec NFSv3 =====
Lorsque le serveur supporte le protocole **NFSv3**, on peut utiliser la commande **showmount** :
<code bash>
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
</code>
{{informatique:cfp:pasted:20201024-162640.png}}
===== Avec NFSv4 =====
Lorsque le serveur supporte le protocole **NFSv4**, on utilise un dossier monté :
<code>
sudo mkdir /mnt/rpinas
sudo mount rpinas.acegrp.lan:/ /mnt/rpinas/
sudo ls /mnt/rpinas/media/
</code>
Un serveur peut aussi bien supporter **NFSv3** et **NFSv4** de manière simultanée. Le résultat sera identique.
===== access denied by server while mounting =====
Si **mount** ne fonctionne pas, vous pouvez utiliser la commande suivante pour avoir plus d'informations :
<code>
sudo mount -v rpinas.acegrp.lan:/ /mnt/rpinas/
</code>
L'erreur est détaillée en retour :
<code>
mount.nfs: trying text-based options 'vers=4.2,addr=192.168.100.3,clientaddr=192.168.100.213'
mount.nfs: mount(2): Permission denied
mount.nfs: trying text-based options 'vers=4,minorversion=1,addr=192.168.100.3,clientaddr=192.168.100.213'
mount.nfs: mount(2): Permission denied
mount.nfs: trying text-based options 'vers=4,addr=192.168.100.3,clientaddr=192.168.100.213'
mount.nfs: mount(2): Permission denied
mount.nfs: trying text-based options 'addr=192.168.100.3'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.100.3 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: trying 192.168.100.3 prog 100005 vers 3 prot UDP port 35525
mount.nfs: mount(2): Permission denied
</code>

View File

@@ -0,0 +1,245 @@
====== - Partage réseau sous Linux : NFS ======
{{ informatique:linux:cfp:nfs-network-file-system:pasted:20210131-231703.png?75x75|Network File System est le système de fichiers pour réseau Linux.}}
NFS est un système de partage de fichiers, respectant les protocoles d'accès aux fichiers Linux.
Il est nécessaire d'avoir deux ordinateurs, au moins, pour mettre en œuvre un partage NFS. Par exemple :
* Serveur NFS : rpinas001.acegrp.lan - 192.168.100.1
* Client NFS : dskcdc001.acegrp.lan - 192.168.100.155
Il est possible d'avoir plusieurs **Serveur NFS** et plusieurs **Clients**.
Il est nécessaire d'autoriser le dialogue réseau entre le **Serveur** et le **Client**. L'utilisation de la commande **ping** pour confirmer la communication entre les deux systèmes.
===== Table des matières =====
* [[index|Sommaire]]
* Créer un partage NFS sous Linux
* Installer NFS
* [[..:nfs-network-file-system:installer-nfs-fedora-28]]
* [[..:nfs-network-file-system:installer-nfs-raspbian-os-10]]
* [[..:nfs-network-file-system:verifier-la-version-nfs-installee]]
* [[..:nfs-network-file-system:creer-et-exporter-un-partage]]
* [[..:nfs-network-file-system:modifier-la-parefeu]]
* Monter un partage NFS sous Linux
* [[..:nfs-network-file-system:installer-pilotes-nfs]]
* [[..:nfs-network-file-system:decouvrir-les-exports]]
* [[..:nfs-network-file-system:monter-un-partage-nfs]]
* [[..:nfs-network-file-system:monter-un-partage-nfs-permanent]]
===== - Éditer la configuration =====
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 :
<code>
Domain = acegrp.lan
</code>
Vérifier la configuration du mapping :
<code>
Nobody-User = nobody
Nobody-Group = nogroup
</code>
==== - Indiquer les dossiers à partager ====
L'idée est de centraliser les dossiers à partager dans le dossier ''/export''. Pour exemple, on partage dans ce dossier ''export'', le dossier ''/mnt''.
---
Créer le dossier ''/export/media'' :
<code bash>
$ sudo mkdir -p /export/media
</code>
---
Créer un point de montage de ''/mnt'' vers ''/export/media''. Ajouter une entrée dans le fichier ''/etc/fstab'' :
<code>
/mnt /export/media none bind 0 0
</code>
---
Monter le dossier ''/export/media'' :
<code bash>
$ sudo mount /export/media
</code>
---
Modifier le fichier **/etc/exports** :
<code>
/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)
</code>
---
Mettre à jour les exports :
<code bash>
$ sudo exportfs -ra
</code>
==== - Gérer les services ====
> Fedora 28 Sous **Fedora 28**, deux services doivent être activé et démarrés : **RPCbind** et **nfs** :
<code bash>
$ sudo systemctl start rpcbind nfs-server
</code>
<code bash>
$ sudo systemctl enable rpcbind nfs-server
</code>
> Raspbian 10
Sous **Raspbian 10**, il faut activer le service **nfs-kernel-server** :
<code bash>
$ sudo systemctl enable nfs-kernel-server
</code>
Puis démarrer le service **nfs-kernel-server** :
<code bash>
$ sudo systemctl start nfs-kernel-server
</code>
===== - Ajouter une exception dans Firewalld =====
On rajoute 4 exceptions exactement :
* 2049 en udp et tcp
* 111 en udp et tcp
<code bash>
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
</code>
ou encore plus rapidement
<code bash>
sudo firewall-cmd --add-service=nfs --permanent
sudo firewall-cmd --reload
</code>
====== - FAQ ======
===== - Connaître les services RPC d'un host =====
<code bash>
rpcinfo -p 192.168.100.5
</code>
Résultat
<code>
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
</code>
===== - clnt_create: RPC: Unable to receive =====
Le message ''clnt_create: RPC: Unable to receive'' apparaît après l'utilisation de la commande ''showmount''. Que faire ?
<code>
# showmount -e 192.168.100.6
clnt_create: RPC: Unable to receive
</code>
1. Vérifier la connectivité au serveur avec la commande ''ping''
<code>
# 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
</code>
Si la commande ''ping'' ne répond pas, vérifier par une connexion ''ssh''
<code>
# 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 ~]$
</code>
2. Lister les informations RPC avec la commande ''rpcinfo''
<code>
# rpcinfo -p 192.168.100.6
192.168.100.6: RPC: Remote system error - Connection refused
</code>

View File

@@ -0,0 +1,22 @@
====== Installer NFS sous Fedora 28 ======
Sous **Fedora 28**, il faut installer le paquet suivant pour monter et exporter les partages NFS :
<code bash>
sudo dnf install nfs-utils
</code>
--
**Démarrer** et **activer** le service **nfs-utils** :
<code bash>
sudo systemctl start nfs-server
sudo systemctl enable nfs-server
</code>
Il est possible de vérifier le bon fonctionnement du service avec **systemcl**
<code bash>
sudo systemctl status nfs-server
</code>

View File

@@ -0,0 +1,62 @@
====== Installer NFS Raspbian OS 10 ======
Sous **Raspbian 10**, il faut installer le paquet suivant pour monter et exporter les partages NFS :
<code bash>
sudo apt update
sudo apt install nfs-kernel-server
</code>
{{informatique:linux:cfp:nfs-network-file-system:pasted:20210221-222533.png|apt install nfs-kernel-server sous Raspbian 10}}
--
Pour apporter des modification dans le démon **NFS**, il est nécessaire de modifier le fichier ''/etc/default/nfs-kernel-server''.
<code>
# Number of servers to start up
RPCNFSDCOUNT=8
# Runtime priority of server (see nice(1))
RPCNFSDPRIORITY=0
# Options for rpc.mountd.
# If you have a port-based firewall, you might want to set up
# a fixed port here using the --port option. For more information,
# see rpc.mountd(8) or http://wiki.debian.org/SecuringNFS
# To disable NFSv4 on the server, specify '--no-nfs-version 4' here
RPCMOUNTDOPTS="--manage-gids"
# Do you want to start the svcgssd daemon? It is only required for Kerberos
# exports. Valid alternatives are "yes" and "no"; the default is "no".
NEED_SVCGSSD=""
# Options for rpc.svcgssd.
RPCSVCGSSDOPTS=""
</code>
--
Pour apporter des modification dans le paramétrage global de **NFS**, il est nécessaire de modifier le fichier ''/etc/default/nfs-common''.
<code>
# If you do not set values for the NEED_ options, they will be attempted
# autodetected; this should be sufficient for most people. Valid alternatives
# for the NEED_ options are "yes" and "no".
# Do you want to start the statd daemon? It is not needed for NFSv4.
NEED_STATD=
# Options for rpc.statd.
# Should rpc.statd listen on a specific port? This is especially useful
# when you have a port-based firewall. To use a fixed port, set this
# this variable to a statd argument like: "--port 4000 --outgoing-port 4001".
# For more information, see rpc.statd(8) or http://wiki.debian.org/SecuringNFS
STATDOPTS=
# Do you want to start the idmapd daemon? It is only needed for NFSv4.
NEED_IDMAPD=
# Do you want to start the gssd daemon? It is required for Kerberos mounts.
NEED_GSSD=
</code>

View File

@@ -0,0 +1,11 @@
====== Installer pilotes NFS ======
Il faut **Installer les pilotes**.
Sous **Debian** ou assimilé, il faut installer le pilote **nfs-common** :
<code bash>
$ sudo apt install nfs-common
</code>
{{informatique:cfp:pasted:20201024-162328.png|apt install nfs-common}}

View File

@@ -0,0 +1,25 @@
====== Monter un partage NFS permanent ======
Il est nécessaire de **créer des dossiers** qui recevront le point de montage :
<code bash>
sudo mkdir /media/ddext
</code>
--
Il faut ajout dans le fichier ''/etc/fstab'' les lignes avec l'option ''nfs'' :
<code>
rpinas001.acegrp.lan:/export/media /media/ddext nfs auto,nofail 0 0
</code>
--
On peut monter point de montage par point avec la commande **mount** :
<code bash>
sudo mount /media/ddext
</code>

View File

@@ -0,0 +1,15 @@
====== Monter un partage NFS ======
Il est nécessaire de **créer des dossiers** qui recevront le point de montage :
<code bash>
$ sudo mkdir /media/ddext
</code>
--
<code>
sudo mount rpinas.acegrp.lan:/media/ /media/ddext
sudo ls /media/ddext/
</code>

View File

@@ -0,0 +1,6 @@
{{ informatique:linux:cfp:nfs-network-file-system:pasted:20210131-231703.png?75x75|Network File System est le système de fichiers pour réseau Linux.}}
<WRAP clear/>
{{page>..:..:nfs-network-file-system:index#table-des-matieres}}
~~NOCACHE~~

View File

@@ -0,0 +1,14 @@
====== Vérifier la version NFS installée ======
{{ :dummy.png?75x75|Nom de la section}}
Sur le serveur Linux **NFS**, vérifier la ou les versions **NFS** installées. C'est la deuxième colonne de la commande **rpcinfo** :
<code>
rpcinfo -p | grep nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 3 udp 2049 nfs
</code>
{{informatique:linux:cfp:nfs-network-file-system:pasted:20210221-222655.png}}