在Windows 7 64位尝试启动VM(Ubuntu 32位).尽管modify vm在我的Vagrantfile中添加了命令,但我无法让我的VM显示两个内核.我的Vagrant版本是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
Run Code Online (Sandbox Code Playgroud)
使用此Vagrantfile,我发出vagrant up命令.然后我发出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
Run Code Online (Sandbox Code Playgroud)
我认为CPU应该显示2,所以我的VM现在只有一个CPU.如何在运行时显示2个CPU lscpu?
bri*_*itt 25
如果您使用Oracle Virtualbox运行vagrant,那么最常见的问题是Windows 7,8或10中的Hyper-V.这将限制为32位和一个cpu.
运行或搜索"Windows功能",然后选择"打开或关闭Windows功能".
在复选框中确保Hyper-V已关闭 - 您无法通过Microsoft Hyper-V为虚拟机启用VT-x.
然后,您可以通过以下方式使您的Vagrantfile启动非常用户友好:
config.vm.provider "virtualbox" do |vb|
vb.memory = "2404"
vb.cpus = "2"
end
Run Code Online (Sandbox Code Playgroud)
假设您希望运行两个内核,并且只需要超过2 GB的内存
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
Run Code Online (Sandbox Code Playgroud)
您似乎没有提到您正在使用哪个提供商.从Vagrant 1.7开始,许多VM提供程序(例如VirtualBox,HyperV)在Vagrantfile中支持以下配置:
config.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 2
end
Run Code Online (Sandbox Code Playgroud)
在vagrant文档中查看您使用的特定提供程序.
| 归档时间: |
|
| 查看次数: |
43163 次 |
| 最近记录: |