2014-03-19 4 views
3

를 입력 18 21:11:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux cat/proc/version Linux 버전 3.11.0-18- 일반 (buildd @ toyol) (gcc 버전 4.8.1 (우분투/Linaro 4.8.1-10ubuntu8)) # 32-Ubuntu SMP Tue Feb 18 21:11:14 UTC 2014방랑은 다음과 같은 지침에 따라 유효하지 않은 상태

Virtualbox-4.2

나는 또한이 설치

git clone git://github.com/opscode-cookbooks/vim.git 
git clone git://github.com/opscode-cookbooks/git.git 
git clone git://github.com/opscode-cookbooks/apt.git 
git clone git://github.com/tiokksar/chef-oh-my-zsh-solo.git 
git clone git://github.com/opscode-cookbooks/openssl.git 
git clone git://github.com/getaroom/chef-couchbase.git 

: 내가하려고

https://github.com/dotless-de/vagrant-vbguest 
vagrant plugin install vagrant-vbguest 

요리 책에서 방랑 1.5 vagrant_1.5.0_x86_64.deb

6,

VBoxManage --version 
4.2.16_Ubuntur86992 

나는 다음과 같은 요리사의 요리 책을 복제 폴더 멋진 Vagrantfile을 만들어서 자동으로 마운트 된 USB로 exact64 VM을 만듭니다. 하지만 내 버추얼 VM상의 usbfilter를 추가하려고 할 때마다, 나는 그 메시지와 끝까지 : 세부 사항

% cat Vagrantfile 
# -*- mode: ruby -*- 
# vi: set ft=ruby : 

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing! 
VAGRANTFILE_API_VERSION = "2" 

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| 
    # All Vagrant configuration is done here. The most common configuration 
    # options are documented and commented below. For a complete reference, 
    # please see the online documentation at vagrantup.com. 

    # Every Vagrant virtual environment requires a box to build off of. 
    config.vm.box = "hashicorp/precise64" 

    # The url from where the 'config.vm.box' box will be fetched if it 
    # doesn't already exist on the user's system. 
    # config.vm.box_url = "http://domain.com/path/to/above.box" 

    # Create a forwarded port mapping which allows access to a specific port 
    # within the machine from a port on the host machine. In the example below, 
    # accessing "localhost:8080" will access port 80 on the guest machine. 
    # config.vm.network "forwarded_port", guest: 80, host: 8080 

    # Create a private network, which allows host-only access to the machine 
    # using a specific IP. 
    # config.vm.network "private_network", ip: "192.168.33.10" 

    # Create a public network, which generally matched to bridged network. 
    # Bridged networks make the machine appear as another physical device on 
    # your network. 
    config.vm.network "public_network" 

    # If true, then any SSH connections made will enable agent forwarding. 
    # Default value: false 
    # config.ssh.forward_agent = true 

    # Share an additional folder to the guest VM. The first argument is 
    # the path on the host to the actual folder. The second argument is 
    # the path on the guest to mount the folder. And the optional third 
    # argument is a set of non-required options. 
    # config.vm.synced_folder "../data", "/vagrant_data" 

    # Provider-specific configuration so you can fine-tune various 
    # backing providers for Vagrant. These expose provider-specific options. 
    # Example for VirtualBox: 
    # 
    # config.vm.provider "virtualbox" do |vb| 
    # # Don't boot with headless mode 
    # vb.gui = true 
    # 
    # # Use VBoxManage to customize the VM. For example to change memory: 
    # vb.customize ["modifyvm", :id, "--memory", "1024"] 
    # end 
    # 
    # View the documentation for the provider you're using for more 
    # information on available options. 

    # Enable provisioning with Puppet stand alone. Puppet manifests 
    # are contained in a directory path relative to this Vagrantfile. 
    # You will need to create the manifests directory and a manifest in 
    # the file hashicorp/precise32.pp in the manifests_path directory. 
    # 
    # An example Puppet manifest to provision the message of the day: 
    # 
    # # group { "puppet": 
    # # ensure => "present", 
    # # } 
    # # 
    # # File { owner => 0, group => 0, mode => 0644 } 
    # # 
    # # file { '/etc/motd': 
    # # content => "Welcome to your Vagrant-built virtual machine! 
    # #    Managed by Puppet.\n" 
    # # } 
    # 
    # config.vm.provision "puppet" do |puppet| 
    # puppet.manifests_path = "manifests" 
    # puppet.manifest_file = "site.pp" 
    # end 

    # Enable provisioning with chef solo, specifying a cookbooks path, roles 
    # path, and data_bags path (all relative to this Vagrantfile), and adding 
    # some recipes and/or roles. 
    # 
    config.vm.provision "chef_solo" do |chef| 
    chef.cookbooks_path = "cookbooks" 
    #chef.roles_path = "../my-recipes/roles" 
    chef.data_bags_path = "databags" 
    #chef.add_role "web" 

    chef.add_recipe "apt" 
    chef.add_recipe "zsh" 
    chef.add_recipe "chef-oh-my-zsh-solo" 
    chef.add_recipe "vim" 
    chef.add_recipe "git" 
    chef.add_recipe "openssl" 
    chef.add_recipe "couchbase::server" 

    # setup users (from data_bags/users/*.json) 
    # chef.add_recipe "users::sysadmins" # creates users and sysadmin group 
    # chef.add_recipe "users" 
    # chef.add_recipe "users::sysadmin_sudo" # adds %sysadmin group to sudoers 

    # homesick_agent and its dependencies 
    # chef.add_recipe "root_ssh_agent::ppid" # maintains agent during 'sudo su root' 
    # chef.add_recipe "ssh_known_hosts" 
    # populates /etc/ssh/ssh_known_hosts from data_bags/ssh_known_hosts/*.json 

    # You may also specify custom JSON attributes: 

    #chef.json = { :users => "admin" } 
    chef.json = { 
     "couchbase" => { 
     "server"=> { 
      "password" => "123" 
     } 
     } 
    } 


    chef.log_level = :debug 
    end 

    # Enable provisioning with chef server, specifying the chef server URL, 
    # and the path to the validation key (relative to this Vagrantfile). 
    # 
    # The Opscode Platform uses HTTPS. Substitute your organization for 
    # ORGNAME in the URL and validation key. 
    # 
    # If you have your own Chef Server, use the appropriate URL, which may be 
    # HTTP instead of HTTPS depending on your configuration. Also change the 
    # validation key to validation.pem. 
    # 
    # config.vm.provision "chef_client" do |chef| 
    # chef.chef_server_url = "https://api.opscode.com/organizations/ORGNAME" 
    # chef.validation_key_path = "ORGNAME-validator.pem" 
    # end 
    # 
    # If you're using the Opscode platform, your validator client is 
    # ORGNAME-validator, replacing ORGNAME with your organization name. 
    # 
    # If you have your own Chef Server, the default validation client name is 
    # chef-validator, unless you changed the configuration. 
    # 
    # chef.validation_client_name = "ORGNAME-validator" 
