virsh重启虚拟机命令_vmware创建的虚拟机不见了

virsh重启虚拟机命令_vmware创建的虚拟机不见了使用QEMU/KVM虚拟化平台启动虚拟机,通常需要手动输入一行很长的命令,里面可能有几十个参数,要想启动多个虚拟机,以及监视多个虚拟机运行状态会非常困难,这时候就需要virsh这样一个虚拟机的管理工具。由于前面的文章已经介绍了如何安装QEMU以及如何启动虚拟机,这里就直接从QEMU/KVM安装好以后的地方开始。1.安装libvirt在ubuntu系统中,使用apt-get安装的libvirt还是1…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

使用QEMU/KVM虚拟化平台启动虚拟机,通常需要手动输入一行很长的命令,里面可能有几十个参数,要想启动多个虚拟机,以及监视多个虚拟机运行状态会非常困难,这时候就需要virsh这样一个虚拟机的管理工具。

由于前面的文章已经介绍了如何安装QEMU以及如何启动虚拟机,这里就直接从QEMU/KVM安装好以后的地方开始。

1.安装libvirt

在ubuntu系统中,使用apt-get安装的libvirt还是1.3版本的,有很多兼容性的问题。这里选择源码安装libvirt。

先卸载系统默认安装的libvirt(如果没有安装忽略这一步):

sudo apt-get purge libvirt

安装所需环境(其他需要的configure的时候会提示安装的):

sudo apt-get install libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 libpolkit-gtk-mate-1-0 libxml++2.6-dev libdevmapper-dev libnl-3-dev libgnutls-dev libpciaccess-dev libnl-route-3-dev libyajl-dev xsltproc libxml2-utils

我这里下载的是 libvirt-4.10.0.tar.xz,在ubuntu系统中解压,编译,安装:

tar xvJf libvirt-4.10.0.tar.xz

cd libvirt-4.10.0/

./configure –prefix=/usr –localstatedir=/var –sysconfdir=/etc #不指定的话默认会给安装到/usr/local目录下

make && make install

安装完成后检查是否安装成功:

# which libvirtd

/usr/sbin/libvirtd

# libvirtd –version

libvirtd (libvirt) 4.10.0

# which virsh

/usr/bin/virsh

# virsh -v

4.10.0

安装成功后启动libvirtd服务:

sudo systemctl restart libvirtd

2.通过虚拟机模板xml文件启动虚拟机

用virsh启动虚拟机需要有对应的xml文件,virsh可以生成这些模板文件。

如何用iso创建虚拟磁盘直接使用qemu-img即可,之前文章讲过。这里直接默认虚拟磁盘已创建并完成安装。使用vhost-user网络接口的虚拟机xml文件如下:

demovm

4a9b3f53-fa2a-47f3-a757-dd87720d9d1d

4194304

4194304

2

4096

hvm

destroy

restart

destroy

/usr/bin/qemu-system-x86_64

这个xml文件给虚拟机配置了各种物理设备信息:给虚拟机起名为demovm,配置了绑定物理核的两块虚拟CPU核,内存使用预分配的1GB大页面,总内存4GB,虚拟磁盘文件在’/var/iso/virtual1.qcow2’,使用virtio的vhost-user网络接口,一个串口console和一个VNC端口。虚拟机的xml文件非常复杂,只要配置有一项不兼容或者设置出错就会导致启动失败。

先定义该模板虚拟机:

virsh define test.xml

在已经启动了OVS并开放vhost端口情况下,启动虚拟机:

virsh start demovm

通过virsh list已经可以看到虚拟机运行起来了:

virsh重启虚拟机命令_vmware创建的虚拟机不见了

virsh list界面可以看到虚拟机运行状态.png

3.远程终端和关闭虚拟机

开启虚拟机以后,我们可以通过连接到刚才设置的console来访问虚拟机的终端:

virsh console demovm –devname serial0

但是问题出现了,为什么光标一直卡在这,没有进入终端:

