KVM-Qemu命令行

合集下载

KVM的qemu-kvm使用

KVM的qemu-kvm使用

KVM的qemu-kvm使⽤KVM:kvm,x86⽀持硬件辅助虚拟化技术(hvm)grep -E "(vmx|svm)" /proc/cpuinfo[root@dmsag ~]# ll /dev/kvmcrw-rw-rw- 1 root kvm 10, 232 Dec 419:14 /dev/kvm查看内核模块信息modinfo kvmmodinfo kvm-intel装载模块并查看(装载kvm模块就会顺带装载kvm-intel模块)[root@dmsag ~]# modprobe kvm[root@dmsag ~]# lsmod |grep kvmkvm_intel 1748410kvm 5785181 kvm_intelirqbypass 135031 kvm管理⼯具栈:qemu-kvm (只能单机创建虚机不能跨主机创建)libvirt (通⽤⼯具)管理Kvm虚拟的⽅案:qemu::由于这个⼯具不是红帽推荐使⽤的⽀持⼒度⽐较⼩,安装了qemu-kvm后,它的默认路径/usr/libexec/ (使⽤需要创建链接)libvirt::安装⼯具virt-install (命令⾏安装)virt-manager(图形安装)管理⼯具:virshvirt-managervirt-viewer使⽤qemu管理虚机更接近底层管理。

安装qemu-kvmyum install qemu-kvm qemu-img -y创建链接指向到默认路径[root@dmsag ~]# ln -sv /usr/libexec/qemu-kvm /usr/bin/‘/usr/bin/qemu-kvm’ -> ‘/usr/libexec/qemu-kvm’查看qemu的使⽤帮助qemu-kvm -hqemu-kvm :qemu-kvm 【options】【disk_image】qemu-kvm使⽤⽂档1.使⽤qemu-kvm管理kvm虚拟机qemu是⼀个⼴泛使⽤的开源计算机仿真器和虚拟机,当作为仿真器时,可以再⼀种架构(如PC机)下运⾏另⼀种架构(如RAM)下的操作系统和程序,⽽通过动态转换,其可以获得很⾼的运⾏效率,当作为⼀个虚拟机时,qemu可以通过直接使⽤真机的系统资源,让虚拟系统能够获得物理机的性能表现,qemu⽀持xen或者kvm模式下的虚拟化,当⽤kvm时,qemu可以虚拟x86,服务器和嵌⼊式powerpc,以及s390的系统。

qemu-kvm工作原理

qemu-kvm工作原理

qemu-kvm工作原理什么是QEMU-KVM?QEMU-KVM(简称QEMU-KVM)是一种开源虚拟化解决方案,提供基于硬件虚拟化技术的全虚拟化和准虚拟化的能力。

它结合了两个独立但相互依赖的技术:QEMU(Quick Emulator)和KVM(Kernel-based Virtual Machine)。

QEMU是一款全系统模拟器,它能够模拟多个硬件设备,如处理器、内存、磁盘和网络接口等。

它的主要功能是将客户机的指令和数据翻译成宿主机的指令和数据,从而在宿主机上运行多个虚拟机实例。

QEMU使用动态二进制翻译(Dynamic Binary Translation,简称DBT)技术,将客户机指令解释成宿主机指令,实现了多平台的硬件虚拟化。

而KVM是Linux内核的一个模块,它提供了一种将虚拟化扩展到硬件层面的方法。

KVM利用处理器的硬件虚拟化扩展(如Intel的VT-x和AMD的AMD-V)来提供虚拟化支持。

它通过在内核中创建一个虚拟机管理程序(Virtual Machine Monitor,简称VMM),允许运行多个虚拟机实例。

KVM利用硬件虚拟化扩展,提供了更高性能和更接近原生硬件的虚拟化体验。

QEMU-KVM的工作原理:QEMU-KVM的工作原理可以分为以下几个步骤:1. 硬件虚拟化初始化:当运行QEMU-KVM时,KVM会加载到Linux内核中,并开始初始化硬件虚拟化扩展。

KVM会创建一些特殊的数据结构来跟踪虚拟机的状态和配置。

2. 虚拟机创建:当用户请求创建一个虚拟机时,QEMU-KVM会将虚拟机的配置参数传递到KVM中。

KVM利用这些参数创建一个用于管理虚拟机的数据结构,并为虚拟机分配一块内存区域作为其物理内存空间。

3. 客户机操作系统启动:在虚拟机创建完毕后,QEMU-KVM会加载客户机操作系统的镜像文件,并将其作为虚拟机的启动镜像。

KVM会将虚拟机的控制权交给客户机操作系统,从而使其能够开始引导和初始化。

详解虚拟化技术QEMU-KVM入门

详解虚拟化技术QEMU-KVM入门

详解虚拟化技术QEMU-KVM⼊门⼀.QEMU、KVM、QEMU-KVMQEMU提供⼀系列的硬件模拟设备(CPU,⽹卡,磁盘等),客户机指令都需要QEMU翻译,因⽽性能较差。

KVM是linux内核提供的虚拟化,可以⽤来进⾏vCPU的创建与运⾏,虚拟内存的地址空间分配,指令执⾏效率较⾼,但缺少IO设备的虚拟化。

QEMU-KVM就是KVM与QEMU的结合,KVM负责CPU虚拟化+内存虚拟化,QEMU模拟其它IO设备。

