libvirt(virsh命令总结)

virsh回车进入交互式界面:

  version

  pwd

  hostname  显示本节点主机名

  nodeinfo    显示节点信息

  list --all   显示所有云主机

  7种状态:

    running   运行中

    idel     空闲,未运行

    paused   暂停状态

    shutdown 关闭

    crashed  虚拟机崩溃

    dying   垂死状态,但是又没有完全关闭或崩溃

    shutdown <domain>  

    destroy    <domain>  强制关闭虚拟机(相当于直接拨电源)

    start   <domain>  启动虚拟机

    edit  <domain>     编辑该虚拟机的xml文件

    dommemstat <domain> 获取domain的内存状态

    suspend  <domain>      挂起一个正在运行的虚拟机,该虚拟机仍占资源;

    resume  <domain>    从挂起状态恢复一下虚拟机

    vcpuinfo <domain>    显示一些虚拟机的vcpu的信息

    vncdisplay  <domain>    显示vnc监听地址和端口

快照相关:

  snapshot-create <domain> xmlfile   给domain创建一个snapshot,详细内容保存在xmlfile中

  snapshot-current <domain>      显示一个domain的当前的snapshot

  snapshot-list <domain>         显示一个domain的所有的snapshot

  snapshot-revert <domain> snapshot       恢复一个domian到以前的snapshot

  snapshot-delete <domain> snapshot --children   删除一个domain的snapshot

 如何用libvirt远程管理虚拟机?

  要用libvirt连接到超级管理程序,我们需要一个URI,这个URI配合virsh和virt-viewer命令使用,后面可以跟一些可选项,virt-viewer可以调用一些链接参数,例如:virsh -c qemu:///system 当链接到远程机器时,可以定义几种使用的协议:ssh,tcp,tls。当链接到远程机器时,需要使用远程主机的用户和主机名进行链接,如果没有定义链接用户,则会使用本机环境的$USER的用户进行链接,当连接到qemu hypervisor时,接受两种链接类型:system可以有所有的访问权限,session有限制的访问。例如:

  使用full access链接至本机的qemu hypervisor,前面的-c 是为了执行后面的list命令(--connect)

  virsh -c  qemu:///system list

  使用full access链接至远程主机的qemu hypervisor,每次都要输入ssh密码,改成ssh无密码登陆就不需要输入密码了,直接显示结果。

  virsh -c qemu+ssh://tux@mercur/system   直接进入交互virsh模式

  virsh -c qemu+ssh://10.1.1.8/system list   直接显示list后的结果

  其余连接格式如下:

  qemu:///session                      (local access to per-user instance)
  qemu+unix:///session                 (local access to per-user instance)
  qemu:///system                       (local access to system instance)
  qemu+unix:///system                  (local access to system instance)
  qemu://example.com/system            (remote access, TLS/x509)  
  qemu+tcp://example.com/system        (remote access, SASl/Kerberos)
  qemu+ssh:///system   (remote access, SSH tunnelled)

使用libvirt创建kvm虚拟机:
  1、制作虚拟机镜像
    qemu-img create -f qcow2 test.qcow2 10G //格式,名字,大小
  2、下载并复制iso镜像到指定目录(在第3步中创建xml文件中指定)
  3、创建安装配置文件,demo.xml如下,可以根据自己需求更改

 1 <domain type='kvm'>
2 <name>test_ubuntu</name> //虚拟机名称
3 <memory>1048576</memory> //最大内存,单位k
4 <currentMemory>1048576</currentMemory> //可用内存,单位k
5 <vcpu>8</vcpu> //虚拟cpu个数
6 <os>
7 <type arch='x86_64' machine='pc'>hvm</type>
8 <boot dev='cdrom'/> //光盘启动
9 </os>
10 <features>
11 <acpi/>
12 <apic/>
13 <pae/>
14 </features>
15 <clock offset='localtime'/>
16 <on_poweroff>destroy</on_poweroff>
17 <on_reboot>restart</on_reboot>
18 <on_crash>destroy</on_crash>
19 <devices>
20 <emulator>/usr/libexec/qemu-kvm</emulator>
21 <disk type='file' device='disk'>
22 <driver name='qemu' type='qcow2'/>
23 <source file='/var/lib/libvirt/images/test.qcow2'/> //目的镜像路径
24 <target dev='hda' bus='ide'/>
25 </disk>
26 <disk type='file' device='cdrom'>
27 <source file='/var/lib/libvirt/images/ubuntu.iso'/> //光盘镜像路径
28 <target dev='hdb' bus='ide'/>
29 </disk>
30 <interface type='bridge'> //虚拟机网络连接方式
31 <source bridge='kvmbr0'/> //当前主机网桥的名称
32 <mac address="00:16:3e:5d:aa:a8"/> //为虚拟机分配mac地址,务必唯一,否则dhcp获得同样ip,引起冲突
33 </interface>
34 <input type='mouse' bus='ps2'/>
35 <graphics type='vnc' port='-1' autoport='yes' listen = '0.0.0.0' keymap='en-us'/>//vnc方式登录,端口号自动分配,自动加1,可以通过virsh vncdisplay来查询
36 </devices>
37 </domain>

  virsh define  demo.xml    //创建虚拟机

  virsh  start    test_ubuntu   //启动虚拟机

  virsh  vncdisplay   test_ubuntu   ////查看虚拟机的vnc端口, 然后就可以通过vnc登录来完成虚拟机的安装

 

