Как я могу создать виртуальную машину в Vagrant с VirtualBox с двумя процессорами?


на Windows 7 64 бит пытается запустить виртуальную машину (Ubuntu 32 бит). У меня возникли проблемы с получением моей виртуальной машины, чтобы показать два ядра, несмотря на добавление modify vm команда в моем Vagrantfile. Моя Бродячая версия-1.2.2.

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "precise32"
  config.vm.box_url = "http://files.vagrantup.com/precise32.box"

  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
    vb.customize ["modifyvm", :id, "--cpus", "2"]   
  end  
end

С этим Vagrantfile я выдаю . Тогда я выдаю vagrant ssh следовал по lscpu что дает:

Architecture:          i686
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                1
On-line CPU(s) list:   0
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 58
Stepping:              9
CPU MHz:               2565.513
BogoMIPS:              5131.02
L1d cache:             32K
L1d cache:             32K
L2d cache:             6144K

Я думаю, что CPU(S) должен показывать 2, поэтому моя виртуальная машина имеет только один процессор прямо сейчас. Как я могу получить 2 процессора, чтобы показать, когда я бегу lscpu?

3 64

3 ответа:

добавить vb.customize ["modifyvm", :id, "--ioapic", "on"] до config.vm.provider блок внутри вашего Vagrantfile.

глядя на VirtualBox документация он отмечает:

"Примечание включение APIC ввода-вывода требуется для 64-разрядной гостевой операционной системы системы, особенно Windows Vista; это также требуется, если вы хотите использовать более одного виртуального процессора в виртуальной машине."

Если вы используете vagrant с помощью Oracle Virtualbox, то наиболее распространенной проблемой является Hyper-V в Windows 7, 8 или 10. Это ограничит вас до 32 бит и одного процессора.

запустите или найдите "функции Windows "и выберите"Включить или выключить функции Windows".

в флажках убедитесь, что Hyper - V выключен-вы не можете включить VT-x для Virtualbox с помощью Microsoft Hyper-V.

затем, вы можете сделать ваш Vagrantfile загрузки очень удобным для пользователя с:

  config.vm.provider "virtualbox" do |vb|
    vb.memory = "2404"
    vb.cpus = "2"
  end

предполагая, что вы хотите иметь два ядра работает и только немного более 2 гигабайт памяти

ps-Не забудьте добавить переадресацию портов. Для PHPStorm (xdebug, mysql и web) я использую:

  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.network "forwarded_port", guest: 3306, host: 3306
  config.vm.network "forwarded_port", guest: 9000, host: 9000

Кажется, вы не упомянули, какой провайдер вы используете. Начиная с версии Vagrant 1.7 многие поставщики виртуальных машин (такие как VirtualBox, HyperV) поддерживают следующую конфигурацию в вашем Vagrantfile:

config.vm.provider "virtualbox" do |v|
  v.memory = 1024
  v.cpus = 2
end

Проверьте конкретного поставщика, который вы используете в залетный документации.