虚拟机生命周期管理

1)查看kvm虚拟机状态
#virsh list --all
2)KVM虚拟机开机
# virsh start oeltest01
3)KVM虚拟机关机或断电
关机
默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务。
# chkconfig acpid on
# service acpid restart
virsh关机
# virsh shutdown oeltest01 强制关闭电源
# virsh destroy wintest01 4)通过配置文件启动虚拟机
# virsh create /etc/libvirt/qemu/wintest01.xml 5)配置开机自启动虚拟机
# virsh autostart oeltest01
autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有KVM配置文件链接。 6)导出KVM虚拟机配置文件
# virsh dumpxml wintest01 > /etc/libvirt/qemu/wintest02.xml
KVM虚拟机配置文件可以通过这种方式进行备份。
7)添加与删除KVM虚拟机
删除kvm虚拟机
# virsh undefine wintest01
说明:该命令只是删除wintest01的配置文件,并不删除虚拟磁盘文件。 8)其它virsh命令
挂起服务器
# virsh suspend oeltest01 9)恢复服务器
# virsh resume oeltest01 11)创建虚拟机
[root@localhost ~]# virt-install --name=centos1 \ #生成一个虚拟机
--ram 1024 --vcpus=1 \
--disk path=/root/centos1.img,size=10 \
--accelerate --cdrom /root/CentOS-6.5-x86_64-bin-DVD1.iso \
--graphics vnc,port=5921 --network bridge=br0 12)virt-clone,如果我们要建几个一样的虚拟机,这个命令,非常有用!
# virt-clone --connect=qemu:#/system -o centos1 -n centos3 -f /root/centos3.img #克隆centos1
正在克隆 centos1.img | 10.0 GB 00:07

相关参数

autostart      #自动加载指定的一个虚拟机
connect #重新连接到hypervisor
console #连接到客户会话
create #从一个SML文件创建一个虚拟机
start #开始一个非活跃的虚拟机
destroy #删除一个虚拟机
define #从一个XML文件定义一个虚拟机
domid #把一个虚拟机名或UUID转换为ID
domuuid #把一个郁闷或ID转换为UUID
dominfo #查看虚拟机信息
domstate #查看虚拟机状态
domblkstat #获取虚拟机设备快状态
domifstat #获取虚拟机网络接口状态
dumpxml #XML中的虚拟机信息
edit #编辑某个虚拟机的XML文件
list #列出虚拟机
migrate #将虚拟机迁移到另一台主机
quit #退出非交互式终端
reboot #重新启动一个虚拟机
resume #重新恢复一个虚拟机
save #把一个虚拟机的状态保存到一个文件
dump #把一个虚拟机的内核dump到一个文件中以方便分析
shutdown #关闭一个虚拟机
setmem #改变内存的分配
setmaxmem #改变最大内存限制值
suspend #挂起一个虚拟机
vcpuinfo #虚拟机的cpu信息
version #显示virsh版本

获取vnc

[root@localhost ~]# virsh vncdisplay 2
127.0.0.1:0 [root@localhost ~]#

编辑虚拟机配置文件

1)重新定义虚拟机配置文件
通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机。
# mv /etc/libvirt/qemu/wintest02.xml /etc/libvirt/qemu/wintest01.xml
# virsh define /etc/libvirt/qemu/wintest01.xml 2)编辑KVM虚拟机配置文件
# virsh edit wintest01
virsh edit将调用vi命令编辑/etc/libvirt/qemu/wintest01.xml配置文件。也可以直接通过vi命令进行编辑,修改,保存。
可以但不建议直接通过vi编辑。
# vim /etc/libvirt/qemu/wintest01.xml

通过virsh console进入虚拟机控制台

libguestfs-tools的使用

一、libguestfs-tools安装

yum -y install libguestfs-tools

二、linux下的使用

1、查看硬盘使用情况

virt-df centos.img

2、列出目录文件

virt-ls centos.img /

3、将名为domain的虚拟机里的源复制到目的

virt-copy-out -d domain /etc/passwd(源) /tmp(目的)

4.查看分区相关信息

virt-filesystems -d domain
virt-list-filesystems /file/xx.img
virt-list-partitions /file/xx.img

5.分区挂载

guestmount -a /file/xx.qcow2(raw/qcow2都支持) -m /dev/VolGroup/lv_root --rw /mnt

6.shell的使用

guestfish -d domain(在开机情况下不能使用)

修改kvm虚拟机的root密码和其他用户密码

  1. virsh xxxx shutdown 关掉虚拟机

  2. virt-edit xxx /etc/shadow 文件,

    先生成一个密钥

    # openssl passwd -1 -salt 'hello' '123456'
    $1$hello$ZwmhCpcG.I1XIfVjdarKc1

    virt-edit -d rhel7.0 /etc/shadow,替换掉root的shadow文件

    root:$1$bTPRDWwf$LpjUZmGTHw.hYFccl0/lK.:16804:0:99999:7:::
    更换为
    root:$1$hello$ZwmhCpcG.I1XIfVjdarKc1:16541:0:99999:7:::
  3. virsh xxxx start 启动虚拟机 ,使用新的root密码登录,搞定

修改qcow2的密码

需要安装

libguestfs-tools

修改/etc/libvirt/qemu.conf

user = "root"
# The group for QEMU processes run by the system instance. It can be
# specified in a similar way to user.
group = "root"

修改密码

