GNU/Linux >> Tutoriels Linux >  >> Linux

Vagrant Up se bloque lors du montage de dossiers partagés NFS - Comment réparer ?

Aujourd'hui, j'ai créé une nouvelle machine virtuelle avec Arch Linux vagrant box. J'ai démarré la machine virtuelle Arch Linux avec vagrant up commande, mais elle n'a pas démarré. Chaque fois que j'essaie de démarrer la machine virtuelle, le vagabond se bloque lors du montage de dossiers partagés NFS. Après avoir attendu plus de 5 minutes, la commande s'est terminée avec l'erreur suivante :

 [...]
 ==> default: Mounting NFS shared folders…
 ==> default: Pruning invalid NFS exports. Administrator privileges will be required…
 [sudo] password for sk: 
 ==> default: Removing domain…
 The following SSH command responded with a non-zero exit status.
 Vagrant assumes that this means the command failed!
 mount -o vers=3,udp 192.168.122.1:/home/sk/vagrant/archlinux /vagrant
 Stdout from the command:
 Stderr from the command:
 mount.nfs: Connection refused

Comme vous pouvez le voir, le vagrant up La commande échoue lors du montage des dossiers partagés NFS. Mon hôte KVM est la dernière édition de Fedora 34. Je n'ai jamais eu ce problème avec les machines virtuelles Ubuntu. Cette erreur s'est produite uniquement lorsque je démarre la machine virtuelle Arch Linux. Si votre machine Vagrant est bloquée lors du "Montage des dossiers partagés NFS", vous pouvez utiliser la solution de contournement indiquée ci-dessous.

Vagrant up se bloque lors du montage de dossiers partagés NFS sous Linux

Ceci est probablement et plus probablement causé par votre pare-feu. Dans mon cas, c'est bien le problème du pare-feu. J'ai dû autoriser les services suivants via le pare-feu pour résoudre le problème de montage des dossiers partagés NFS dans Vagrant :

  • nfs,
  • monté,
  • rpc-bind.

Aussi, j'ai ouvert le port 2049 pour les deux tcp et udp .

1. Exécutez les commandes suivantes une par une pour autoriser les services susmentionnés et le port 2049.

$ sudo firewall-cmd --permanent --zone=libvirt --add-service=nfs3
$ sudo firewall-cmd --permanent --zone=libvirt --add-service=nfs
$ sudo firewall-cmd --permanent --zone=libvirt --add-service=mountd
$ sudo firewall-cmd --permanent --zone=libvirt --add-service=rpc-bind
$ sudo firewall-cmd --permanent --zone=libvirt --add-port=2049/tcp
$ sudo firewall-cmd --permanent --zone=libvirt --add-port=2049/udp

2. Rechargez les règles de pare-feu pour appliquer les modifications :

$ sudo firewall-cmd --reload

3. Affichez la liste des services autorisés à l'aide de la commande :

$ firewall-cmd --list-all

Exemple de résultat :

FedoraWorkstation (active)
  target: default
  icmp-block-inversion: no
  interfaces: wlp9s0
  sources: 
  services: dhcpv6-client mdns mountd nfs rpc-bind samba-client ssh
  ports: 1025-65535/udp 1025-65535/tcp
  protocols: 
  forward: no
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

Cela active NFS entre votre hôte et les machines virtuelles Vagrant et autorise le libvirt des machines virtuelles Vagrant hébergées pour utiliser des montages nfs à partir du système hôte.

4. Après avoir autorisé le service nfs et le port correspondant, j'ai essayé de démarrer la machine virtuelle Vagrant. Cette fois, j'ai rencontré un autre problème :

[...]
mount.nfs: requested NFS version or transport protocol is not supported

5. Pour corriger cette erreur, modifiez /etc/nfs.conf fichier dans le système hôte :

$ sudo vi /etc/nfs.conf

6. Décommentez les deux lignes suivantes :

[nfsd]
udp=y

Enregistrez le fichier et fermez-le.

7. Redémarrez le service nfs :

$ sudo systemctl restart nfs-server.service

8. Enfin, redémarrez le système hôte :

$ sudo reboot

C'est ça. Vous devriez maintenant pouvoir démarrer la machine Vagrant sans aucun problème.

Nous avons publié un guide complet sur l'utilisation de Vagrant. Consultez le lien suivant pour savoir comment utiliser Vagrant.

  • Tutoriel Vagrant – Premiers pas avec Vagrant sous Linux

Linux
  1. Comment installer Vagrant sur Linux

  2. Comment corriger l'erreur d'installation de Python lors du chargement des bibliothèques partagées :libssl.so.1.0.0 ? [Résolu]

  3. Montage automatique des dossiers partagés avec Virtualbox ?

  4. Comment installer Vagrant sur Ubuntu 20.04

  5. Comment initialiser une bibliothèque partagée sous Linux

Comment monter un partage NFS sous Linux

Comment configurer la mise en réseau dans Vagrant

Comment réparer les mises à jour Windows bloquées à 0 %

Comment compresser un dossier sous Linux

Comment j'utilise NFS pour partager des dossiers entre différents systèmes dans la configuration de Homelab

Comment monter NFS sur Debian 11