end 

은 다음과 같습니다 : 나는 제거하면

% vagrant up 
Bringing machine 'default' up with 'virtualbox' provider... 
==> default: Importing base box 'hashicorp/precise64'... 
==> default: Matching MAC address for NAT networking... 
==> default: Checking if box 'hashicorp/precise64' is up to date... 
==> default: Setting the name of the VM: smartofficeVM_default_1395303674511_42792 
==> default: The cookbook path '/home/ken/smartofficeVM/databags' doesn't exist. Ignoring... 
==> default: Clearing any previously set network interfaces... 
==> default: Preparing network interfaces based on configuration... 
    default: Adapter 1: nat 
==> default: Forwarding ports... 
    default: 3000 => 3000 (adapter 1) 
    default: 22 => 2222 (adapter 1) 
==> default: Running 'pre-boot' VM customizations... 
==> 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: Error: Connection refused. Retrying... 
    default: Error: Connection refused. Retrying... 
    default: Error: Connection refused. Retrying... 
    default: Error: Connection refused. Retrying... 
    default: Error: Connection refused. Retrying... 
The guest machine entered an invalid state while waiting for it 
to boot. Valid states are 'starting, running'. The machine is in the 
'poweroff' state. Please verify everything is configured 
properly and try again. 

If the provider you're using has a GUI that comes with it, 
it is often helpful to open that and watch the machine, since the 
GUI often has more helpful error messages than Vagrant can retrieve. 
For example, if you're using VirtualBox, run `vagrant up` while the 
VirtualBox GUI is open. 

내 구성 파일은 다음과 같다 다음 줄은 제대로 시작하지거야 (하지만 사용 가능한 USB)

vb.customize ["modifyvm", :id, "--usb", "on"] 
vb.customize ["modifyvm", :id, "--usbehci", "on"] 

편집

동영상 블로그 파일에서

로그

cat VBox.log 