[root@localhost home]# sudo virt-customize -a /root/ubuntu.qcow2  --root-password password:root
[ 0.0] Examining the guest ...
[ 100.3] Setting a random seed
[ 101.4] Setting the machine ID in /etc/machine-id
[ 101.6] Setting passwords
[ 126.6] Finishing off
[root@localhost home]#

kvm虚拟机操作相关命令及虚拟机和镜像密码修改的更多相关文章

  1. IDEA环境下GIT操作浅析之二-idea下分支操作相关命令

    上次写到<idea下仓库初始化与文件提交涉及到的基本命令>,今天我们继续写IDEA环境下GIT操作之二--idea下分支操作相关命令以及分支创建与合并. 1.idea 下分支操作相关命令 ...

  2. Linux相关命令、虚拟机网络配置

    虚拟机联网 Linux命令 1.查找 #查找django进程,不包括grep自建的 ps -ef |grep django | grep -v grep # find 查找home目录下的name.t ...

  3. redis入门指南(二)—— 数据操作相关命令

    写在前面 以下绝大部分内容取材于<redis入门指南>,部分结合个人知识,实践后得出. 只记录重要,明确,属于新知的相关内容,杜绝冗余和重复. 字符串 1.字符串类型是redis中最常见的 ...

  4. 一些kvm虚拟机操作的命令

    创建一个40G的raw的磁盘 seek= 将raw磁盘转化为qcow2 qemu-img convert -f raw -O qcow2 disk.img disk.qcow2 将qcow2文件再压缩 ...

  5. linux 常用文本操作相关命令

    平时工作经常会对文本进行相关操作,包括读写.替换.统计等等,借此整理和学习一下有关命令. 1. cat 查看文件中的内容, -n 查看时为每一行加编号; -b 和-n类似,只不过对于空白行不编号: 2 ...

  6. Linux(三) - 文件操作相关命令

    Ctl-A 光标移动到行首 Ctl-C 终止命令 Ctl-D 注销登录 Ctl-E 光标移动到行尾 Ctl-U 删除光标到行首的所有字符,在某些设置下,删除全行 Ctl-W 删除当前光标到前边的最近一 ...

  7. git远程操作相关命令(remote 、push、fetch 、pull)

    git remote 为了便于管理,Git要求每个远程主机都必须指定一个主机名.为了便于管理,Git要求每个远程主机都必须指定一个主机名. git remote[查看创库名] git remote 在 ...

  8. WinDbg常用命令系列---源代码操作相关命令

    lsf, lsf- (Load or Unload Source File) lsf和lsf-命令加载或卸载源文件. lsf Filename lsf- Filename 参数: Filename指定 ...

  9. ceph操作相关命令整合

    ceph基本操作: /etc/init.d/ceph -a start/stop //即在所有节点上执行 单个操作: start/stop ceph-osd id={id} start/stop ce ...

随机推荐

  1. STM32定义变量位于指定的SRAM地址

    1.定义一个数组比如value[],让数组的首地址指向特定的SRAM地址,比如0x20000100 1)__align(8) uint8_t value[20] __attribute__((at(0 ...

  2. mysql服务启动失败

    #!/bin/bash . /etc/rc.d/init.d/functions MPORT=`netstat -atnlp | grep 3306| wc -l` MPROC=`ps ax | gr ...

  3. Delphi用QJSON解析JSON格式的数据 【转】

    本来用superobject来解析JSON已经够用了,可惜这个东东不能在移动端使用,于是找到QJSON来处理. 这是一个国内高手写开源免费的东西,赞一个. 假入数据如下: {"message ...

  4. springboot的一些开源项目

    原文标题:精选SpringBoot八大开源项目:支付.秒杀.全文搜索等 支付项目: 项目地址:https://gitee.com/52itstyle/spring-boot-pay 秒杀案例: 项目地 ...

  5. kotlin面向对象入门

    之前在学kotlin基础语法时咱们是采用三方jar包在eclipse工程下进行的,很显然这工具在实际商用中基本上很少用到了,最终是要编写android程序,所以说从这里起得更换一个更加智能更加贴近实际 ...

  6. 解决tomcat控制台乱码+清除过期缓存条目后可用空间仍不足 - 请考虑增加缓存的最大空间问题

    一.乱码 1.打开Tomcat的目录,找到conf文件夹,一般修改server.xml中的编码集,改为utf-8即可 2.若server.xml中编码设置的就是utf-8,可以修改logging.pr ...

  7. css 命名规范 BEM

    在项目的开发过程当中, 我们往往因为日益复杂的css代码而感到力不从心. 如何合理的组织css代码成为了我们前端开发过程中必须考虑到的环节. 在读element源代码的时候, 了解到了BEM的命名风格 ...

  8. Python文件查找

    #!/usr/bin/python   import os import string   def get_name(path_name, file_str):         dir_name = ...

  9. HDU 6043 - KazaQ's Socks | 2017 Multi-University Training Contest 1

    /* HDU 6043 - KazaQ's Socks [ 找规律 ] | 2017 Multi-University Training Contest 1 题意: 一共 n 双袜子编号 1~n,每天 ...

  10. 31. ClustrixDB 分布式架构/查询优化器

    ClustrixDB查询优化器有何不同 ClustrixDB查询优化器的核心是能够执行一个具有最大并行性的查询和多个具有最大并发性的并发查询.这是通过分布式查询规划器和编译器以及分布式无共享执行引擎实 ...