Linux虚拟机的添加,删除,恢复,备份。

virt,virsh,.xml,.qcow2


今天给大家介绍以下linux下的虚拟机的添加,删除等。

首先介绍以下虚拟机

    对于虚拟机专业术语是这样定义的:虚拟机(英文全称:Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,目前流行的虚拟机软件有VMware(VMWare ACE)、Virtual Box和Virtual PC。

   通俗的说,虚拟机是将一台计算机虚拟化实现一台计算机具备多台计算机的功能,但整机性能也会被各个虚拟机所分配划分,因此划分虚拟机越多,各个虚拟机所分配的CPU、内存、存储空间资源也越少,因此组建虚拟机通常是配置越高越好,因此广泛使用于服务器等行业。


接下来介绍以下虚拟机安装的相关知识。


1.建立虚拟机:

主要有两种方式,图形界面创建和通过建立脚本文件建立。


(I)图形方式:


在超级用户下,在shell中执行virt-manager,显示如下:显示本机虚拟机情况

(1)点击左上角金色小星星建立新的虚拟机

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_virt/virsh


(2)选择Local install media(ISO inage or CDROM),(选择本地安装媒体)

         然后Froward,选定。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_virt/virsh_02


(3)选择Use ISO image (使用ISO映像),选择本机映像文件

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_03


(4)进行存储大小和CPU设置

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_04

(5)设置硬盘大小

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.xml_05

(6)设置虚拟机名称

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_06

(7)执行完毕显示如下

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_07

(8)Install Red Hat Enterprise Linux 7.0                                     安装RHEL 7.0
        Test this media & install Red Hat Enterprise Linux 7.0        检测媒体环境后进行安装
        Troubleshooting                                                                   发现并修理故障,解决纷争

 选择直接安装RHEL 7.0

(9)选择安装时的语言

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_virt/virsh_08

(10)进行系统信息配置:时区,系统语言,键盘类型,文件安装源,软件选择,安装设置。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.xml_09

LOCALIZATION:本地化设置

DATE&TIME:选择系统时间和时区;

KEYBOARD: 选择键盘类型;

LANGUAGE SUPPORT:选择系统支持的语言。

SOFTWARE:软件设置

INSTALLATION SOURCE:选择媒体安装源;

SOFTWARE SELECTION:软件的选择

SYSTEM:系统设置

INSTALLATION DESTINATION:安装目的地(对系统磁盘进行划分);

NETWORK & HOSTNAME:网络和主机名。

注:主要强调分盘问题

选择标准化分区(Standard Partition)

后点左下角添加分区,进行分配。

      添加/boot目录,进行分配,小于300M则无法进行图像化,也就是建立的虚拟机没有X-windos界面

      swap分区作用:用来存放当前系统无法立即执行的程序的数据,在空闲后进行调用。

      /剩余的分配给/下文件目录。

其他的分配依用户需求而定。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_10

   

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_11

(11)设置完成后,选择右下角Begin Installation

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_12

等待读条时设定如下信息:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_13

(12)设定超级用户密码和进行用户添加

设定超级用户密码:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_14

添加用户:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_virt/virsh_15

(13)安装完后,选择Reboot进行最后选择。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_16

进行协议同意:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_17

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_18

完成后进行下一步。

进行默认选择:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_19

选择是否进行系统注册:

选择后续进行注册。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_20

选择完成后,进行用户登录

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_21

设置系统语言:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_22

选择输入源语言:

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_23

完成安装!!!


(II)通过脚本文件进行添加:(脚本执行过程,由上到下)



         建立脚本文件touch /mnt/test.sh

         赋予执行权限chmod +x /mnt/test.sh


         编辑:vim /mnt/test.sh

         

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_24

                            #!/bin/bash                        ##非注释,翻译,表示/bin/bash为父进程

             virt-install \                        ##虚拟机建立

             --cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso  \       ##镜像源

             --ram 1024 \                     ##随机存储大小

             --cpus 1 \                         ##CPU个数

             --disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio   \  ##硬盘文件所在地,类型,大小,bus硬盘类型

             --name $1 \                      ##虚拟机名

             --network source=br0,model=virtio &   ##网络源,模式,‘&’让创建在后台运行


注:$1 脚本后所跟的第一串字符,$1 传参变量:将脚本外部的内容,传到内部,如果运行脚本的时候带参数,那么可以在脚本里通过 $1 获取第一个参数,$2 获取第二个参数......依此类推,一共可以直接获取9个参数(称为位置参数)。$0用于获取脚本名称。

                        此处$1跟的是要创建的虚拟机的名称。

执行脚本文件之后和图形界面创建相同选择:

     

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_25




介绍几个与虚拟及相关的指令:

注:需要以超级用户的身份执行以下命令。

virsh list --all                  列举所有已安装虚拟机


virsh start desktop        开启虚拟机

virt-viewer desktop       显示虚拟机

virsh destory desktop   关闭虚拟机     



2.虚拟机快照:




所谓“虚拟机快照”:盘“快照”是虚拟机磁盘文件(VMDK)在某个点及时的复本。系统崩溃或系统异常,你可以通过使用恢复到快照来保持磁盘文件系统和系统存储。当升级应用和服务器及给它们打补丁的时候,快照是救世主。VMware快照是VMware Workstation里的一个特色功能。


可通过快照进行对虚拟机进行更改,通俗的讲类似于我们打游戏的存档差不多。



虚拟机管理有两个文件

硬盘文件: .qcow2    存放在:/var/lib/libvit/images/xx.qcow2

硬件信息文件.xml       存放在:/etc/libvirt.qemu/xx.xml


对虚拟机进行快照也有两种方式:

(一)图像形式


分两步:

I.制作快照

II.导入虚拟机

执行:qemu-img create -f qcow2 -b lin.qcow2 lin-photo1.qcow2  注:此命令是在/var/lib/libvirt/images/进行的


 create -f    创建新磁盘映像文件名的大小和格式fmt。根据文件格式,可以添加一个或多个选项。启用该格式的其他特性。

-b 后跟着已有的虚拟机的硬盘文件和快照的文件名称。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_26

可以在/var/lib/libvirt/images/ 下查看创建好的文件。

ls /var/lib/libvirt/images/

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_27

可看到建立好的文件,lin-photo.qcow2

后执行virt-manager,与创建虚拟机同,只是选择不同。

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.xml_28

 (1)选择Import existing disk image,(导入现有的磁盘映像)导入上述命令建立的.qcow2文件

后Froward

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_29

 (2)选择Use ISO image (使用ISO映像),选择本机映像文件

 (3)进行存储大小和CPU设置

 (4)设置硬盘大小


 (5)设置虚拟机名称

完成后,就建立好了镜像虚拟机,可在里进行操作。

(二)建立脚本文件

建立脚本文件,并赋予执行权限。

touch /mnt/vm_snapshot.sh

chmod +x /mnt/vm_snapshot.sh

vim /mnt/vm_snapshot.sh

  1 #!/bin/bash

  2 qemu-img create -f qcow2 -b \

  3 /var/lib/libvirt/images/$1.qcow2 \

  4 /var/lib/libvirt/images/$2.qcow2                                        执行创建虚拟机相片的硬盘文件;

  5                                                                                         其中$1:后跟已存在虚拟机名称

  6                                                                                                $2:后跟虚拟机“相片”名称;

  7 virt-install \

  8 --name $2 \                                                                                    

  9 --cpus 1 \

 10 --ram 1024 \

 11 --disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \

 12 --network source=br0,model=virtio \                               与创建虚拟机编辑的内容相同;

 13 --import &                                                                        将文件导入。

后执行sh /mnt/vm_snapshot.sh  $1 $2                                      


centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_30

执行后结果如下,后进行操作。


centos虚拟机中怎么删除文字 linux虚拟机怎么删除_centos虚拟机中怎么删除文字_31


3.对虚拟机进行备份:



为了防止出现误删虚拟机或操作失误等情况,可对虚拟机进行备份。

上面介绍过虚拟机管理有两个文件

硬盘文件: /var/lib/libvit/images/xxx.qcow2

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_32

硬件信息文件: /etc/libvirt.qemu/xxx.xml

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_33


对虚拟机的硬盘文件和硬件信息文件进行备份:

    cp /etc/libvirt/qume/lin.xml  /mnt


    cp /var/lib/libvirt/images/lin.qcow2 /mnt

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_34

备份完成啦,万事具备,若是出现意外,可以及时恢复虚拟机。

若是不小心误删除虚拟机


可执行: virsh create lin.xml:临时恢复

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_virt/virsh_35

               查看:ls /etc/libvirt/qemu/

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_36

可发现没有创建虚拟机lin的.xml文件,在关闭后虚拟机消失。

若想永久恢复,可执行:virsh define lin.xml  :永久恢复

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_.qcow2_37

               后可观察下述目录:  

               ls /etc/libvirt/qemu/

               ls /var/lib/libvirt/images/


 

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_38

centos虚拟机中怎么删除文字 linux虚拟机怎么删除_虚拟机_39

可看到lin.xml文件被创建,虚拟机永久恢复。