⼆.安装并创建虚拟机安装qemu-kvm软件faramita2016@linux-l9e6:~> zypper install qemu-kvm // Ubuntu系统使⽤apt-get install qemu-kvm创建qcow2格式虚拟机磁盘⽂件faramita2016@linux-l9e6:~> qemu-img create -f qcow2 vdisk.img 5G // 磁盘⼤⼩5G使⽤debian镜像安装虚拟机,order=dc优先使⽤CD-ROW(d),后使⽤硬盘(c),内存默认128m,使⽤-m 512指定faramita2016@linux-l9e6:~> qemu-kvm -cpu host -cdrom debian-9.4.0.iso -hda vdisk.img -boot order=dc三.设置虚拟机使⽤⽹桥bridge模式宿主机中执⾏,qemu-bridge-helper增加当前⽤户可执⾏权限,⽤来⾃动添加⽹络后端tap设备faramita2016@linux-l9e6:~> sudo chmod o+x /usr/lib/qemu-bridge-helper宿主机中执⾏,-net nic为虚拟机创建nic⽹卡(⽹络前端),-net bridge指定宿主机中使⽤⽹桥(⽹络后端)faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 // 指定⽹桥br0虚拟机中执⾏,编辑/etc/network/interfaces,设置静态IProot@debian:~# vi /etc/network/interfaces# The primary network interfaceallow-hotplug ens3#iface ens3 inet dhcpiface ens3 inet staticaddress 10.0.0.8netmask 255.0.0.0gateway 10.0.0.1hwaddress ether 52:54:00:12:34:56 // 设置mac地址,前3组不变root@debian:~# ifup ens3 // 打开ens3⽹络接⼝,ifdown关闭⽹络接⼝root@debian:~# /etc/init.d/networking restart // 重启⽹络服务虚拟机中执⾏,编辑/etc/resolv.conf,设置DNSroot@debian:~# vi /etc/resolv.confnameserver 8.8.8.8 // Google DNS四.设置虚拟机为⾮图形模式虚拟机中执⾏,编辑/etc/default/grub⽂件,添加console=ttyS0启动参数root@debian:~# vi /etc/default/grubGRUB_DEFAULT=0 // 默认启动项GRUB_TIMEOUT=0 // 默认菜单项停留时间GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`GRUB_CMDLINE_LINUX_DEFAULT="quiet" // 默认内核启动参数GRUB_CMDLINE_LINUX="console=ttyS0" // ⼿动添加内核启动参数,添加console=ttyS0虚拟机中执⾏,更新grub配置,并重启root@debian:~# update-grubroot@debian:~# shutdown -h nowa.宿主机中执⾏,添加-nographic参数创建虚拟机,当前shell前台创建虚拟机faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -nographicb.宿主机中执⾏,添加-display none -daemonize参数创建虚拟机,当前shell后台创建虚拟机faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -display none -daemonize五.以只读⽅式启动虚拟机a.创建⼀个快照⽤qemu-img命令创建⼀个原始镜像的快照faramita2016@linux-l9e6:~> qemu-img create -f qcow2 -b vdisk.img snapshot.img使⽤快照⽂件启动虚拟机faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda snapshot.img -net nic -net bridge,br=br0 -nographicb.使⽤临时快照原理:创建⼀个临时快照,虚拟机启动之后,⾃动删除快照⽂件faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -snapshot -nographic以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

kvm连接方法

kvm连接方法

kvm连接方法Kernel-based Virtual Machine (KVM) 是一种用于在Linux系统上运行虚拟机的开源虚拟化技术。

连接到KVM 虚拟机的方法通常包括以下几种:1. VNC (Virtual Network Computing):-在创建虚拟机时,你可以配置虚拟机以侦听VNC 连接。

这允许你使用VNC 客户端连接到虚拟机的图形界面。

-在启动虚拟机时,可以指定`-vnc` 参数,并指定监听的地址和端口,如:`-vnc :1`。

-通过VNC 客户端,你可以连接到虚拟机的图形控制台。

一些流行的VNC 客户端包括TigerVNC、RealVNC 和TightVNC。

2. SSH (Secure Shell):-如果你的虚拟机运行的是headless 模式(无图形界面),你可以使用SSH 连接到虚拟机的终端。

-在创建虚拟机时,确保你已经为虚拟机启用了SSH 服务,并记住虚拟机的IP 地址。

-使用SSH 客户端连接到虚拟机,例如:`ssh user@虚拟机IP`。

3. SPICE (Simple Protocol for Independent Computing Environments):- SPICE 是一种用于虚拟化环境的开放性协议,可以提供更好的图形体验。

-在创建虚拟机时,你可以配置虚拟机以支持SPICE 连接。

-SPICE 客户端可以连接到虚拟机,提供图形控制台的访问。

一些SPICE 客户端包括virt-viewer。

4. QEMU Monitor:-QEMU 是KVM 的底层虚拟化引擎,它有一个监视器界面,允许你以命令行方式与虚拟机进行交互。

-如果你在启动虚拟机时使用了`-monitor stdio` 参数,你可以通过终端连接到QEMU Monitor。

-在终端中运行`virsh` 命令时,你可以使用`virsh console 虚拟机名称` 命令来连接到虚拟机的控制台。

qemu kvm 详细教程

qemu kvm 详细教程

qemu kvm 详细教程研究了很久的KVM,感觉是我用过的最快的虚拟机。

对比常用的虚拟机,Vmware的功能全面,设置简单,但其速度不是很好;VirtualBox的效率虽然比Vmware高一些,但是存在不少缺点,感觉在运行时比较抢CPU,现在virtualbox已经支持smp,和虚拟化技术,但整体效率还是没有KVM高(但是图形效率作的不错);KVM(Kernel-based Virtual Machine),基于内核的虚拟机,是我用过的最快的虚拟机,需要CPU支持虚拟化技术,并且在BIOS里打开虚拟化选项,效率可达到物理机的80%以上,对SMP的支持很好。

所以现在强烈吐血卖命推荐KVM。

(使用磁盘方式以更新,请大家注意!!!)没有废话,以下是在UBUNTU 804.4 64BIT下的方法获得KVM:KVM的网站:/projects/kvm/files/下载最新的qemu-kvm-0.12.4.tar.gz解压:代码: 全选tar -xzvf qemu-kvm-0.12.4.tar.gz需要用到的包:代码: 全选sudo apt-get install gcc libsdl1.2-dev zlib1g-devlibasound2-dev linux-kernel-headers pkg-config libgnutls-devlibpci1 pciutils-dev在UBUNTU 10.04中,可以使用代码: 全选sudo apt-get build-dep qemu-kvm来解决依赖关系。

三步曲:代码: 全选cd qemu-kvm-0.12.4./configure --prefix=/usr/local/kvmmakesudo make install安装好以后加载KVM模块代码: 全选sudo modprobe kvmsudo modprobe kvm-intel //如果你的是INTEL处理器就用这个sudo modprobe kvm-amd //如果你的是AMD处理器就用这个这样就装好了。

虚拟机QEMU使用参数详解

虚拟机QEMU使用参数详解

虚拟机QEMU使用参数详解2010-08-18 12:48:11标签:虚拟机QEMUQEMU它可以工作在linux,windows,FreeBSD和苹果系统上.大家根本都不用担心支持问题.因为其没有UI界面,纯粹是命令行的操作,和vmware等虚拟平台软件相比,它比较难于上手.但是它却对我们掌握系统模块有很大的帮助,所有的外设和一些常用模块,需要我们手动的去使用命令来挂载才能有效运行.很多人都觉得先学习QEMU后,再去用vmware等模拟软件,更易上手。

