vagrant2.2.6支持virtualbox6.1版本

好不容易安裝上vagrant2.2.6,結果由於我用的是最新的virtualbox6.1版本的,結果不支持。
報錯如下:
一是就是我的virtual安裝太超前了,目前不支持。但是我又不想卸載之後再裝一次。於是在網上還真找到了解決辦法,改改配置,加幾個文件就成了。

$ vagrant up
The provider 'virtualbox' that was requested to back the machine homestead' is reporting that it isn't usable on this system. The reason is shown below:

Vagrant has detected that you have a version of VirtualBox installed that is not supported by this version of Vagrant. Please install one of the supported versions listed below to use Vagrant:

4.0, 4.1, 4.2, 4.3, 5.0, 5.1, 5.2, 6.0

A Vagrant update may also be available that adds support for the version you specified. Please check www.vagrantup.com/downloads.html to download the latest version.

原文:https://blogs.oracle.com/scoter/getting-vagrant-226-working-with-virtualbox-61-ga

D:\HashiCorp\Vagrant\embedded\gems\2.2.6\gems\vagrant-2.2.6\plugins\providers\virtualbox\driver

增加6.1的支持:

修改

vagrant/embedded/gems/2.2.6/gems/vagrant-2.2.6/plugins/providers/virtualbox/driver/meta.rb

增加6.1:

@logger.debug("Finding driver for VirtualBox version: #{@@version}")

 driver_map   = {

  "4.0" => Version_4_0,

  "4.1" => Version_4_1,

  "4.2" => Version_4_2,

  "4.3" => Version_4_3,

  "5.0" => Version_5_0,

  "5.1" => Version_5_1,

  "5.2" => Version_5_2,

  "6.0" => Version_6_0,

  "6.1" => Version_6_1,

 }

然後創建6.1對應的文件:

vagrant/embedded/gems/2.2.6/gems/vagrant-2.2.6/plugins/providers/virtualbox/driver/version_6_1.rb

內容改成如下:

require File.expand_path("../version_6_0", __FILE__)

module VagrantPlugins
  module ProviderVirtualBox
    module Driver
      # Driver for VirtualBox 6.1.x
      class Version_6_1 < Version_6_0
        def initialize(uuid)
          super

          @logger = Log4r::Logger.new("vagrant::provider::virtualbox_6_1")
        end
      end
    end
  end
end

增加 “module Driver”

vagrant/embedded/gems/2.2.6/gems/vagrant-2.2.6/plugins/providers/virtualbox/plugin.rb
    # Drop some autoloads in here to optimize the performance of loading

    # our drivers only when they are needed.

    module Driver

      autoload :Meta, File.expand_path("../driver/meta", __FILE__)

      autoload :Version_4_0, File.expand_path("../driver/version_4_0", __FILE__)

      autoload :Version_4_1, File.expand_path("../driver/version_4_1", __FILE__)

      autoload :Version_4_2, File.expand_path("../driver/version_4_2", __FILE__)

      autoload :Version_4_3, File.expand_path("../driver/version_4_3", __FILE__)

      autoload :Version_5_0, File.expand_path("../driver/version_5_0", __FILE__)

      autoload :Version_5_1, File.expand_path("../driver/version_5_1", __FILE__)

      autoload :Version_5_2, File.expand_path("../driver/version_5_2", __FILE__)

      autoload :Version_6_0, File.expand_path("../driver/version_6_0", __FILE__)

      autoload :Version_6_1, File.expand_path("../driver/version_6_1", __FILE__)

    end
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章