HOW TO : Montage NFS entre machine hôte et VirtualBox

Montage NFS Ubuntu et VirtualBox

I. Présentation

Dans ce tutoriel, je vais vous expliquer comment partager un système de fichier NFS entre un Ubuntu et une machine Linux sous VirtualBox.

Comme vous l’avez vu précédemment j’ai actuellement une machine virtuelle minimaliste sur mon PC de salon, je n’avais pas envie de stocker mes données dans un volume virtuel (fichier vdi, vmdk et cie), mais au niveau d’une partition physique sur le pc de salon, le dilemme quel système d’accès distant à un disque dur distant choisir !!!

Plusieurs solutions s’offrent à moi un montage SSH, NFS, CIFS.

J’ai choisi d’effectuer des montages NFS, car :

  • Je n’ai pas envie de faire des montages SSH (gestion des accès compliqués, cryptage superflu, perte de performance, etc …)
  • Je n’ai pas envie de faire des montages CIFS via samba, car je ne sais pas ce que cela va donner au niveau de la gestion de droits.

J’ai donc choisi naturellement de faire un montage NFS sur mon PC de salon Ubuntu, surtout que je ne connaissais pas ou peu ce type de montage, et à vrai dire c’est bien plus simple que les montages SSH et CIFS !!!

II. Présentation NFS

Il s’agit d’un système de fichier réseau qui vient de l’anglais Network File System tout simplement. Il permet à des hôtes distants de monter un système de fichier sur un réseau et de les utiliser comme s’il s’agit d’un disque local.

III. Installation et mise en place

1. Sur le SERVEUR (mon pc de salon)

Installation des paquets :

Éditez le fichier /etc/exports

Dans notre cas le serveur 192.168.1.253 aura les droits RW sur le montage /mnt/multimedia.

=>On met ensuite les droits 777 sur le dossier pour des raisons de simplicité.

On redémarre le service

Premier état d’âme :

Le principal problème avec NFS (je me souvenais d’un truc comme ça lors de mes tests dans mon ancienne boite)est la correspondance des UID et des GID, bon pour le fun je continu l’article, mais cela me pose problème et ne répond pas correctement à mes besoins.

2. Sur le CLIENT (machine virtuelle)

Pour monter un répertoire en NFS, il faut connaitre toute l’arborescence du serveur, rien de bien compliqué en soit.

Montage manuel :

Fuck j’ai déjà un bug, lorsque je créer un fichier il me met des droits chelou :

C’est quoi ce user bizarre !!!

Je fais des recherches sur le net, et voici la solution :

La source suivante :

https://bugs.launchpad.net/ubuntu/+source/nfs-utils/+bug/662711

Celle-ci me fournit la réponse (c’est un copier-coller)

Not a bug it seems, but needs documentation or something somewhere.
10.10 enables NFSv4 and I was able to fix it by enabling nfs idmap on both server and client.
On my solaris server, I edited /etc/default/nfs and set NFSMAPID_DOMAIN to my server’s name (domain name, whatever), then did svcadm restart nfs/mapid
On ubuntu, I edited /etc/idmapd.conf and changed Domain to be the same value as what I set for NFSMAPID_DOMAIN, edit /etc/default/nfs-common and set NEED_STATD=no and NEED_IDMAPD=yes, then service rpc_pipefs restart and service idmapd restart, remount your nfs shares (in my case, service autofs restart); and all the uid/gid mapping should now be correct.

Bon en faite il faut juste faire la modification suivante sur le client :

et relancer les service.

Je me retrouve avec un nobody/nogroup sur mon serveur, car aucune correspondance n’a été trouvé entre le id/gid client/serveur, bref je suis nul.

======================================================================================================================

IV. Aide sur la configuration serveur

secure : cette option impose l’utilisation d’un port réservé (inférieur à 1024).
rw : exporte le répertoire en lecture / écriture
ro : exporte le répertoire en lecture seule
async : le serveur NFS va envoyer un faux ACK pour indiquer que le fichier a été écrit sur le support de stockage, alors que cela n’a peut-être pas encore été fait. Rapidité +++.
sync : le serveur NFS va envoyer un faux ACK pour indiquer que le fichier a été écrit sur le support de stockage, rapidité +.
root_squash : option par défaut. Transforme les requêtes provenant de l’UID 0 / GID 0 vers le UID et GID du compte anonyme.
no_root_squash : ne transforme pas les requêtes provenant de l’UID 0 / GID 0. attention problème de sécurité.
all_squash : transforme tous les UID/GID vers le UID/GID de l’utilisateur anonyme.
anonuid : permets de spécifier le UID de l’utilisateur anonyme.
anongid : permet de spécifier le GID de l’utilisateur anonyme.

Flori@n

Moi c'est Florian, j'ai 32 ans. J'ai découvert l'informatique à 17 ans et eu ma première connexion Internet à 23 ans. On ne va donc pas dire que j'ai été très précoce dans ce domaine... Quoiqu'il en soit, depuis je passe en moyenne 8 heures par jour sur un PC et ce qui est assez bizarre c'est que j'aime ça et j'en redemande le soir et le week-end. Je suis donc quelqu'un de bizarre, mais je n'ai aucun problème avec ça !!!

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

%d blogueurs aiment cette page :