下面对其的使用做一下介绍:1.命令参数:-L dir :指向BIOS和VGA BIOS所在目录(一般我们使用”-L .”)-hda/-hdb/-hdd/-hdc “文件名”:虚拟机系统安装文件-cdrom “文件名”:使用“文件名”作为光盘景象(文件应该是ISO类型)*Windows 下,可以通过下列命令使用实体光盘: -cdrom //./x: -> x 代表光盘名称/位置例如:-cdrom //./e: -> 使用E:\ 为光盘*-fda/-fdb “文件名”:使用“文件名”作为磁盘0/1镜像.-boot [a|b|c] :使用磁盘a,光盘d,或者硬盘c启动.-m 容量:指定内存的大小,单位是MB.-soundhw c1,…: 使用声卡设备.-soundhw ? :列出所有可使用的声卡-soundhw all 使用全部声卡-usb :允许使用usb设备.-usbdevice :名字添加一个usb设备“名字”.-net nic :创建一块新的网卡.上面就是常用的命令参数.如果对各种操作系统下的应用有迷惑,可以到这里查找相关资料2.虚拟系统安装(以在windows下使用QEMU来安装windows XP为例),安装之前,准备三样东西:2.1.Qemu for windows(兜兜目前使用的版本为:qemu-0.9.0-windows,现在网速慢,文件6M多,等明天速度快点再传.各位请搜一下吧.)2.2.qemuwith-kqemu-support点此下载kqemu是Fabrice Bellare专门为linux核心而设计的开源加速附加程序,目的就是为了加快qemu的子系统运行速度.在X86的硬件平台上模拟x86的操作系统可以飙到真实机器速度.直接用QEMU来安装或者运行系统的话,速度会很慢.用kqemu会改善很多.右键点击kqemu.inf,选择“安装”,然后在CMD窗口下输入命令:net start kqemu。

qemu中的enable-kvm参数

qemu中的enable-kvm参数

一、qemu是什么?QEMU是一个开源的虚拟机监控程序,它可以用来模拟多种硬件评台,比如x86、ARM等,同时还支持在不同的架构之间进行虚拟化。

QEMU最初是由Fabrice Bellard创建的,它可以运行在多种操作系统上,包括Linux、Windows、macOS等。

二、enable-kvm参数的作用是什么?在使用QEMU进行虚拟化时,用户可以通过使用enable-kvm参数来启用硬件辅助虚拟化技术,提高虚拟机的性能。

KVM(Kernel-based Virtual Machine)是一个用于Linux操作系统的开源虚拟化解决方案,它利用主机系统的硬件虚拟化扩展来加速虚拟机的运行。

三、enable-kvm参数的使用方法在命令行中使用QEMU启动虚拟机时,可以通过在命令中添加-enable-kvm参数来启用KVM技术。

具体的命令格式如下所示:```qemu-system-x86_64 -enable-kvm -m 2048 -hda disk.img```在这个命令中,-enable-kvm参数告诉QEMU启用KVM技术,-m 参数指定分配给虚拟机的内存大小,-hda参数指定虚拟机的磁盘镜像文件。

四、enable-kvm参数的注意事项1. 系统硬件要求使用-enable-kvm参数需要满足一定的硬件条件,主要是CPU需要支持虚拟化扩展。

常见的支持虚拟化扩展的CPU厂商包括Intel(VT-x)和AMD(AMD-V),在购物或搭建服务器时需要注意CPU是否支持这些技术。

2. 软件要求除了硬件要求外,还需要安装支持KVM的软件包。

在Linux系统上,可以通过安装qemu-kvm软件包来获得对KVM的支持,而在一些发行版中,qemu-kvm已经包含在了qemu软件包中。

3. 驱动程序安装在某些情况下,还需要安装虚拟化相关的驱动程序。

比如在Windows 系统中,如果要使用KVM技术加速虚拟机的运行,可能需要安装Intel HAXM或AMD SVM等驱动程序。

Linux命令行中的虚拟化和容器技巧

Linux命令行中的虚拟化和容器技巧

Linux命令行中的虚拟化和容器技巧虚拟化和容器化技术一直是Linux系统中广泛应用的重要工具,它们可以帮助我们更好地管理和利用系统资源,提高应用程序的运行效率。

在Linux命令行中,有一些虚拟化和容器化的常用技巧,本文将介绍其中的一部分。

一、虚拟化技巧1. 使用KVM创建虚拟机KVM(Kernel-based Virtual Machine)是一种基于Linux内核的虚拟化技术,它可以通过将物理机划分为多个虚拟机来实现资源的隔离和管理。

使用KVM创建虚拟机非常简单,可以使用以下命令:```sudo apt-get install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-managersudo virt-install --name=myvm --ram=1024 --vcpus=1 --cdrom=/path/to/iso --disk path=/path/to/disk.img,size=10 --os-type=linux --os-variant=ubuntu18.04 --graphics vnc,listen=0.0.0.0```其中,--name参数指定虚拟机的名称,--ram和--vcpus参数分别指定虚拟机的内存和CPU资源,--cdrom和--disk参数指定虚拟机的镜像文件和磁盘文件,--os-type和--os-variant参数指定虚拟机的操作系统类型和变种,--graphics参数指定虚拟机的图形输出方式。

2. 利用QEMU模拟ARM架构QEMU(Quick Emulator)是一种全系统模拟器,它可以模拟多种硬件架构,包括x86、ARM等。

利用QEMU模拟ARM架构可以很方便地进行ARM平台上的应用程序开发和调试。

以下命令可以启动一个ARM虚拟机:```sudo apt-get install qemu-system-armqemu-system-arm -machine virt -cpu cortex-a53 -m 1024 -kernel/path/to/kernel -initrd /path/to/initrd -append "root=/dev/vdaconsole=ttyAMA0" -drive file=/path/to/rootfs,if=none,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0```其中,-machine参数指定虚拟机的架构和型号,-cpu参数指定虚拟机的CPU类型,-m参数指定虚拟机的内存大小,-kernel、-initrd和-append参数指定虚拟机的内核、初始化RAM盘和启动参数,-drive和-device参数指定虚拟机的磁盘和网络设备。

KVM的基本命令

KVM的基本命令

1虚拟机配置路径:/etc/libvirt/qemu2创建硬盘qemu-img create /home/kvm/123.img 5G3创建虚拟机virt-install \--name=Winxp \--ram 512 \--vcpus=2 \-f /home/123.img \--cdrom /home/acton-systemvm-02062012.qcow2.bz2 \--graphics vnc,listen=0.0.0.0,port=5980,password='12345678',keymap='en-us' \--network bridge=cloudbr0 \--force --autostart(name 虚拟机名称,ram 分配内存,vcpus 分配cpu个数,cdrom guest系统文件地址,network 网卡桥接名称)4管理虚拟机:virsh5显示虚拟机list或者list –all(list显示本地活动虚拟机;list –all显示本地所有的虚拟机(活动的+不活动的) )6网卡列表: virsh domiflist i-2-11-VM7网卡状态:virsh domifstat i-2-11-VM vnet118磁盘列表:virsh domblklist i-2-11-VM9虚拟机快照1查看硬盘路径:2RAW格式不具备快照功能,需要将RAW格式的镜像文件转换为qcow2格式qemu-img convert -f raw -O qcow2 100.img 111.img3查看镜像列表: virsh snapshot-list jy-VM4创建快照:首先需要关闭虚拟机,然后按照下面的命令进行快照。

