linux虚拟机管理命令/安装/恢复

使用虚拟化的意义在于节约资源,可以减少服务器的数量而达到同样的效果。而服务器的散热是消耗能源最主要的部分,使用虚拟化减少服务器数量达到节约成本的目的。
二 虚拟机管理命令
注意:在超级用户下对虚拟机进行管理。

virt-manager       #开启虚拟机管理器

在这里插入图片描述

virsh  list        #列出正在运行的虚拟机

在这里插入图片描述

virsh list --all    #列出所有虚拟机

在这里插入图片描述
virsh start 虚拟机名称 #开启虚拟机
在这里插入图片描述
virsh shutdown 虚拟机名称 #正常关闭虚拟机 关闭速度慢 并且有关机过程
在这里插入图片描述
virsh destroy 虚拟机名称 #强行关闭虚拟机
在这里插入图片描述
virt-viewer虚拟机名称 #显示虚拟机
在这里插入图片描述
三 使用镜像安装虚拟机。
准备:安装之前建议关闭所有系统中已经安装的虚拟机。确保顺利安装。以及查看cpu是否打开虚拟化功能 cat /proc/cpuinfo |grep vmx
在这里插入图片描述
以及存在镜像文件::rhel-server-7.3-x86_64-dvd.iso
在这里插入图片描述
(1)进入虚拟机管理界面选择创建新的虚拟机
在这里插入图片描述
(2)选择创建方式为镜像创建并添加镜像文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述(3)选择内存大小及CPU核数
在这里插入图片描述(4)设置硬盘的大小
在这里插入图片描述(5)设置虚拟机的名称
在这里插入图片描述(6)点击Finish后进入安装界面,选择直接安装
(7)对语言坏境的选择,选择英文
在这里插入图片描述
(8)对时区、系统语言进行修改,添加系统磁盘并划分大小
在这里插入图片描述
在这里插入图片描述(9)完成以上步骤点击Begin Instarllation 进行安装
(10)设置登录名及密码
在这里插入图片描述
在这里插入图片描述(11)设置完成后进行虚拟机的重启
在这里插入图片描述(12)重启后再次进入虚拟机中设置证书、语言、手动设置时区、密码
在这里插入图片描述
在这里插入图片描述(13) 修改虚拟机的硬盘和网卡为虚拟化。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述四 模拟虚拟机的修复
虚拟机在系统中以文件的形式存在,两个文件:
/ec/libvirt/qemu/xxx.xml #该文件文虚拟机前端配置文件。
/var/lib/libvirt/images/xxx.qcow2 #该文件为虚拟机硬盘文件。
在这里插入图片描述
1 准备好这两个文件。
在这里插入图片描述
2 将新安装的虚拟机删除。
在这里插入图片描述
3 恢复虚拟机
(1) 使用硬盘文件进行修复
打开虚拟机管理器——选择创建虚拟机——创建方式选择已经存在的硬盘文件——选择xxx.qcow2 文件。之后和使用镜像安装虚拟机一致。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述(2)一次性恢复虚拟机

virsh create   xxx.xml    #例如: virsh   create  toto.xml 
[root@foundation47 ~]# cd /mnt
[root@foundation47 mnt]# ls 
rhel-server-7.3-x86_64-dvd.iso  toto.qcow2  toto.xml
[root@foundation47 mnt]# virsh create toto.xml         #一次性恢复虚拟机
error: Failed to create domain from toto.xml
error: Cannot access storage file '/var/lib/libvirt/images/toto.qcow2' (as uid:107, gid:107): No such file or directory                   #报错 由于/var/lib/libvirt/images/toto.qcow2该文件没有

[root@foundation47 mnt]# mv toto.qcow2 /var/lib/libvirt/images/      #移动该文件到相应的位置
[root@foundation47 mnt]# virsh create toto.xml  #再次恢复虚拟机
Domain toto created from toto.xml             # 显示恢复成功

[root@foundation47 mnt]# virt-manager    

在这里插入图片描述
使用该方式进行恢复的虚拟机,在虚拟机关机后会自动消失,不会长久存在。
在这里插入图片描述
(3)永久恢复虚拟机

virsh define xxx.xml       #永久恢复虚拟机

操作步骤和一次性恢复一致。使用该命令虚拟机永久存在,关闭虚拟机后不会消失。
在这里插入图片描述
4 删除虚拟机

virsh undefine 虚拟机名称        #在虚拟机关闭状态下删除xxx.xml文件
rm -fr  /var/lib/libvirt/images/xxx.qcow2      #删除硬盘文件  

一般不进行删除操作。
五 使用脚本进行快速创建虚拟机
其实就是将创建虚拟机过程全部写在脚本文件中自动进行操作:

