Linux Vagrant Box compatibile con VirtualBox versione 6

Aug 25 2020

Ho provato a installare vari Vagrant Box dal catalogo Vagrant Box di Hashicorp, ma nessuno sembra essere compatibile con:

  1. Versione vagabonda:2.2.9
  2. Versioni di VirtualBox: 6.0.xo6.1.x
  3. Ospite:Mac Catalina

Ho provato più soluzioni alternative condivise online e le aggiunte degli ospiti non corrispondono o non ce ne sono disponibili.

Anche il plug-in e l'aggiunta manuale delle aggiunte guest non funzionano.

Tutto sembra funzionare bene tranne la sincronizzazione delle cartelle condivise. Stai cercando una soluzione alternativa per correggere la sincronizzazione della cartella condivisa o una Linux Vagrant Box standard compatibile con le aggiunte guest di VirtualBox.

Risposte

1 hemanik Aug 25 2020 at 14:49

Il problema è stato risolto montando manualmente il VBoxGuestAdditions.iso file Guest Additions come CD-ROM in VirtualBox.

Nonostante ciò, le scatole Vagrant potrebbero non riuscire a sincronizzare le cartelle condivise tramite il provider VirtualBox e utilizzare invece rsyncper lo stesso.

Questo può essere risolto aggiornando Vagrantfileimpostando esplicitamente il tipo di provider su VirtualBoxnel file config.

config.vm.synced_folder ".", "/vagrant", type: "virtualbox"

Successivamente vagrant reload, la sincronizzazione della cartella condivisa dovrebbe funzionare come previsto.

$ vagrant reload
==> default: Attempting graceful shutdown of VM...
==> default: Clearing any previously set forwarded ports...
Vagrant is currently configured to create VirtualBox synced folders with
the `SharedFoldersEnableSymlinksCreate` option enabled. If the Vagrant
guest is not trusted, you may want to disable this option. For more
information on this option, please refer to the VirtualBox manual:

  https://www.virtualbox.org/manual/ch04.html#sharedfolders

This option can be disabled globally with an environment variable:

  VAGRANT_DISABLE_VBOXSYMLINKCREATE=1

or on a per folder basis within the Vagrantfile:

  config.vm.synced_folder '/host/path', '/guest/path', SharedFoldersEnableSymlinksCreate: false
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
    default: /vagrant => /Users/hemanik/vm/
==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision`
==> default: flag to force provisioning. Provisioners marked to run always will still run.

Non sono sicuro se sia stato in grado di trovare le aggiunte degli ospiti default: Checking for guest additions in VM...o se la modifica precedente con le aggiunte degli ospiti abbia avuto effetto, ma la sincronizzazione della cartella condivisa funziona come previsto.

Solo per un aggiornamento, Vagrant reinstallato e le attuali versioni funzionanti sono le seguenti:

  1. Versione vagabonda:2.2.10
  2. Versione VirtualBox:6.0.24 r139119