KVM虚拟机的常用操作命令整理
<p>1,创建虚拟机<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode277"><br /># virt-install --name=centos1 \ #生成一个虚拟机<br />--ram 1024 --vcpus=1 \<br />--disk path=/root/centos1.img,size=10 \<br />--accelerate --cdrom /root/CentOS-6.5-x86_64-bin-DVD1.iso \<br />--graphics vnc,port=5921 --network bridge=br0<br /></div></p><p>2,virsh的其他操作<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode278"><br /># virsh start centos1 #启动虚拟机<br /><br /># virt-viewer centos1 #如果有图形界面的话,可以进入虚拟机的界面<br /><br /># virsh shutdown centos1 #关闭虚拟机<br /><br /># virsh reboot centos1 #重启虚拟机<br /><br /># virsh suspend centos1 #暂停虚拟机<br /><br /># virsh resume centos1 #恢复虚拟机<br /><br /># virsh autostart centos1 #自动加载虚拟机<br /></div><br />virsh参数如下:<br />autostart #自动加载指定的一个虚拟机 <br />connect #重新连接到hypervisor <br />console #连接到客户会话 <br />create #从一个SML文件创建一个虚拟机 <br />start #开始一个非活跃的虚拟机 <br />destroy #删除一个虚拟机 <br />define #从一个XML文件定义一个虚拟机 <br />domid #把一个虚拟机名或UUID转换为ID <br />domuuid #把一个郁闷或ID转换为UUID <br />dominfo #查看虚拟机信息 <br />domstate #查看虚拟机状态 <br />domblkstat #获取虚拟机设备快状态 <br />domifstat #获取虚拟机网络接口状态 <br />dumpxml #XML中的虚拟机信息 <br />edit #编辑某个虚拟机的XML文件 <br />list #列出虚拟机 <br />migrate #将虚拟机迁移到另一台主机 <br />quit #退出非交互式终端 <br />reboot #重新启动一个虚拟机 <br />resume #重新恢复一个虚拟机 <br />save #把一个虚拟机的状态保存到一个文件 <br />dump #把一个虚拟机的内核dump到一个文件中以方便分析 <br />shutdown #关闭一个虚拟机 <br />setmem #改变内存的分配 <br />setmaxmem #改变最大内存限制值 <br />suspend #挂起一个虚拟机 <br />vcpuinfo #虚拟机的cpu信息 <br />version #显示virsh版本 </p>
<p><br />3,virt-clone,如果我们要建几个一样的虚拟机,这个命令,非常有用<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode279"><br /># virt-clone --connect=qemu:///system -o centos1 -n centos3 -f/root/centos3.img #克隆centos1 <br />正在克隆 centos1.img | 10.0 GB 00:07 <br /><br />Clone 'centos3' created successfully.<br />libguestfs-tools是虚拟机一个管理包,很有用的工具<br /># yum -y install libguestfs-tools #安装工具包<br /></div></p>
<p>4,未登录的情况下,查看镜像目录<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode280"><br /># virt-ls centos.img /home #查看centos.img镜像文件中/home目录<br />tank<br /></div></p>
<p>5,未登录的情况下,将镜像文件中的文件copy出来</p>
<p><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode281"><br /># virsh list --all #查看所有的虚拟机名称<br /> Id 名称 状态<br />----------------------------------------------------<br /> 1 centos1 running<br /> 2 centos6.5 running<br /> - arch 关闭<br /> - arch1 关闭<br /> - arch2 关闭<br /> - arch3 关闭<br /> - arch5 关闭<br /> - centos3 关闭<br /> - ubuntu 关闭<br /> - ubuntu1 关闭<br /># virt-copy-out -d centos1 /etc/passwd /tmp #将centos1中的文件copy到tmp下面<br /></div></p>
<p><br />6,查看虚拟机的分区情况<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode282"><br /># virt-filesystems -d centos1<br />/dev/sda1<br />/dev/VolGroup/lv_root<br /><br /># virt-list-partitions /root/centos.img<br />/dev/sda1<br />/dev/sda2<br /><br /># virt-df centos.img<br />Filesystem 1K-blocks UsedAvailableUse%<br />centos.img:/dev/sda1 495844 34510 435734 7%<br />centos.img:/dev/VolGroup/lv_root 8780808 2842056 5492700 33%<br /></div></p>
<p>7,mount虚拟机<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode283"><br /># guestmount -a /root/centos.img -m /dev/VolGroup/lv_root --rw /mnt/usb<br /># cd /mnt/usb/<br /># ls<br />bin devhomelib64 mediamntopt rootselinuxsysusr<br />bootetclib lost+foundmisc netprocsbinsrv tmpvar<br /></div></p>
<p>8,修改kvm中虚拟机的内存大小<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode284"><br /># virsh edit vm01##注意vi直接编辑不生效<br /> <br />vm01<br />df8604c1-dcf3-fa98-420f-6eea7b39c395<br />1048576 ###本来开始设置为1G,现在这个单位是k<br />1048576<br /></div><br />修改为1.5G<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode285"><br /># expr 1536 \* 1024<br />1572864</p>
<p># virsh list<br /> Id Name State<br />----------------------------------<br />1 win2003 running<br />3 vm01 running</p>
<p># virshshutdown vm01 ###修改配置文件后需要重新启动下虚拟机,先关闭它<br />Domain vm01 is being shutdown</p>
<p># virsh list ###确认已经被关闭<br /> Id Name State<br />----------------------------------<br />1 win2003 running</p>
<p># virsh start vm01 ###启动它<br />Domain vm01 started</p>
<p># virsh list<br /> Id Name State<br />----------------------------------<br />1 win2003 running<br />3 vm01 running<br /></div><br />到机器上查看内存大小:<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode286"><br /># free -m<br /> total used free shared buffers cached<br />Mem: 1505 618 886 0 29 361<br />-/+ buffers/cache: 227 1277<br />Swap: 2000 0 2000<br /></div></p>
<p>9,删除一个虚拟机(vm01)<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode287"><br /># virsh undefinevm01<br /># rm -f /home/data/vm01.img<br /></div></p>
<p>10,删除一个域<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode288"><br /># virsh list --all<br /></div><br /> Id Name State<br />----------------------------------<br /> 1 web01 running ##处于工作状态<br /> - myweb01 shut off<br /> - myweb03 shut off<br /> - mywin2003 shut off<br /> - myxp shut off<br /> - xp shut off<br /> <br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode289"><br /># virsh undefine web01 ##处于工作状态也能删除!<br /></div><br />Domain web01 has been undefined <br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode290"><br /># virsh list<br /></div><br /> Id Name State<br />----------------------------------<br /> 1 web01 running</p>
<p><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode291"><br /># virsh destroy web01<br /></div><br />Domain web01 destroyed<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode292"><br /># virsh list --all ##web01已经没有了!<br /></div><br /> Id Name State<br />----------------------------------<br /> - myweb01 shut off<br /> - myweb03 shut off<br /> - mywin2003 shut off<br /> - myxp shut off<br /> - xp shut off<br /><br><div class="msgheader"><div class="right"><span style="CURSOR: pointer" class="copybut"><u>复制代码</u></span></div>代码如下:</div><div class="msgborder" id="phpcode293"><br /># virsh define web01<br /></div><br />error: Failed to open file 'web01': No such file or directory</p>
<p></p>
頁:
[1]