最后恢复快照的时候先关机在恢复virsh snapshot-create-as jy-VM kuaizhao或者: virsh snapshot-create-as --domain jy-VM --name kuaizhao1 --description "URL: jy-VM"5查看快照配置: virsh snapshot-current jy-VM6恢复快照: virsh snapshot-revert jy-VM kuaizhao7删除快照: virsh snapshot-delete jy-VM kuaizhao110虚拟机状态:domstate虚拟机名称或者ID或者UUID11启动虚拟机start i-2-11-VM12自启设置:autostart[--disable]虚拟机名称或者ID 或者UUID13关闭虚拟机shutdown i-2-11-VM14重启虚拟机rebooti-2-11-VM15强制关闭电源destroyi-2-11-VM16从XML 定义一个虚拟机define xml文件17移除虚拟机:undefine虚拟机名称或者ID 或者UUID(使用undefine的前提是,虚拟机是关闭的,那我们怎么关闭虚拟机呢,可以使用destroy,确切的说这个操作就是一脚将服务器的电源踹掉。

KVM常用维护命令

KVM常用维护命令

KVM常用维护命令安装kvm1.最小化安装desktop的centos2.定制软件添加virtualization的所有工具包3.安装vncserver可以方便管理虚拟机(客户机是linux可不装)配置桥接网卡创建虚拟机:1.创建出qcow2格式的文件作为磁盘镜像qemu-img create -f qcow2 test.qcow2 50G2.安装win8virt-install -n ser2008 -r 800 --os-type=windows --vcpus=1 -c/opt/iso/server8.iso --network bridge=br0 --disk path=/opt/iso/virtio-win-0.1-15.iso,device=cdrom --disk path=/opt/vps/test.qcow2,format=qcow2,bus=virtio --vnc --vnclisten=192.168.1.250 --vncport=7999注:查看-os-variant的类型virt-install --os-variant=list安装server2008注意加载virtio驱动,不然不识别硬盘设备挂载光盘:虚拟机的配置文件需要有一个光驱设备:<disk type='file' device='cdrom'><driver name='qemu' type='raw'/><target dev='hda' bus='ide'/><readonly/><address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk>挂载命令移除命令查看在运行的虚拟机:virsh list查看快照:virsh snapshot-list 服务器名创建快照(可在开机状态创建):virsh snapshot-create-as 服务器名快照名。

[kvm]学习笔记5:QEMU-KVM命令详解

[kvm]学习笔记5:QEMU-KVM命令详解

[kvm]学习笔记5:QEMU-KVM命令详解1. QEMU、KVM 、QEMU-KVMQEMU 提供了⼀系列的硬件模拟设备(cpu、⽹卡、磁盘等),客户机指令都需要QEMU翻译,因此性能较差。

KVM 是Linux 内核提供的虚拟化模块,负责CPU和内存的虚拟化,但是缺少I/O设备的虚拟化。

QEMU-KVM 就是 KVM 与 QEMU 的结合,KVM 负责CPU虚拟化+内存虚拟化,QEMU 模拟其他I/O设备。

2. QEMU-KVM 命令详解2.1 qemu-kvm 命令基本格式qemu-kvm ⼯具命令格式如下:qemu-kvm [options] [disk_image]其中,opions 是各种选项、参数,disk_image 是客户机的磁盘镜像⽂件(默认被挂载为第⼀个 IDE 磁盘设备)。

2.2 CPU 相关的参数(1)-cpu 参数指定CPU模型,默认的 CPU 模型为 qemu64,"-cpu ?" 可以查询当前 qemu-kvm ⽀持哪些 cpu 模型。

[root@192.168.118.14 ~]#qemu-kvm -cpu ?x86 qemu64 QEMU Virtual CPU version 1.5.3x86 phenom AMD Phenom(tm) 9550 Quad-Core Processorx86 core2duo Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHzx86 kvm64 Common KVM processorx86 qemu32 QEMU Virtual CPU version 1.5.3x86 kvm32 Common 32-bit KVM processorx86 coreduo Genuine Intel(R) CPU T2600 @ 2.16GHzx86 486x86 pentiumx86 pentium2x86 pentium3x86 athlon QEMU Virtual CPU version 1.5.3x86 n270 Intel(R) Atom(TM) CPU N270 @ 1.60GHzx86 cpu64-rhel6 QEMU Virtual CPU version (cpu64-rhel6)x86 Conroe Intel Celeron_4x0 (Conroe/Merom Class Core 2)x86 Penryn Intel Core 2 Duo P9xxx (Penryn Class Core 2)x86 Nehalem Intel Core i7 9xx (Nehalem Class Core i7)x86 Westmere Westmere E56xx/L56xx/X56xx (Nehalem-C)x86 SandyBridge Intel Xeon E312xx (Sandy Bridge)x86 Haswell Intel Core Processor (Haswell)x86 Broadwell Intel Core Processor (Broadwell)x86 Opteron_G1 AMD Opteron 240 (Gen 1 Class Opteron)x86 Opteron_G2 AMD Opteron 22xx (Gen 2 Class Opteron)x86 Opteron_G3 AMD Opteron 23xx (Gen 3 Class Opteron)x86 Opteron_G4 AMD Opteron 62xx class CPUx86 Opteron_G5 AMD Opteron 63xx class CPUx86 host KVM processor with all supported host features (only available in KVM mode)如果想尽可能多的将宿主机的 CPU 特性暴露给客户机使⽤,则可以使⽤ "-cpu host" 参数。

KVM-Qemu命令行

KVM-Qemu命令行

qemu-kvm命令行虚拟系统参数虽然在Fedora上安装了Virt-manager,有比较好的界面可以操作和监视虚拟机,但是必须要在root用户下才可以,而Xmanager不可以使用root用户远程fedora,再者要在KVM-Qemu 上进行开发的话,其命令行参数的了解是必须的。

下面以一个例子说明:虚拟一个Windows7的系统安装,常用参数如下:qemu-kvm -m 1024 -localtime -M pc -smp 1 -drivefile=Windows7_x86.img,cache=writeback,boot、=on -netnic,macaddr=52:54:00:12:34:80 –nettap-cdrom Windows7.iso -boot d -name kvm-win7,process=kvm-win7 -vnc :2 -usb -usbdevice tablet尝试过:qemu -m 512 -hda /home/ibm/Desktop/KVM/WinXP3.img-localtime -net nic,vlan=0,macaddr=52-54-00-12-34-02 -nettap,vlan=0,ifname=tap0,script=no -boot d -cdrom/home/ibm/Desktop/KVM/WinXP3.iso -smp 2 -clock rtc -soundhw es1370-m 1024 设置虚拟系统内存1024MB-localtime 使虚拟系统与宿主系统时间一致-M pc虚拟系统类型为pc-smp 1 1个CPU-drive file=Windows7_x86.img,cache=writeback,boot=on硬盘选项,虚拟磁盘是Windows7_x86.img,cache方式为writeback,可引导型磁盘。

-net nic,macaddr=52:54:00:12:34:80网卡选项,手工指定mac地址。

kvm基本学习,图形化和命令行

kvm基本学习,图形化和命令行

一.KVM 简介KVM (名称来自英语:Kernel-basedVirtual Machine 的缩写,即基于内核的虚拟机),是一种用于Linux 内核中的虚拟化基础设施,可以将Linux 内核转化为一个hypervisor 。

KVM 在2007年2月被导入Linux 2.6.20核心中,以可加载核心模块的方式被移植到FreeBSD 及illumos 上。

KVM 在具备Intel VT 或AMD-V 功能的x86平台上运行。

它也被移植到S/390,PowerPC 与IA-64平台上。

在Linux 内核3.9版中,加入ARM 架构的支持。

关于KVM :12 3 4 56 1).KVM 是开源软件,全称是kernel-based virtual machine (基于内核的虚拟机)。

