10
votes

Comment puis-je obtenir un dossier / vagabond sur ubuntu / xenial64

Je viens d'installer une boîte Vagrant avec la commande: xxx pré>

et le démarré avec: p> xxx pré>

après ssh-ing i Impossible de trouver un dossier / Vagrant P>

Qu'est-ce que je fais mal? P>

Selon Documentation Il devrait y avoir / vagrant code> dossier: p>

Par défaut, Vagrant partagera votre répertoire de projet (le répertoire avec le VagrantFile) à / vagabond. P> blockQuote>

Voici un Capture d'écran Où est évident qu'il n'y a pas de dossier sans / vagabond p> mon environnement hôte est: p>

  • Windows 7 LI>
  • Version Vagrant 1.8.1 Li>
  • Vbox Version 5.0.20R106931 LI> ul>

    Voici mon fichier Vagrant: p> xxx pré>

    et voici mon fichier de provisioning: p>

    echo "------------------------------"
    echo "--- Updating packages list ---"
    echo "------------------------------"
    apt-get -y update
    
    echo "-----------------------"
    echo "--- Installing curl ---"
    echo "-----------------------"
    apt-get -y install curl
    
    echo "----------------------"
    echo "--- Installing git ---"
    echo "----------------------"
    apt-get -y install git
    
    echo "-----------------------------"
    echo "--- Installing python-pip ---"
    echo "-----------------------------"
    apt-get -y install python-pip
    yes | pip install --upgrade pip
    
    echo "--------------------------"
    echo "--- Installing node.js ---"
    echo "--------------------------"
    apt-get -y install  nodejs
    
    echo "----------------------"
    echo "--- Installing npm ---"
    echo "----------------------"
    apt-get -y install npm
    


4 commentaires

Partagez votre fichier Vagrant pour voir la configuration


Description éditée avec des informations pertinentes.


Pourriez-vous s'il vous plaît partager la sortie lorsque vous exécutez Vagrant Up?


Alessandro Caetano, je n'ai plus accès à cet hôte. En attendant, j'ai changé pour travailler avec Virtualbox directement. n'a pas eu le temps de rechercher une solution. Alors projet abandonné pour le moment.


5 Réponses :


0
votes

Vagrant Par défaut monte un dossier A / Vagrant sur la machine invitée synchronisée avec le dossier où le VagrantFile est.

Il y a quelques raisons pour lesquelles Vagrant ne pouvait pas monter votre dossier partagé, le plus courant est que vous n'avez pas les pilotes VirtualBox correctement installés et initialisés. Ce qui se produit lorsque vous n'avez pas vos en-têtes de noyau sur la même version des packages de boîte virtuelle.

D'abord Assurez-vous de ne pas avoir cette ligne sur votre VagrantFile car cela désactivera le dossier synchronisé:

config.vm.synced_folder ".", "/ Vagrant", Désactivé: TRUE

Si vous ne l'avez pas, c'est probablement une erreur avec les modules VirtualBox de votre système et je vous recommanderais de vérifier les pilotes en procédant comme suit.

Détruire votre machine virtuelle en cours:

Vagrant Destroy -f

Vous pouvez vérifier votre version du noyau à l'aide de:

uname -r

Après cela, installez les en-têtes de votre noyau:

sudo apt-get Installez Linux-headers-'uname-r '

Ensuite, installez les packages VirtualBox pour votre noyau:

sudo apt-get Installer virtualbox-dkms VirtualBox-dkms VirtualBox-Guest-Utils VirtualBox-Guest-Adads-ISO

charger les pilotes VirtualBox:

sudo modprobe vboxdrv

Vous pouvez maintenant essayer de monter la machine virtuelle à nouveau sur Vagrant:

Vagrant Up

N'oubliez pas que vous pouvez reconfigurer votre VM pour avoir autant de dossiers partagés que vous souhaitez, vous pouvez le faire avec:

config.vm.synced_folder "src /", "/ srv / site"

Le premier argument est le chemin d'accès au dossier de la machine hôte, le second est où le dossier sera présent sur la machine invitée.

J'espère que cela vous aide.


1 commentaires

Je suis désolé, je n'ai pas utilisé Windows sur la machine hôte. Déchargez ma réponse.



0
votes

Vous pouvez essayer d'installer le plug-in VBGuest Addition et voir si cela aide. XXX

vb-invité plugin repo

De plus, parfois lorsque vous installez la Vbox sur votre ordinateur si vous ne donnez pas d'autorisations aux pilotes supplémentaires qu'il souhaite installer ne sera pas autorisé. fonctionner correctement. Vous devrez peut-être vous installer pour vous assurer d'accepter l'invite lorsque vous demandez d'installer des pilotes.

Au case ne fonctionne pas, vous pouvez essayer de démarrer avec une interface graphique et coller ici la sortie lorsque essayer de démarrer la machine vagabonde.


0 commentaires

2
votes