virsh重启虚拟机命令_vmware创建的虚拟机不见了

光标卡住.png

通过VNC连接到虚拟机(这里用的是tightVNC),终端输入:

sudo systemctl disable systemd-networkd-wait-online

sudo systemctl ensble serial-getty@ttyS0.service

sudo systemctl start serial-getty@ttyS0.service

重新启动虚拟机再次尝试,成功:

virsh重启虚拟机命令_vmware创建的虚拟机不见了

登进虚拟机控制台.png

尝试用virsh关闭虚拟机:

virsh shutdown demovm

发现虚拟机并没有关机还在运行,登录VNC查看,原来是图形化界面的原因,开启了用户选择界面:

virsh重启虚拟机命令_vmware创建的虚拟机不见了

ubuntu关机用户选择界面.png

查阅资料virsh的shutdown命令是通过acpi传递到虚拟机里的,进入虚拟机终端,进入acpi事件处理目录,修改powerbtn事件处理配置文件:

cd /etc/acpi/events/

vim powerbtn

virsh重启虚拟机命令_vmware创建的虚拟机不见了

修改关机为直接关机不用选择.png

重启回到virsh控制台,成功关机。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169786.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • utf8转换成ansi编码_ansi乱码

    utf8转换成ansi编码_ansi乱码1、windows平台下#ifdef_WIN32intCParserIni::ansi2utf8(conststring&ansiStr,string&utf8Str){intret=kNoError;do{//CP_ACP(ANSI字符集)if(ansiStr.empty())BREAK_WITH_ERROR(kInvalidParamete…

  • 漏洞挖掘丨敏感信息泄露+IDOR+密码确认绕过=账户劫持

    漏洞挖掘丨敏感信息泄露+IDOR+密码确认绕过=账户劫持获得账户auth_token目标网站是一个工作招聘门户网站,测试保密原因暂且称其为redacted.com。一开始,我登录以应聘者身份去测试CSRF或某些存储型XSS,但没什么发现。接下来,我就想到了越权测试(IDOR),为此,我又创建了另外一个账号,两个账号一起可以测试如注册、登录、忘记密码等功能点的越权可能。创建账号前我开启了流量抓包想看看具体服务端的响应,注册开始时,网站会跳出一个提示,…

  • 杜教筛 以及积性函数的前世今生 –算法竞赛专题解析(4)「建议收藏」

    杜教筛 以及积性函数的前世今生 –算法竞赛专题解析(4)「建议收藏」最全面的杜教筛讲解、最易懂的杜教筛复杂度证明、杜教筛公式、杜教筛模板。

  • Ubuntu下代替dos2unix命令

    Ubuntu下代替dos2unix命令Ubuntu系统打开Windows下生成的文本文件,会在每行的末尾出现’^M’原因就是Windows和Linux的回车符是不同的在Windows下回车符是\r\n回车换行在Linux下回车符是\n最简单、最常用的解决方法是使用dos2unix命令转换:dos2unixfilenameUbuntu下dos2unix和unix2dos命令在tofrodos包中

  • web服务器之nginx与apache建议收藏

    最近准备架设php的web服务器,以下内容可供参考。1、nginx相对于apache的优点:轻量级,同样起web服务,比apache占用更少的内存及资源抗并发,nginx处理请求是异步非阻塞的,而ap

    2021年12月20日
  • 22.IMU和里程计融合

    22.IMU和里程计融合1.概述实际使用中会出现轮子打滑和累计误差的情况,这里单单使用编码器得到里程计会出现一定的偏差,虽然激光雷达会纠正,但一个准确的里程对这个系统还是较为重要2.IMU数据获取IMU即为惯性测量单元,一般包含了三个单轴的加速度计和三个单轴的陀螺仪,简单理解通过加速度二次积分就可以得到位移信息、通过角速度积分就可以得到三个角度,实时要比这个复杂许多2.1PIBOTIMU…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号