VirtualBox VM 4.2.16_Ubuntu r86992 linux.amd64 (Sep 21 2013 11:46:57) release log 
00:00:00.033561 Log opened 2014-03-20T08:21:15.686771000Z 
00:00:00.033570 OS Product: Linux 
00:00:00.033572 OS Release: 3.11.0-18-generic 
00:00:00.033575 OS Version: #32-Ubuntu SMP Tue Feb 18 21:11:14 UTC 2014 
00:00:00.033610 DMI Product Name: 
00:00:00.033624 DMI Product Version: 
00:00:00.033756 Host RAM: 3882MB total, 3328MB available 
00:00:00.033763 Executable: /usr/lib/virtualbox/VBoxHeadless 
00:00:00.033765 Process ID: 10288 
00:00:00.033767 Package type: LINUX_64BITS_GENERIC (OSE) 
00:00:00.039722 Installed Extension Packs: 
00:00:00.039747 VNC (Version: 4.2.16 r86992; VRDE Module: VBoxVNC) 
00:00:00.046777 SUP: Loaded VMMR0.r0 (/usr/lib/virtualbox/VMMR0.r0) at 0xffffffffa0518020 - ModuleInit at ffffffffa052e0f0 and ModuleTerm at ffffffffa052e390 
00:00:00.046820 SUP: VMMR0EntryEx located at ffffffffa052f510, VMMR0EntryFast at ffffffffa052f240 and VMMR0EntryInt at ffffffffa052f230 
00:00:00.049809 OS type: 'Ubuntu_64' 
00:00:00.073143 File system of '/home/ken/VirtualBox VMs/smartofficeVM_default_1395303674511_42792/Snapshots' (snapshots) is unknown 
00:00:00.073166 File system of '/home/ken/VirtualBox VMs/smartofficeVM_default_1395303674511_42792/box-disk1.vmdk' is ext4 
00:00:00.091096 VMSetError: /build/buildd/virtualbox-4.2.16-dfsg/src/VBox/Main/src-client/ConsoleImpl2.cpp(2300) int Console::configConstructorInner(PVM, util::AutoWriteLock*); rc=VERR_NOT_FOUND 
00:00:00.091111 VMSetError: Implementation of the USB 2.0 controller not found! 
00:00:00.091113 Because the USB 2.0 controller state is part of the saved VM state, the VM cannot be started. To fix this problem, either install the 'Oracle VM VirtualBox Extension Pack' or disable USB 2.0 support in the VM settings 
00:00:00.217513 ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={db7ab4ca-2a3f-4183-9243-c1208da92392} aComponent={Console} aText={Implementation of the USB 2.0 controller not found! 
00:00:00.217535 Because the USB 2.0 controller state is part of the saved VM state, the VM cannot be started. To fix this problem, either install the 'Oracle VM VirtualBox Extension Pack' or disable USB 2.0 support in the VM settings (VERR_NOT_FOUND)}, preserve=false 
00:00:00.224473 Power up failed (vrc=VERR_NOT_FOUND, rc=NS_ERROR_FAILURE (0X80004005)) 

방랑 = 디버그 vragant가

http://pastebin.com/2GMhmy9T

누구 로그는 주제에 대한 몇 가지 전문 지식을 가지고? 대단히 감사합니다.

해결책 : 이미 설치되었지만 ... 읽는 중 : 00 : 00 : 00.039722 설치된 확장 팩 : 00 : 00 : 00.039747 VNC (버전 : 4.2.16 r86992, VRDE 모듈 : VBoxVNC) 사실 호스트에 확장 게스트 팩을 설치해야합니다. 다소 혼란 스럽습니다. 고마워요. 당신은 적절한 대답을 추가 할 수 있습니다, 나는 그것을 검증 할 것입니다. 중 VBOX 로그에

+1

"VAGRANT_LOG = 디버그 애매한 업"출력과 함께 요지를 붙여 넣으시겠습니까? – Emyl

+0

물론 VM 로그 파일도 있습니다. 추가 정보로 내 게시물을 수정하겠습니다. – Mikael

+0

전체 출력을 얻지 못했습니다. 출력을 리디렉션 할 수있는 방법이 있습니까? 로그 파일을 시도했지만 파일 내에 디버그를 출력하지 않았습니다. – Mikael

답변

6

다음 줄 : 당신이 문제를 해결하기 위해 버추얼 확장 팩을 설치해야

00:00:00.217535 Because the USB 2.0 controller state is part of the saved VM state, the VM cannot be started. To fix this problem, either install the 'Oracle VM VirtualBox Extension Pack' or disable USB 2.0 support in the VM settings (VERR_NOT_FOUND)}, preserve=false 

하이라이트.