2).是x86架构且硬件支持虚拟化技术(如 intel VT 或AMD-V )的Linux 全虚拟化解决方案。

3).它包含一个为处理器提供底层虚拟化 可加载的核心模块kvm.ko (kvm-intel.ko 或kvm-AMD.ko )。

4).KVM还需要一个经过修改的QEMU 软件(qemu-kvm ),作为虚拟机上层控制和界面。

5).KVM 能在不改变linux 或windows 镜像的情况下同时运行多个虚拟机,(它的意思是多个虚拟机使用同一镜像)并为每一个虚拟机配置个性化硬件环境(网卡、磁盘、图形适配器……)。

6).在主流的Linux 内核,如2.6.20以上的内核均已包含了KVM 核心。

————摘自WIKI 百科123 42).性能:作为服务器很好,可是图形能力十分的差。

即使放电影,图像也是像刷油漆一样,一层一层的。

3).cpu 使用率控制很好。

4).控制上比较简洁,功能比较丰富:比如使用“无敌功能”所有更改指向内存,你的镜像永远保持干净。

“母镜像”功能让你拥有n 个独立快照点。

还有很多参数。

另外,kvm 作为内核级的虚拟机,刚开始发展关注的公司比较多——但是还没有达到商业应用的水平。

命令行安装kvm虚拟机、桥接网络、用virt-manager管理

命令行安装kvm虚拟机、桥接网络、用virt-manager管理