[root@foundation47 ~]# ls /opt
rh  shell
[root@foundation47 ~]# cd /opt/shell/
[root@foundation47 shell]# touch virt_install.sh      #创建脚本文件
[root@foundation47 shell]# ls 
virt_install.sh
[root@foundation47 shell]# vim virt_install.sh        #编辑脚本文件
[root@foundation47 shell]# cat virt_install.sh        #查看脚本文件内容
#!/bin/bash     # 规定运行环境
virt-install \   #命令 '\'为换行符 后面不能有空格等
--cdrom /mnt/rhel-server-7.3-x86_64-dvd.iso \    #参数,使用镜像创建虚拟机并给出镜像文件路径
--memory 1024 \      #规定内存大小 
--vcpus 1 \          # 规定cpu个数
--disk /var/lib/libvirt/images/$1.qcow2,bus=virtio,size=8 \   #规定硬盘文件以及硬盘总线类型和硬盘大小;‘$1’表示运行脚本命令后的第一串字符 此处是新建虚拟机的名字
--name $1 \    #虚拟机名称
--network model=virtio,bridge=br0     #规定设置网卡  
[root@foundation47 shell]# sh virt_install.sh  lala   #运行脚本并且新建虚拟机取名lala
[root@foundation47 shell]# WARNING  No operating system detected, VM performance may suffer. Specify an OS with --os-variant for optimal results.

Starting install...
Allocating 'lala.qcow2'                                     | 8.0 GB  00:00     
Creating domain...                                          |    0 B  00:00     

(virt-viewer:7477): GSpice-WARNING **: PulseAudio context failed Connection refused

(virt-viewer:7477): GSpice-WARNING **: pa_context_connect() failed: Connection refused

(virt-viewer:7477): GSpice-WARNING **: Warning no automount-inhibiting implementation available
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.
^C
[root@foundation47 shell]# vim virt_install.sh        #编辑脚本文件
[root@foundation47 shell]# cat virt_install.sh 
#!/bin/bash
virt-install \
--cdrom /mnt/rhel-server-7.3-x86_64-dvd.iso \
--memory 1024 \
--vcpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,bus=virtio,size=8 \
--name $1 \
--network model=virtio,bridge=br0 \
&>/dev/null   #不需要显示返回信息
[root@foundation47 shell]# sh virt_install.sh  hahaha
[root@foundation47 shell]# ^C    #无信息返回


脚本运行完之后进入安装界面,正常进行安装即可:
在这里插入图片描述
六 使用快照进行虚拟机创建。

qemu-img create -f qcow2 -b /var/lib/libvirt/images/toto.qcow2  /var/lib/libvirt/images/node1.qcow2

-f qcow2 #表示新创建的镜像文件的格式为 qcow2
-b /var/lib/libvirt/images/toto.qcow2 #指定其后端镜像文件,那么这个创建的镜像文件仅记录与后端镜像文件的差异部分。后端镜像文件不会被修改。
使用新创造出来的镜像文件创建虚拟机进行操作后,所有的操作都与原来的镜像文件无关,一旦产生异常可以删除该文件,使用源文件重新进行新建。
1 创建快照镜像文件node1.qcow2 文件
在这里插入图片描述
2 使用该文件创建虚拟机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述3 删除该虚拟机之后 仅仅是删除了node1.qcow2 文件。

七 使用脚本进行快速的使用快照进行虚拟机创建。
就是将创建qcow2格式的镜像文件以及使用该文件进行新建虚拟机的过程全部写入脚本文件中进行自动的执行。

[root@foundation47 ~]# cd /opt/shell/
[root@foundation47 shell]# ls 
kuaizhao.sh  virt_install.sh
[root@foundation47 shell]# vim kuaizhao.sh      #编辑脚本文件
[root@foundation47 shell]# cat kuaizhao.sh      #查看脚本文件内容
#!/bin/bash     #运行环境
qemu-img create -f qcow2 -b \           #创建新的镜像文件
/var/lib/libvirt/images/$1.qcow2 \      #源文件
/var/lib/libvirt/images/$2.qcow2 \      #新创造出来的文件


virt-install \
--memory 1024 \
--vcpus 1 \
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--name $2 \
--import \    #输入为空
--network model=virtio,bridge=br0    
[root@foundation47 shell]# sh kuaizhao.sh toto lele    #运行脚本使用已经存在的虚拟机toto 新建一个虚拟机lele
Formatting '/var/lib/libvirt/images/lele.qcow2', fmt=qcow2 size=8589934592 backing_file='/var/lib/libvirt/images/toto.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off 
WARNING  No operating system detected, VM performance may suffer. Specify an OS with --os-variant for optimal results.

Starting install...
Creating domain...                                          |    0 B  00:00     

(virt-viewer:9264): GSpice-WARNING **: PulseAudio context failed Connection refused

(virt-viewer:9264): GSpice-WARNING **: pa_context_connect() failed: Connection refused

(virt-viewer:9264): GSpice-WARNING **: Warning no automount-inhibiting implementation available
Domain creation completed.
[root@foundation47 shell]# 

运行成功
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值