2017-09-29 54 views
1

我一直在試圖安裝並運行一個可以調出CentOS 7虛擬機的流浪實例。理想情況下,我將能夠使用軟件來配置虛擬機。流浪錯誤 - 未定義的方法`gsub!' for nil:NilClass(NoMethodError)

不幸的是我不斷收到此錯誤每當我試圖把無業遊民了起來:

Installing additional modules ... 
vboxadd.sh: Starting the VirtualBox Guest Additions. 

Could not find the X.Org or XFree86 Window System, skipping. 
Redirecting to /bin/systemctl start vboxadd.service 
Redirecting to /bin/systemctl start vboxadd-service.service 
Unmounting Virtualbox Guest Additions ISO from: /mnt 
==> default: Checking for guest additions in VM... 
==> default: Forcing shutdown of VM... 
==> default: Destroying VM and associated drives... 
C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/platform.rb:115:in `cygwin_path': undefined method `gsub!' for nil:NilClass (NoMethodError) 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/synced_folders/rsync/helper.rb:54:in `rsync_single' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/synced_folders/rsync/synced_folder.rb:48:in `block in enable' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/synced_folders/rsync/synced_folder.rb:47:in `each' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/synced_folders/rsync/synced_folder.rb:47:in `enable' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/synced_folders.rb:93:in `block in call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/synced_folders.rb:90:in `each' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/synced_folders.rb:90:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/synced_folder_cleanup.rb:28:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/synced_folders/nfs/action_cleanup.rb:19:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/prepare_nfs_valid_ids.rb:12:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb:49:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb:30:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/env_set.rb:19:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/provision.rb:80:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/clear_forwarded_ports.rb:15:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/set_name.rb:50:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/clean_machine_folder.rb:17:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/check_accessible.rb:18:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/call.rb:53:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/call.rb:53:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/call.rb:53:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/box_check_outdated.rb:78:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/config_validate.rb:25:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/match_mac_address.rb:19:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/discard_state.rb:15:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/import.rb:74:in `import' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/import.rb:13:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/prepare_clone_snapshot.rb:17:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/prepare_clone.rb:15:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/customize.rb:40:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/check_accessible.rb:18:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/call.rb:53:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/config_validate.rb:25:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/handle_box.rb:56:in `call'  from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:95:in `block in finalize_action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builtin/call.rb:53:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/warden.rb:34:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/builder.rb:116:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `block in run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/busy.rb:19:in `busy' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/action/runner.rb:66:in `run' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/machine.rb:227:in `action_raw' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/machine.rb:202:in `block in action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/environment.rb:631:in `lock' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/machine.rb:188:in `call' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/machine.rb:188:in `action' 
     from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/batch_action.rb:82:in `block (2 levels) in run' 

C:\Users\tdias\Desktop\Vagrant> 

我已經試過卸載並重新安裝,但並未奏效。我檢查了提到的文件,發現這個:

# This takes any path and converts it from a Windows path to a 
    # Cygwin or msys style path. 
    # 
    # @param [String] path 
    # @return [String] 
    def cygwin_path(path) 
     begin 
     # We have to revert to the old env 
     # path here, otherwise it looks like 
     # msys2 ends up using the wrong cygpath 
     # binary and ends up with a `/cygdrive` 
     # when it doesn't exist in msys2 
     original_path_env = ENV['PATH'] 
     ENV['PATH'] = ENV['VAGRANT_OLD_ENV_PATH'] 
     cygpath = Vagrant::Util::Which.which("cygpath") 
     cygpath.gsub!("/", '\\') 
     process = Subprocess.execute(
      cygpath, "-u", "-a", path.to_s) 
     return process.stdout.chomp 
     rescue Errors::CommandUnavailableWindows => e 
     # Sometimes cygpath isn't available (msys). Instead, do what we 
     # can with bash tricks. 
     process = Subprocess.execute(
      "bash", 
      "--noprofile", 
      "--norc", 
      "-c", "cd #{Shellwords.escape(path)} && pwd") 
     return process.stdout.chomp 
     ensure 
     ENV['PATH'] = original_path_env 
     end 
    end 

有誰知道如何解決?

+0

它看起來像這個腳本無法找到cygwin。你有沒有安裝cygwin?如果是這樣,你是否在bash shell中運行vagrant?這個問題可能是相關的:https://github.com/hashicorp/vagrant/issues/6788 –

+0

我沒有安裝cygwin,因爲這是一個新鮮的Windows安裝。安裝它並再次嘗試以相同結果結束 –

+0

你能提供你的vagrant文​​件嗎?並且它是否發生在沒有流浪的命令上?運行'vagrant status'只是爲了看看你是否有錯誤或者報告你有錯誤的命令 –

回答

0

這條線是你的問題:

cygpath.gsub!("/", '\\') 

您正試圖改變這一切「/」在你的字符串「\」,但沒有「/」在你的文字,如果您使用gsub insted的gsub!,你不會得到這個錯誤。

+0

恐怕我在使用流浪漢的時候有點小氣。我會怎麼做? –

+0

這是'vagrant'庫的一部分,不是OP代碼庫。 @TiagoDias不會改變這一點你的問題是配置驅動,而不是代碼驅動。 – engineersmnky

+0

你知道配置錯誤在哪裏嗎? –

相關問題