Pour une raison quelconque, Ubuntu / Xenial64 ne vient pas avec un dossier synchronisé / vagabond.

Je devais configurer le mien dans le fichier Vagrant: p>

config.vm.synced_folder ".", "/vagrant"


3 commentaires

Je pense que votre source pour le dossier synchronisé doit être le répertoire actuel "." au lieu de "Vagrant" .


Mis à jour. Je développe plusieurs applications sur une seule boîte et aime .gitignore tous les fichiers à l'intérieur de "Vagrant".


Cela corrige le problème avec le dossier manquant / vagabond, quelle que soit la technologie de synchronisation (NFS pour moi). Utiliser Xenial64 et Vagrant 1.8.5



10
votes

mise à jour: strong>

Ce problème a finalement été corrigé dans la version V20160921.0.0 CODE> et la plus haute de la boîte officielle 16.04 Vagrant. La libération avant que v20160909.0.0 code> est également corrigé mais a un autre problème sans rapport, comme indiqué par Poma dans les commentaires. P>

Vous pouvez utiliser la commande suivante pour télécharger la nouvelle version et remplacer également votre ancienne instance VM avec un nouveau. Cependant, Mise à niveau de la boîte lisse votre instance VM d'origine. Strong> p> xxx pré>

Si vous ne voulez pas essuyer votre VM pour une raison quelconque, vous pouvez toujours Appliquez mes correctifs d'origine ci-dessous. P>

Post original: strong> P>

Apparemment L'image officielle Ubuntu / Xenial64 est cassée, comme indiqué dans Ce rapport de bogue sur LaunchPad . P>

Voici une citation des commentaires de Louis Zuckerman Avec toutes les questions qui sont toujours infligées à la version 20160627.0.0 code> de ce que je pouvais dire: P>

Il existe un certain nombre de problèmes avec la boîte officielle Vagrant pour Xenial: P>

  1. Les packages nécessaires sont manquants (les dossiers synchronisés ne fonctionnent pas, aucune gestion de configuration) li>
  2. Dossier synchronisé par défaut / Vagrant est désactivé LI>
  3. Nom VM est statique, vous ne pouvez donc avoir qu'une seule instance de la boîte sur un hôte li> ol>

    [...] p> BlockQuote>

    Ces étapes sont des problèmes fixes 1 et 2 pour moi: p>

    1. ssh dans la boîte et installer les ajouts invités manquants manuellement p> XXX PRE> LI>

    2. Ajoutez manuellement le point de montage manquant à votre VagrantFile code> p> XXX PRE> LI> OL>

      Pour corriger le troisième problème, vous devez donner un nom unique à la boîte manuellement en ajoutant une option spécifique au fournisseur pour VirtualBox à votre VagrantFile. P>

      config.vm.provider "virtualbox" do |vb|
        vb.name = "This_Name_Is_Unique_For_This_Machine"
      end
      


6 commentaires

Le 3ème numéro est discuté ici


Merci, basé sur votre commentaire, j'ai mis à jour ma réponse pour inclure également ce correctif.


config.vm.synced_folder ".", "/ Vagrant /" # Correction de l'image Ubuntu / Xenial64 cassé Ceci ne fonctionne pas pour moi :( L'OS hôte est Mac OS X


Avez-vous également installé les ajouts invités manquants?


Cette image est toujours cassée en raison de bugs.Launchpad.net/cloud-images/+bug / 1621393


@Poma qui est résolu maintenant. J'ai édité mon post. Merci.



3
votes

Y a-t-il une raison pour laquelle les gens n'utilisent pas Bento / Ubuntu-16.04?

Voir cette réponse: https://github.com/mitchellh/vagrant/issues/7155

Les cases publiées par Canonical sous l'espace de noms Ubuntu pour 16.04 sont très cassés. Ils ne suivent pas les guides recommandés pour comment Construisez une boîte vagabonde et il manque des composants clés tels que invité ajouts, forfaits requis, ou ils font des choses comme le codes hardcode le Nom d'hôte pour faire fonctionner des VMS simultanés impossibles. ... En général, les utilisateurs ont eu plus de succès avec les cases sous le bento Espaces de noms. Une idée fausse commune est qu'un espace de nom comme "ubuntu" représente l'espace canonique des boîtes Ubuntu. Ceci est faux.

Il semble y avoir de nombreuses raisons de ne pas utiliser les boîtes Ubuntu / Xenial64 et utilisez simplement une boîte de travail de l'espace de noms Bento au lieu d'essayer de pirater les boîtes d'espace de noms Ubuntu. La marque Ubuntu peut être plus confortable pour certaines personnes à voir, mais je pense qu'il est cassé avec Vagrant.


1 commentaires

C'est la bonne réponse. La boîte "Ubuntu / Xenial64" doit être supprimée, car elle ne suit toujours pas les normes. 'Bento / Ubuntu-16.04' est bon, mais j'utilise celui-ci: "BoxCutter / Ubuntu1604".