命令⾏安装kvm虚拟机、桥接⽹络、⽤virt-manager管理宿主机CentOS Linux release 7.2.1511 (Core),内核3.10.0-327.el7.x86_641、配置宿主机⽹络桥接想让虚拟机有⾃⼰的ip且外⽹可访问,需要在安装虚拟机前配置宿主机⽹络(桥接BRIDGE):在⽬录/etc/sysconfig/network-scripts下,将原始的ifcfg-enp2s0重命名ifcfg-enp2s0.old当备份,然后新建ifcfg-enp2s0内容如下:TYPE=EthernetIPV4_FAILURE_FATAL=yesIPV6INIT=noPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesNAME=enp2s0DEVICE=enp2s0ONBOOT=yesBRIDGE=br0NM_CONTROLLED=no再新建ifcgf-br0内容如下:TYPE=BridgePROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=br0DEVICE=br0NM_CONTROLLED=noONBOOT=yesIPADDR=223.129.0.xxxPREFIX=25GATEWAY=223.129.0.xxxDNS1=8.8.8.8IPV6_PRIVACY=noZONE=public重启⽹络:systemctl restart network有时候会报错:Restarting network (via systemctl): Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.ifconfig看到如下信息(要是不对可以尝试重启机器...)br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 223.129.0.xxx netmask 255.255.255.xxx broadcast 223.129.0.xxxinet6 fe80::4a5b:39ff:fea4:3ef0 prefixlen 64 scopeid 0x20<link>ether 48:5b:39:a4:3e:f0 txqueuelen 0 (Ethernet)RX packets 4016129 bytes 379659216 (362.0 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 7392459 bytes 11078132347 (10.3 GiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0enp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet6 fe80::4a5b:39ff:fea4:3ef0 prefixlen 64 scopeid 0x20<link>ether 48:5b:39:a4:3e:f0 txqueuelen 1000 (Ethernet)RX packets 4260879 bytes 791804516 (755.1 MiB)RX errors 0 dropped 1092 overruns 0 frame 0TX packets 7528373 bytes 11088764715 (10.3 GiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 02、命令⾏安装kvm虚拟机安装必要的软件这⾥就不说了...ubuntu下(前两条⽤于安装,第三条⽤于启动):1 qemu-img create -f qcow2 /home/kvm/centos7-1511.img 20G2 qemu-system-x86_64 -m 2048 -enable-kvm -hda /home/kvm/centos7-1511.img -cdrom /home/isos/CentOS-7-x86_64-DVD-1511.iso -boot d3 qemu-system-x86_64 -enable-kvm -m 1024 -boot menu=on /home/kvm/centos7-1511.imgcentos下:1 qemu-img create -f qcow2 /home/kvm/centos7-1511.img 20G2 /usr/libexec/qemu-kvm -m 2048 -enable-kvm -hda /home/kvm/centos7-1708.img -cdrom /home/isos/CentOS-7-x86_64-DVD-1511.iso -boot d3 /usr/libexec/qemu-kvm -enable-kvm -m 1024 -boot menu=on /home/kvm/centos7-1511.img如果⽤ubuntu下的命令2在centos下运⾏,会出现问题:1、bash: qemu-system-x86_64: 未找到命令...解决:qemu-system-x86_64是在安装qemu(注意不是qemu-kvm)时⽣成的命令,⽽centos下默认安装的是qemu-kvm包,对应的命令是qemu-kvm。

kvm指令

kvm指令
安装指令
virt-install --name TestKVM --ram 1024 -arch x86_64 --vcpus 2 --os-type linux --disk path=/data/nodeqcow.img,device=disk,bus=v irtio,size=30,sparse=true,format=qcow2 -noautoconsole --cdrom=/root/rhel-server-6.2x86_64-dvd.iso --promp
paused 虚拟机处于暂停状态,一般情况下是被 admin运行了virsh suspend才会处于这种状态,但是 仍然消耗资源,只不过不被超级管理程序调度而已 。
shutdown 虚拟机在关闭过程中 shutoff 虚拟机没有运行,已经完全关闭 crashed 虚拟机崩溃 dying 虚拟机处于垂死的状态,但是又没完全关闭 或崩溃
hdc rd_bytes 33970568 hdc wr_req 0 hdc wr_bytes 0
hdc flush_operations 0
为​客​户​端​设​定​分​配​的​内​存​。​ 为​管​理​程​序​设​定​内​存​上​限​。​ 修​改​为​客​户​端​分​配​的​虚​拟​ CPU 数​目​。​
format指镜像的格式,常用的格式为raw和qcow2,如 果不声明,默认为raw模式,但推荐使用qcow2格式 。 raw格式:可​以​简​单​、​容​易​地​导​出​到​其​它​模​拟​器​中, 但是立即分配占用空间大。 qcow2格式:是qcow格式的升级版本,是目前最​万​能​ 的​格​式​。​使​用​它​可​获​得​较​小​映​像,也是虚拟池一直 在使用的镜像格式,支持镜像快照,方便的恢复管 理。

qemu基本使用方法

qemu基本使用方法

qemu基本使用方法QEMU (Quick EMUlator) 是一款开源的虚拟化软件,它能够模拟多种硬件平台和操作系统,并在其中运行许多不同的操作系统。

在本文中,我将为您介绍和解释QEMU 的基本使用方法。

1. 安装QEMU首先,您需要在您的计算机上安装QEMU。

QEMU 可在多个操作系统上运行,包括Windows、macOS、Linux 等。

您可以在QEMU 的官方网站上下载适用于您操作系统的最新版本。

2. 创建虚拟机一旦安装完成,您可以开始创建虚拟机。

在QEMU 中,虚拟机是通过创建一个硬盘镜像文件并在其中安装操作系统来完成的。

您可以使用以下命令来创建一个名为“myvm”的虚拟机:qemu-img create -f qcow2 myvm.img 10G这将创建一个10GB 大小的qcow2 格式的硬盘镜像文件。

3. 安装操作系统接下来,您需要安装一个操作系统到虚拟机中。

您可以使用操作系统的ISO 镜像文件来进行安装。

以下是一个安装Ubuntu 操作系统的例子:qemu-system-x86_64 -hda myvm.img -cdrom ubuntu.iso -boot d其中,“-hda myvm.img”指定了虚拟机的硬盘镜像文件,“-cdrom ubuntu.iso”指定了Ubuntu 的ISO 镜像文件,“-boot d”表示从ISO 镜像文件启动。

4. 运行虚拟机一旦安装完成,您可以通过以下命令来启动并运行虚拟机:qemu-system-x86_64 -hda myvm.img如果您安装的是其他操作系统,可能需要使用与其相应的命令。

5. 管理虚拟机在虚拟机运行时,您可以使用不同的快捷键来执行各种操作。

例如,按下“Ctrl + Alt + G”可以释放鼠标光标,按下“Ctrl + Alt + F”可以切换到全屏模式。

您还可以使用QEMU 的命令行界面来管理虚拟机。

按下“Ctrl + Alt + 2”可以切换到命令行界面。

Qemu-kvm虚拟机搭建

Qemu-kvm虚拟机搭建

Qemu-kvm虚拟机安装一、网络架构——桥接宿主机与虚拟机之间的网络关系有桥接、NAT、仅主机三种模式。

这里我们用桥接模式安装虚拟机。

如上图为桥接的网络架构,需要在系统中配置一个网桥,相当于一台二层交换机。

宿主机与虚拟机通信以及访问internet都通过网桥。

在/etc/sysconfig/network-scripts/下创建ifcfg-br0进入ifcfg-br0并修改配置文件如下://TYPE="Bridge"BOOTPROTO="static"IPADDR=192.168.10.104NETMASK=255.255.255.0GATEWAY=192.168.10.5DEVICE="br0"ONBOOT="yes"//再进入宿主机的以太网网卡,修改配置文件,将宿主机的以太网网卡桥接到网桥:修改完成之后重启网络配置:systemctl restart network网络重启完成之后运行brctl show:如图ens33已经桥接到了br0。

二、virt-manager图形化界面创建虚拟机如果你的linux系统带桌面就可以使用virt-manager工具来创建虚拟机。

用yum install 安装工具如下://qemu-kvm virt-manager libvirt下载完成之后打开virt-manager:在这里弹出了安装界面,证明成功了。

三、virt-install命令行安装虚拟机如果你的linux服务器是桌面版本的,可以使用上述图形化安装kvm虚拟机。

但是大部分linux虚拟机并不带可视化桌面,我们只能使用命令行的方式创建虚拟机,这里使用到的工具——virt-install。

用yum install安装工具://qemu-kvm virt-install libvirt vnc这里需要多安装一个vnc服务,因为不是带桌面的版本,所以我们安装完成之后需要通过vnc连接安装好的虚拟机。

kvm 基本命令

kvm 基本命令
(-o 原始客体的名称-n新客户端的名称-f作为新客户端磁盘映像的新文件)
导出虚拟机Winxp的硬件配置信息为/etc/libvirt/qemu/Winxpbak.xml
#virsh dumpxml Winxp >/etc/libvirt/qemu/Winxpbak.xml
编辑虚拟机配置
#virsh edit Winxp
#top -d 1 | grep kvm
查询kvm进程
ps -aux | grep kvm
开机自动启动虚拟机
#virsh autostart Winxp(虚拟机名)
克隆KVM虚拟机
virt-clone -o Winxp -n winxpclong -f /home/kvm/winxpclong.img
(name 虚拟机名称,ram 分配内存, vcpus 分配cpu个数, cdrom guest系统文件地址,network 网卡桥接名称)
恢复虚拟机
virsh# define /etc/libvirt/qemu/winxp.xml
virsh 显示所有虚拟机 --all显示全部
启动虚拟机
#virsh start Winxp
关闭虚拟机
#virsh shutdown Winxp
强制关机
#virsh destroy Winxp
移除虚拟机
#virsh undefine Winxp
显示vnc端口
#virsh vncdisplay 2
动态查询kvm使用资源
虚拟机配置路径:/etc/libvirt/qemu
创建硬盘:
#qemu-img create /home/kvm/123.img 5G
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

qemu-kvm命令行虚拟系统参数虽然在Fedora上安装了Virt-manager,有比较好的界面可以操作和监视虚拟机,但是必须要在root用户下才可以,而Xmanager不可以使用root用户远程fedora,再者要在KVM-Qemu 上进行开发的话,其命令行参数的了解是必须的。

下面以一个例子说明:虚拟一个Windows7的系统安装,常用参数如下:qemu-kvm -m 1024 -localtime -M pc -smp 1 -drivefile=Windows7_x86.img,cache=writeback,boot、=on -netnic,macaddr=52:54:00:12:34:80 –nettap-cdrom Windows7.iso -boot d -name kvm-win7,process=kvm-win7 -vnc :2 -usb -usbdevice tablet尝试过:qemu -m 512 -hda /home/ibm/Desktop/KVM/WinXP3.img-localtime -net nic,vlan=0,macaddr=52-54-00-12-34-02 -nettap,vlan=0,ifname=tap0,script=no -boot d -cdrom/home/ibm/Desktop/KVM/WinXP3.iso -smp 2 -clock rtc -soundhw es1370-m 1024 设置虚拟系统内存1024MB-localtime 使虚拟系统与宿主系统时间一致-M pc虚拟系统类型为pc-smp 1 1个CPU-drive file=Windows7_x86.img,cache=writeback,boot=on硬盘选项,虚拟磁盘是Windows7_x86.img,cache方式为writeback,可引导型磁盘。

-net nic,macaddr=52:54:00:12:34:80网卡选项,手工指定mac地址。

-net tap tap类型网络,相当于“桥模式”-cdrom Windows7.iso光驱-boot d启动顺序。

d代表光驱。

-name kvm-win7,process=kvm-win7为虚拟机取名,便于识别-vnc :2这里是通过vnc连接控制窗口,这里是在5902端口。

client可用IP:2连接。

-usb -usbdevice tablet启用usb设备中的tablet功能。

开启该功能可使虚拟机内外的鼠标同步。

另外,在安装了磁盘和网卡的半虚拟化驱动后,可以在-drive中加入if=virtio 使用磁盘半虚拟化,在-net nic中加入model=virtio使用网卡半虚拟化驱动。

qemu-system-x86_64 –help所得到的帮助信息如下:QEMU emulator version 0.13.0 (qemu-kvm-0.13.0), Copyright (c) 2003-2008 Fabrice Bellardusage: qemu [options] [disk_image]'disk_image' is a raw hard disk image for IDE hard disk 0Standard options:-h or -help display this help and exit-version display version information and exit-M machine select emulated machine (-M ? for list)-cpu cpu select CPU (-cpu ? for list)-smp n[,maxcpus=cpus][,cores=cores][,threads=threads][,sockets=sockets]set the number of CPUs to 'n' [default=1]maxcpus= maximum number of total cpus, includingoffline CPUs for hotplug, etccores= number of CPU cores on one socketthreads= number of threads on one CPU coresockets= number of discrete sockets in the system-numa node[,mem=size][,cpus=cpu[-cpu]][,nodeid=node]-fda/-fdb file use 'file' as floppy disk 0/1 image-hda/-hdb file use 'file' as IDE hard disk 0/1 image-hdc/-hdd file use 'file' as IDE hard disk 2/3 image-cdrom file use 'file' as IDE cdrom image (cdrom is ide1 master)-drive [file=file][,if=type][,bus=n][,unit=m][,media=d][,index=i][,cyls=c,heads=h,secs=s[,trans=t]][,snapshot=on|off][,cache=writethrough|writeback|none|unsafe][,format=f][,serial=s][,addr=A][,id=name][,aio=threads|native][,readonly=on|off][,boot=on|off]use 'file' as a drive image-set group.id.arg=valueset <arg> parameter for item <id> of type <group>i.e. -set drive.$id.file=/path/to/image-global driver.property=valueset a global default for a driver property-mtdblock file use 'file' as on-board Flash memory image-sd file use 'file' as SecureDigital card image-pflash file use 'file' as a parallel flash image-boot [order=drives][,once=drives][,menu=on|off]'drives': floppy (a), hard disk (c), CD-ROM (d), network (n)-snapshot write to temporary files instead of disk image files-m megs set virtual RAM size to megs MB [default=128]-mem-path FILE provide backing storage for guest RAM-mem-prealloc preallocate guest memory (use with -mem-path)-k language use keyboard layout (for example 'fr' for French)-audio-help print list of audio drivers and their options-soundhw c1,... enable audio supportand only specified sound cards (comma separated list)use -soundhw ? to get the list of supported cardsuse -soundhw all to enable all of them-usb enable the USB driver (will be the default soon)-usbdevice name add the host or guest USB device 'name'-device driver[,prop[=value][,...]]add device (based on driver)prop=value,... sets driver propertiesuse -device ? to print all possible driversuse -device driver,? to print all possible propertiesFile system options:-fsdev local,id=id,path=path,security_model=[mapped|passthrough]Virtual File system pass-through options:-virtfs local,path=path,mount_tag=tag,security_model=[mapped|passthrough]-name string1[,process=string2]set the name of the gueststring1 sets the window title and string2 the process name (on Linux) -uuid %08x-%04x-%04x-%04x-%012xspecify machine UUIDDisplay options:-nographic disable graphical output and redirect serial I/Os to console-curses use a curses/ncurses interface instead of SDL-no-frame open SDL window without a frame and window decorations-alt-grab use Ctrl-Alt-Shift to grab mouse (instead of Ctrl-Alt)-ctrl-grab use Right-Ctrl to grab mouse (instead of Ctrl-Alt)-no-quit disable SDL window close capability-sdl enable SDL-portrait rotate graphical output 90 deg left (only PXA LCD)-vga [std|cirrus|vmware|xenfb|none]select video card type-full-screen start in full screen-g WxH[xDEPTH] Set the initial graphical resolution and depth-vnc display start a VNC server on displayi386 target only:-win2k-hack use it when installing Windows 2000 to avoid a disk full bug-no-fd-bootchk disable boot signature checking for floppy disks-no-acpi disable ACPI-no-hpet disable HPET-balloon none disable balloon device-balloon virtio[,addr=str]enable virtio balloon device (default)-acpitable[sig=str][,rev=n][,oem_id=str][,oem_table_id=str][,oem_rev=n][,asl_compiler_id=str][,asl_c ompiler_rev=n][,data=file1[:file2]...]ACPI table description-smbios file=binaryload SMBIOS entry from binary file-smbios type=0[,vendor=str][,version=str][,date=str][,release=%d.%d]specify SMBIOS type 0 fields-smbios type=1[,manufacturer=str][,product=str][,version=str][,serial=str][,uuid=uuid][,sku=str][,family=str]specify SMBIOS type 1 fieldsNetwork options:-net nic[,vlan=n][,macaddr=mac][,model=type][,name=str][,addr=str][,vectors=v]create a new Network Interface Card and connect it to VLAN 'n'-net user[,vlan=n][,name=str][,net=addr[/mask]][,host=addr][,restrict=y|n][,hostname=host][,dhcpstart=addr][,dns=addr][,tftp=dir][,bootfile=f][,hostfwd=rule][,guestfwd=rule][,smb=dir[,smbserver=addr]]connect the user mode network stack to VLAN 'n', configure itsDHCP server and enabled optional services-nettap[,vlan=n][,name=str][,fd=h][,ifname=name][,script=file][,downscript=dfile][,sndbuf=nbyt es][,vnet_hdr=on|off][,vhost=on|off][,vhostfd=h]connect the host TAP network interface to VLAN 'n' and use thenetwork scripts 'file' (default=/etc/qemu-ifup)and 'dfile' (default=/etc/qemu-ifdown)use '[down]script=no' to disable script executionuse 'fd=h' to connect to an already opened TAP interfaceuse 'sndbuf=nbytes' to limit the size of the send buffer (thedefault of 'sndbuf=1048576' can be disabled using 'sndbuf=0')use vnet_hdr=off to avoid enabling the IFF_VNET_HDR tap flaguse vnet_hdr=on to make the lack of IFF_VNET_HDR support an error conditionuse vhost=on to enable experimental in kernel acceleratoruse 'vhostfd=h' to connect to an already opened vhost net device-net socket[,vlan=n][,name=str][,fd=h][,listen=[host]:port][,connect=host:port]connect the vlan 'n' to another VLAN using a socket connection-net socket[,vlan=n][,name=str][,fd=h][,mcast=maddr:port]connect the vlan 'n' to multicast maddr and port-net dump[,vlan=n][,file=f][,len=n]dump traffic on vlan 'n' to file 'f' (max n bytes per packet)-net none use it alone to have zero network devices. If no -net optionis provided, the default is '-net nic -net user'-netdev [user|tap|socket],id=str[,option][,option][,...]Character device options:-chardev null,id=id[,mux=on|off]-chardev socket,id=id[,host=host],port=host[,to=to][,ipv4][,ipv6][,nodelay] [,server][,nowait][,telnet][,mux=on|off] (tcp)-chardev socket,id=id,path=path[,server][,nowait][,telnet],[mux=on|off] (unix) -chardev udp,id=id[,host=host],port=port[,localaddr=localaddr][,localport=localport][,ipv4][,ipv6][,mux=on|off]-chardev msmouse,id=id[,mux=on|off]-chardev vc,id=id[[,width=width][,height=height]][[,cols=cols][,rows=rows]] [,mux=on|off]-chardev file,id=id,path=path[,mux=on|off]-chardev pipe,id=id,path=path[,mux=on|off]-chardev pty,id=id[,mux=on|off]-chardev stdio,id=id[,mux=on|off][,signal=on|off]-chardev tty,id=id,path=path[,mux=on|off]-chardev parport,id=id,path=path[,mux=on|off]Bluetooth(R) options:-bt hci,null dumb bluetooth HCI - doesn't respond to commands-bt hci,host[:id]use host's HCI with the given name-bt hci[,vlan=n]emulate a standard HCI in virtual scatternet 'n'-bt vhci[,vlan=n]add host computer to virtual scatternet 'n' using VHCI-bt device:dev[,vlan=n]emulate a bluetooth device 'dev' in scatternet 'n'Linux/Multiboot boot specific:-kernel bzImage use 'bzImage' as kernel image-append cmdline use 'cmdline' as kernel command line-initrd file use 'file' as initial ram diskDebug/Expert options:-serial dev redirect the serial port to char device 'dev'-parallel dev redirect the parallel port to char device 'dev'-monitor dev redirect the monitor to char device 'dev'-qmp dev like -monitor but opens in 'control' mode-mon chardev=[name][,mode=readline|control][,default]-debugcon dev redirect the debug console to char device 'dev'-pidfile file write PID to 'file'-singlestep always run in singlestep mode-S freeze CPU at startup (use 'c' to start execution)-gdb dev wait for gdb connection on 'dev'-s shorthand for -gdb tcp::1234-d item1,... output log to /tmp/qemu.log (use -d ? for a list of log items)-hdachs c,h,s[,t]force hard disk 0 physical geometry and the optional BIOStranslation (t=none or lba) (usually qemu can guess them)-L path set the directory for the BIOS, VGA BIOS and keymaps-bios file set the filename for the BIOS-enable-kvm enable KVM full virtualization support-xen-domid id specify xen guest domain id-xen-create create domain using xen hypercalls, bypassing xendwarning: should not be used when xend is in use-xen-attach attach to existing xen domainxend will use this when starting qemu-no-reboot exit instead of rebooting-no-shutdown stop before shutdown-loadvm [tag|id]start right away with a saved state (loadvm in monitor)-daemonize daemonize QEMU after initializing-option-rom rom load a file, rom, into the option ROM space-clock force the use of the given methods for timer alarm.To see what timers are available use -clock ?-rtc [base=utc|localtime|date][,clock=host|vm][,driftfix=none|slew]set the RTC base and clock, enable drift fix for clock ticks (x86 only) -icount [N|auto]enable virtual instruction counter with 2^N clock ticks perinstruction-watchdog i6300esb|ib700enable virtual hardware watchdog [default=none]-watchdog-action reset|shutdown|poweroff|pause|debug|noneaction when watchdog fires [default=reset]-echr chr set terminal escape character instead of ctrl-a-virtioconsole cset virtio console-show-cursor show cursor-tb-size n set TB size-incoming p prepare for incoming migration, listen on port p-nodefaults don't create default devices-chroot dir chroot to dir just before starting the VM-runas user change to user id user just before starting the VM-prom-env variable=valueset OpenBIOS nvram variables-semihosting semihosting mode-old-param old param mode-readconfig <file>-writeconfig <file>read/write config file-nodefconfigdo not load default config files at startup-no-kvm disable KVM hardware virtualization-no-kvm-irqchip disable KVM kernel mode PIC/IOAPIC/LAPIC-no-kvm-pit disable KVM kernel mode PIT-no-kvm-pit-reinjectiondisable KVM kernel mode PIT interrupt reinjection-pcidevice host=[seg:]bus:dev.func[,dma=none][,name=string]expose a PCI device to the guest OSdma=none: don't perform any dma translations (default is to use an iommu)'string' is used in log output-enable-nesting enable support for running a VM inside the VM (AMD only)-nvram FILE provide ia64 nvram contents-tdf enable guest time drift compensation-kvm-shadow-memory MEGABYTESallocate MEGABYTES for kvm mmu shadowingDuring emulation, the following keys are useful:ctrl-alt-f toggle full screenctrl-alt-n switch to virtual console 'n'ctrl-alt toggle mouse and keyboard grabWhen using -nographic, press 'ctrl-a h' to get some help.KVM的一个管理工具——Virsh在Linux领域里,除了Xen外,还有许多种机制也提供虚拟化的功能,然而,不同的虚拟化系统的使用方法都不太相同。

相关文档
最新文档