我想设置一个虚拟机(主机:ubuntu 服务器/客户 ubuntu 服务器)
我通过 putty(从 Windows)连接到我的服务器并启动以下命令:
#create the guest image
qemu-img create -f qcow2 test.img 6G
#launch the guest
kvm -m 256 -cdrom ubuntu-14.04.1-server-amd64.iso -boot d test.img
我收到以下错误:
Could not initialize SDL(No available video device) - exiting
我猜这是有道理的,因为服务器没有连接到任何屏幕......但是,我需要一些方法来解决这个问题。
在浏览了一些论坛后,我尝试添加该选项-curses
。不幸的是,Putty 屏幕显示 640x480,然后我什么也做不了。
有人知道吗?
答案1
正如 Michael Hampton 所建议的,不要直接使用 KVM,而要直接使用 virsh,这大大简化了处理虚拟机(不仅仅是 KVM)。
以 root 身份首先安装所需的软件包:
apt-get install virtinst libvirt-bin
您可能希望在您的客户机上拥有网络访问权限,您将需要在您的主机系统上创建一个桥接接口(假设为 br0)或为您的客户机分配一个专用的网络接口(通常优先选择第一个解决方案)。
要创建您的客户机,您将使用命令 virt-install。以 root 身份运行
virt-install --name=guest_name --virt-type qemu --vcpus 1 --ram=256 --os-type=linux --os-variant=ubuntutrusty --connect qemu:///system --network bridge=br0 --cdrom /path/to/ubuntu-14.04.1-server-amd64.iso --disk path=/path/to/test.img,size=6 --noautoconsole
请注意,如果您使用大小(以 GB 为单位)选项定义 --disk 参数,则在安装过程中会自动创建映像。如果您已经创建了该映像,则可以省略该选项以使用现有映像。如果您创建新映像,您可能还想添加选项“格式”,例如。
--disk path=/path/to/test.img,size=6,format=qcow2
您还可以使用 LVM 设备或专用分区/硬盘驱动器,而不是图像文件。
--noautoconsole阻止您在创建后直接连接到客户机。如果您想自动连接,请忽略此选项。
使用
virsh console guest_name
连接到您的客户机(这也适用于 putty)。要退出控制台,请按 CTRL + 5 或 CTRL + ](仅限英文键盘布局,如果您使用其他布局,请在 Google 上搜索,在德文布局中为 CTRL + 9)。
可以考虑的选项:
--hvm强制客户机完全虚拟化。如果忽略此项,virt-install 将默认尝试创建半虚拟化客户机。
--graphics vnc或者--graphics sdl或者--graphics 无默认情况下,如果设置了 DISPLAY 环境变量,virt-install 将设置 --graphics=vnc,因此在大多数情况下您可以忽略该选项。如果您想使用 sdl(我认识的大多数人都使用 VNC),您可以选择另一个选项。如果您不想有图形输出,您将需要为文本控制台指定一个串行输出,以便能够通过“virsh console guest_name”访问它。
--arch=ppc64默认情况下,主机的架构将传递给虚拟机。但是,如果您想要不同的架构,请设置此选项(当然要使用所需的架构)