<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Stanley+%28phorum%29</id>
	<title>Lea Linux - Contributions [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Stanley+%28phorum%29"/>
	<link rel="alternate" type="text/html" href="https://lea-linux.org/documentations/Sp%C3%A9cial:Contributions/Stanley_(phorum)"/>
	<updated>2026-04-22T08:48:21Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=NFS&amp;diff=12341</id>
		<title>NFS</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=NFS&amp;diff=12341"/>
		<updated>2006-04-12T21:13:45Z</updated>

		<summary type="html">&lt;p&gt;Stanley (phorum) : /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Partager ses fichiers]]&lt;br /&gt;
= Installation d&#039;un serveur NFS =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;leatitre&amp;quot;&amp;gt;Installation d&#039;un serveur NFS&amp;lt;/div&amp;gt;&amp;lt;div class=&amp;quot;leapar&amp;quot;&amp;gt;Guillaume Pierronnet&amp;lt;/div&amp;gt;&amp;lt;div class=&amp;quot;leadesc&amp;quot;&amp;gt;NFS, ou le partage des ressources selon Unix.&amp;lt;/div&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
NFS signifie Network File System. C&#039;est, comme son nom l&#039;indique, un système de fichiers en réseau qui permet de partager ses données principalement entre systèmes UNIX. À la différence de SAMBA, NFS gère les permissions sur les fichiers et on peut donc l&#039;utiliser de manière totalement transparente dans son arborescence Linux.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ATTENTION !&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Comme toute application réseau, NFS ouvre des trous dans la sécurité du système. Je vous invite donc à consulter les liens à la fin de cet article pour des précisions sur la sécurité. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Les softs ==&lt;br /&gt;
&lt;br /&gt;
=== Les modules du noyau ===&lt;br /&gt;
&lt;br /&gt;
Dans la configuration du noyau, on va dans la section &amp;quot;&#039;&#039;&#039;File systems ---&amp;gt; Network File Systems&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Pour le client:&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;tt&amp;gt;NFS file system support et Provide NFSv3 client support&amp;lt;/tt&amp;gt;&lt;br /&gt;
   CONFIG_NFS_FS=y ou m&lt;br /&gt;
   CONFIG_NFS_V3=y&lt;br /&gt;
* &amp;lt;u&amp;gt;Pour le serveur:&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;tt&amp;gt;NFS server support et Provide NFSv3 server support&amp;lt;/tt&amp;gt;&lt;br /&gt;
   CONFIG_NFSD=y ou m&lt;br /&gt;
   CONFIG_NFSD_V3=y&lt;br /&gt;