[转载]libvirt(virsh命令总结)的更多相关文章

  1. libvirt(virsh命令介绍)

    有了virt-install是安装虚拟机的命令,当然也需要一个管理虚拟机的命令了,那就是virsh. virsh命令使用 virsh <command> <domain-id> ...

  2. libvirt(virsh命令总结)

    virsh回车进入交互式界面: version pwd hostname 显示本节点主机名 nodeinfo  显示节点信息 list --all 显示所有云主机 7种状态: running  运行中 ...

  3. virsh命令行管理工具

    virsh命令行管理工具 Libvirt有两种控制方式,命令行和图形界面 图形界面: 通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机 ...

  4. virsh命令管理虚拟机

    virsh命令管理虚拟机 libvirt有两种控制方式,命令行和图形界面. 1.图形界面:通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚 ...

  5. virsh 命令

    virsh是用与管理虚拟化环境中的客户机和Hypervisor的命令行工具,与virt-manager等工具类似,也是调用libvirt API来实现虚拟化的管理. 在使用virsh命令行进行虚拟化管 ...

  6. 05.virsh命令的常用操作(kvm)

    注:以下命令均可在virsh的man手册页中找到   KVM虚拟机管理常用命令(domain):   virsh命令参数 功能 用法举例 list 查看已经存在的domain信息(可以带参数) vir ...

  7. virsh命令来创建虚拟机

    virsh命令来创建虚拟机步骤 (1)生成硬盘镜像文件: 格式:raw或qcow2 # qemu-img create -f raw fdisk.img 10G qemu-img convert re ...

  8. virsh命令和虚拟机克隆

    virsh 命令 virsh list  //列出正在运行虚拟机 virsh list --all     //列出所有虚拟机 virsh  console sunhao-1  //进入名字为sunh ...

  9. [ kvm ] 学习笔记 6:virsh 命令及功能详解

    1. 虚拟机管理操作 attach-device 从XML文件附加设备 attach-disk 附加磁盘设备 attach-interface 连接网络接口 autostart 自动启动一个域 blk ...

随机推荐

  1. IOC容器模拟实现

    运用反射机制和自定义注解模拟实现IOC容器,使其具有自动加载.自动装配和根据全限定类名获取Bean的功能. 一. 实现原理 1-1 IOC容器的本质 IOC容器可理解为是一个map,其中的一个entr ...

  2. ELK7.11.2版本安装部署及ElastAlert告警相关配置

    文档开篇,我还是要说一遍,虽然我在文档内容中也会说好多遍,但是希望大家不要嫌我墨迹: 请多看官方文档,请多看命令行报错信息,请多看日志信息,很多时候它们比百度.比必应.比谷歌有用: 请不要嫌麻烦,打开 ...

  3. Java(94-100)【数组、对象】

    1.数组作为方法的参数 任何数据类型都可以作为方法的参数 直接建立数组的方法,将数组作为方法的参数. 当调用方法的时候传递的是数组的地址. 2.数组作为方法的返回值 任何数据类型都可以作为方法的参数, ...

  4. 简单的介绍一下Java设计模式:解释器模式

    目录 定义 意图 主要解决问题 优缺点 结构 示例 适用情况 定义 解释器模式是类的行为型模式,给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器,客户端可以使用这个解释器来 ...

  5. python进阶(16)深入了解GIL锁(最详细)

    前言 python的使用者都知道Cpython解释器有一个弊端,真正执行时同一时间只会有一个线程执行,这是由于设计者当初设计的一个缺陷,里面有个叫GIL锁的,但他到底是什么?我们只知道因为他导致pyt ...

  6. 现代操作系统原书第3版.mobi

    电子书资源:现代操作系统原书第3版 书籍简介   本书是操作系统领域的经典之作,与第2版相比,增加了关于Linux.Windows Vista和Symbian操作系统的详细介绍.书中集中讨论了操作系统 ...

  7. Appium 简介与自动化测试环境搭建

    1. Appium 简介 2. Appium 自动化测试环境搭建 1. Appium 简介 Appium 是一个开源测试自动化框架,可用于原生,混合和移动 Web 应用程序测试. 它使用 WebDri ...

  8. hdu4179 限制最短路

    题意:       这个题目估计读懂题意就ok了,关键是题意蛋疼,像我这样的英语渣渣活着可真难啊,题意大体是这样,给你n个点m条无向边,给你起点和终点,让你求从起点到终点的最短路径,其中有一些限制: ...

  9. Metasploit Framework(MSF)的使用

    目录 Metasploit 安装Metasploit 漏洞利用(exploit) 攻击载荷(payload) Meterpreter MS17_010(永恒之蓝) 辅助模块(探测模块) 漏洞利用模块 ...

  10. XCTF-web_python_template_injection

    web_python_template_injection 这里涉及到flask的ssti漏洞(服务端模板注入). 简单点说就是,在使用flask/jinja2的模板渲染函数render_templa ...