&lt;br /&gt;
À partir du noyau 2.2.18, les modules supportent entièrement la version 3 du protocole ainsi que différentes corrections de bug. &amp;lt;br /&amp;gt;Il serait temps d&#039;upgrader si tu ne l&#039;as pas déjà fait! (profites-en pour passer au 2.4, ce sera réglé :)&lt;br /&gt;
&lt;br /&gt;
=== Les packages ===&lt;br /&gt;
&lt;br /&gt;
Les packages (sur ma Debian) sont :&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;nfs-common&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;nfs-user-server&amp;lt;/tt&amp;gt; pour le serveur.&lt;br /&gt;
&lt;br /&gt;
Tu peux toujours récupérer les sources qui se trouvent sur http://nfs.sourceforge.net/.&lt;br /&gt;
&lt;br /&gt;
On va aussi installer le &#039;&#039;wrapper&#039;&#039; TCP pour un minimum de sécurité. Toujours sur ma Debian, le paquet s&#039;appelle &amp;lt;tt&amp;gt;tcpd&amp;lt;/tt&amp;gt;. Les sources se trouvent [ftp://ftp.porcupine.org/pub/security/index.html ici].&lt;br /&gt;
&lt;br /&gt;
== Le serveur ==&lt;br /&gt;
&lt;br /&gt;
Les 3 fichiers de configuration principaux sont &amp;lt;tt&amp;gt;/etc/exports&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;/etc/hosts.deny&amp;lt;/tt&amp;gt; et &amp;lt;tt&amp;gt;/etc/hosts.allow&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== /etc/exports ===&lt;br /&gt;
&lt;br /&gt;
Le fichier &amp;lt;tt&amp;gt;/etc/exports&amp;lt;/tt&amp;gt; est très simple :&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;tt&amp;gt;répertoire machine1(option11,option12) machine2(option21,option22)&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
par exemple :&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;tt&amp;gt;/home 192.168.0.10(rw) 192.168.0.25(ro)&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
signifie que l&#039;on autorisera la machine &#039;&#039;192.168.0.10&#039;&#039; à accéder à notre répertoire &amp;lt;tt&amp;gt;/home&amp;lt;/tt&amp;gt; en lecture et écriture (&amp;lt;tt&amp;gt;rw&amp;lt;/tt&amp;gt;) ainsi que la machine &#039;&#039;192.168.0.25&#039;&#039; mais uniquement en lecture (&amp;lt;tt&amp;gt;ro&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;&amp;lt;u&amp;gt;répertoire&amp;lt;/u&amp;gt;&amp;lt;/tt&amp;gt; :&amp;lt;br /&amp;gt; le répertoire du serveur à partager.&amp;lt;br /&amp;gt; &lt;br /&gt;
* &amp;lt;tt&amp;gt;&amp;lt;u&amp;gt;machine&amp;lt;/u&amp;gt;&amp;lt;/tt&amp;gt; :&amp;lt;br /&amp;gt; Une liste de machines séparée par des virgules et autorisées à monter ce répertoire (utilisez des adresses IP plutôt que des noms à cause des problèmes de &amp;quot;&#039;&#039;dns spoofing&#039;&#039;&amp;quot;).&amp;lt;br /&amp;gt; &lt;br /&gt;
* &amp;lt;tt&amp;gt;&amp;lt;u&amp;gt;options&amp;lt;/u&amp;gt;&amp;lt;/tt&amp;gt; : &lt;br /&gt;
** &#039;&#039;&#039;ro&#039;&#039;&#039; : &amp;lt;br /&amp;gt;C&#039;est la valeur par défaut, lecture seule.&lt;br /&gt;
** &#039;&#039;&#039;rw&#039;&#039;&#039; : &amp;lt;br /&amp;gt;La machine à un accès en lecture/écriture au répertoire.&lt;br /&gt;
** &#039;&#039;&#039;no_root_squash&#039;&#039;&#039; : &amp;lt;br /&amp;gt;Les accès par l&#039;utilisateur root sur le serveur se font sous l&#039;identité root, au contraire de nobody (par défaut)&amp;lt;br /&amp;gt; À UTILISER AVEC PRÉCAUTION&lt;br /&gt;
** &#039;&#039;&#039;sync&#039;&#039;&#039; : &amp;lt;u&amp;gt;uniquement NFS v2&amp;lt;/u&amp;gt;&amp;lt;br /&amp;gt;Ne diffère pas les écritures physiques au volume, augmente la fiabilité en cas de mauvais démontage. La version 3 dispose d&#039;un mécanisme de &#039;&#039;commit-rollback&#039;&#039; donc cette option n&#039;est pas utile.&lt;br /&gt;
&lt;br /&gt;
Un point important, pour un bon fonctionnement : tu dois avoir les mêmes numéros de groupes et d&#039;utilisateurs sur les deux machines. &amp;lt;br /&amp;gt;Des systèmes permettent de gérer çà, NIS (assez ancien) ou LDAP (plus récent). Avec peu d&#039;utilisateurs, tu peux tout simplement éditer &amp;lt;tt&amp;gt;/etc/group&amp;lt;/tt&amp;gt; et &amp;lt;tt&amp;gt;/etc/passwd&amp;lt;/tt&amp;gt; pour synchroniser ces numéros.&lt;br /&gt;
&lt;br /&gt;
Il n&#039;est pas recommandé d&#039;exporter un système DOS ou VFAT à cause de leurs absences de gestion multi-utilisateurs ; ils ne sont pas fait pour être partagés avec NFS. &amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== /etc/hosts.deny ===&lt;br /&gt;
&lt;br /&gt;
On va interdire toutes les machines qui ne sont pas autorisées explicitement dans le &amp;lt;tt&amp;gt;/etc/hosts.allow&amp;lt;/tt&amp;gt;. &amp;lt;br /&amp;gt;Un bon vieux &amp;quot;&amp;lt;tt&amp;gt;ALL: ALL&amp;lt;/tt&amp;gt;&amp;quot; interdira l&#039;accès à tous les services à partir de toutes les machines. On peut cependant être plus précis en écrivant :&lt;br /&gt;
&lt;br /&gt;
 portmap:ALL&lt;br /&gt;
 lockd:ALL&lt;br /&gt;
 mountd:ALL&lt;br /&gt;
 rquotad:ALL&lt;br /&gt;
 statd:ALL&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=== /etc/hosts.allow ===&lt;br /&gt;
&lt;br /&gt;
Dans le même esprit que pour le &amp;lt;tt&amp;gt;/etc/hosts.deny&amp;lt;/tt&amp;gt;, ce fichier a l&#039;architecture suivante :&lt;br /&gt;
&lt;br /&gt;
   [service]: [IP de la machine client]&lt;br /&gt;
&lt;br /&gt;
Donc pour autoriser 192.168.1.34 à se connecter à un partage NFS, on écrira :&lt;br /&gt;
&lt;br /&gt;
   portmap:192.168.1.34&lt;br /&gt;
   lockd:192.168.1.34&lt;br /&gt;
   mountd:192.168.1.34&lt;br /&gt;
   rquotad:192.168.1.34&lt;br /&gt;
   statd:192.168.1.34&lt;br /&gt;
&lt;br /&gt;
On va pouvoir lancer les services ; sur ma Debian, je lance :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;# /etc/init.d/nfs-server start&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;tt&amp;gt;rpcinfo -p&amp;lt;/tt&amp;gt; permet de vérifier que les services fonctionnent. Elle devrait produire un résultat dans cet esprit :&lt;br /&gt;
&lt;br /&gt;
 cacahuete:~# rpcinfo -p&lt;br /&gt;
  program vers proto   port&lt;br /&gt;
   100000    2   tcp    111  portmapper&lt;br /&gt;
   100000    2   udp    111  portmapper&lt;br /&gt;
   100024    1   udp    737  status&lt;br /&gt;
   100024    1   tcp    739  status&lt;br /&gt;
   100011    1   udp    851  rquotad&lt;br /&gt;
   100011    2   udp    851  rquotad&lt;br /&gt;
   100003    2   udp   2049  nfs&lt;br /&gt;
   100003    2   tcp   2049  nfs&lt;br /&gt;
   100005    1   udp    872  mountd&lt;br /&gt;
   100005    2   udp    872  mountd&lt;br /&gt;
   100005    1   tcp    875  mountd&lt;br /&gt;
   100005    2   tcp    875  mountd&lt;br /&gt;
 cacahuete:~#&lt;br /&gt;
&lt;br /&gt;
Pour recharger les services NFS (par exemple après une modification du fichier de config) :&lt;br /&gt;
&lt;br /&gt;
 cacahuete:~# killall -HUP nfsd&lt;br /&gt;
&lt;br /&gt;
le serveur est prêt ! &amp;lt;br /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Le client ==&lt;br /&gt;
&lt;br /&gt;
Pour utiliser NFS v3, il faut au minimum la version 2.10m du programme &amp;lt;tt&amp;gt;mount&amp;lt;/tt&amp;gt;. Pour voir sa version, taper :&lt;br /&gt;
&lt;br /&gt;
 cacahuete:~# mount -V&lt;br /&gt;
 mount: mount-2.11h&lt;br /&gt;
 cacahuete:~#&lt;br /&gt;
&lt;br /&gt;
On va maintenant pouvoir monter notre partage!&lt;br /&gt;
&lt;br /&gt;
 cacahuete:~# mount mon.serveur.nfs:/home /mnt/home&lt;br /&gt;
 cacahuete:~#&lt;br /&gt;
&lt;br /&gt;
En principe tout devrait bien se dérouler.&lt;br /&gt;
&lt;br /&gt;
Pour monter ce partage définitivement à chaque démarrage de la machine, éditons notre &amp;lt;tt&amp;gt;/etc/fstab&amp;lt;/tt&amp;gt;&amp;lt;nowiki&amp;gt;: &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;# device       mountpoint  fs-type options dump fsckorder&lt;br /&gt;
 ...&lt;br /&gt;
 master.foo.com:/home  /mnt nfs     rw      0    0&lt;br /&gt;
 ...&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Liens ==&lt;br /&gt;
&lt;br /&gt;
* Cet article est principalement basé sur le [http://www.linuxdoc.org/HOWTO/NFS-HOWTO/index.html NFS howto]&lt;br /&gt;
* Les sources des logiciels NFS sur http://nfs.sourceforge.net/&lt;br /&gt;
* [http://www.linuxdoc.org/HOWTO/LDAP-HOWTO.html LDAP howto]&lt;br /&gt;
* [http://www.linuxdoc.org/HOWTO/NIS-HOWTO.html NIS howto]&lt;br /&gt;
* Va te faire peur sur [http://www.securityfocus.com/ security focus]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;merci&amp;quot;&amp;gt;Cette page est issue de la documentation &#039;pré-wiki&#039; de Léa a été convertie avec HTML::WikiConverter. Elle fut créée par Guillaume Pierronnet le 22/10/2001.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Copyright =&lt;br /&gt;
Copyright &amp;amp;copy; 22/10/2001, Guillaume Pierronnet&lt;br /&gt;
{{CC-BY-NC-SA}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Autres ressources=&lt;br /&gt;
* Cet article est principalement basé sur le [http://www.linuxdoc.org/HOWTO/NFS-HOWTO/index.html NFS howto]&lt;br /&gt;
* Les sources des logiciels NFS sur http://nfs.sourceforge.net/ &lt;br /&gt;
* [http://en.tldp.org/HOWTO/LDAP-HOWTO/ LDAP howto]&lt;br /&gt;
* [http://www.linuxdoc.org/HOWTO/NIS-HOWTO.html NIS howto]&lt;br /&gt;
* Va te faire peur sur [http://www.securityfocus.com/ security focus]&lt;/div&gt;</summary>
		<author><name>Stanley (phorum)</name></author>
	</entry>
</feed>