linux012虚拟机安装

虚拟机操作
kvm 核心组件 要求cpu支持全虚拟化功能
查看cpu信息
cat /proc/cpuinfo

linux012虚拟机安装
也有svm
qemu-img  管理虚拟机存储
qemu-kvm  核心组建

 

一  下面进行安装虚拟机操作

linux012虚拟机安装

linux012虚拟机安装

iso通过镜像
HTTP通过网络
PXE网络安装环境(插网线装)
import 时导入步骤(已经安装好的虚拟机)
现在选择第一个 iso

linux012虚拟机安装

linux012虚拟机安装

linux012虚拟机安装

 

linux012虚拟机安装


至少给768M内存才能开启图形界面  内存和cpu缓存是存储设备
硬盘是 io设备 安装图形界面不能少于5G  
名字不能包含空格

linux012虚拟机安装

linux012虚拟机安装

ctrl+alt 可以显示出鼠标 (在虚拟机安装界面当中)
安装过程的系统是预安装系统的环境
第一个安装
二 检测完整性再安装
三 挽救模式

linux012虚拟机安装

linux012虚拟机安装

linux012虚拟机安装

 

 

一般选择英文  中文翻译有出入
minimal install 最简安装无图形界面

linux012虚拟机安装

server with GUI 带图形界面的服务器

 

三个virt...是带有虚拟机的服务  虚拟机不用选

linux012虚拟机安装

自动、手动分区
选择standard partition 标准分区
左下角有+-号  选择+号  添加分区

linux012虚拟机安装

linux012虚拟机安装


 /boot 启动  200M就行
 swap  虚拟交换分区 作为内存交换空间 (鼠标动不了之类的是该区空间已经满了)
swap一般是物理内存1.5-2-4倍  内存越大 业务越多 一般

可以给500m
(/dev/shm  内存所在位置)

/分区 不能小于4G   如果不写多少空间 就把剩余的空间全给了

linux012虚拟机安装
然后在  最小安装下寻则图形界面安装 不是非图形界面

linux012虚拟机安装
kdump 是备份  现在还不作

linux012虚拟机安装

linux012虚拟机安装

安装过程中要设定root用户密码

linux012虚拟机安装

linux012虚拟机安装linux012虚拟机安装

然后可以正常使用了

linux012虚拟机安装

二 下面建立自动创建虚拟机的脚本

脚本结尾后加& 在后台运行
出现没用的字符  加入重定向  &> /dev/null 再加 &打入后台

建立 sss.sh
输入
#!/bin/bash
virt-install \                                                                                虚拟机安装命令
--cdrom /home/kiosk/Desktop/rhel-server-7.2-x86_64-dvd.iso \      镜像地址
--vcpus 1 \                                cpu操作
--memory 1000 \                         分配内存
--disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \                       设置生成的qcow2数据包  大小  和总线为虚拟
--name $1 \                                                                                                 自己输入名字
--network source=br0,model=virtio &> /dev/null &                               网卡设置  还有网卡类型是虚拟的   重定向   打入后台

\是换行  不影响语句连接  $1 是在运行脚本时输入你想要的名字

以上是可以命名的一个shell   用法 sh  sss.sh  当前目录下的shell
  加上你想要的虚拟机名字就可以    
 或者绝对路径就不用加 sh  直接运行脚本  要修改和执行需要给权限  chmod 777   或者 +x

linux012虚拟机安装

linux012虚拟机安装

 

虚拟机管理

virt-manager  呼唤虚拟机操控界面

linux012虚拟机安装

virt-viewer XXX 查看虚拟机
virsh start XXX  开启虚拟机
virsh  shutdown  XXX  正常关闭虚拟机
virsh  destroy  XXX  强制关闭虚拟机
virsh list    列出运行的虚拟机
virsh list --all 列出所有虚拟机

linux012虚拟机安装linux012虚拟机安装

如何将一台虚拟机拷贝   
首先明确有多少文件
html 超文本编辑语言
xml  可扩展编辑语言
数据封装
.qcow2   是所有虚拟机系统文件linux012虚拟机安装

将.xml .qcow2 考进去就可以   不建议拷贝到/etc/libvirt/qemu/和/var/lib/libvirt/images/下 操作会删掉
然后  virsh create XX.xml
virsh  define XX.xml     恢复删除的硬件管理(添加文件到了/../qemu/下)
virsh  undefine  XX(没有.xml)  只是删除硬件管理(它删掉了/../qemu/下的XX.xml)  虚拟机文件还在

如果你想拷贝别人的虚拟机 
将对应的文件放到对应的位置
scp [email protected]:/var/lib/libvirt/images/SSS.qcow2 /var/lib/libvirt/images/
scp [email protected]:/etc/libvirt/qemu/SSS.xml /etc/libvirt/qemu/

然后就可以直接virsh create SSS.xml   SSS为你想要拷贝的虚拟机

 

镜像文件
qemu-img create -f qcow2 -b /var/lib/libvirt/images/X.qcow2 /var/lib/libvirt/images/XX.qcow2

将  X 镜像为XX 的数据封装文件  但是XX 实际大小很小 虽然显示的大小和X 一样

 

linux012虚拟机安装

linux012虚拟机安装

 

linux012虚拟机安装linux012虚拟机安装linux012虚拟机安装
下面是脚本 明白原理后直接用脚本进行操作是我们的最终目的
#!/bin/bash
qemu-img create -f qcow2 \
 -b /var/lib/libvirt/images/XXX.qcow2 \
/var/lib/libvirt/images/node1.qcow2

virt-install \
--name node1 \
--ram 1024 \   #内存另一种写法
--vcpus 1 \
--network source=br0,model=virtio \
--disk  /var/lib/libvirt/images/node1.qcow2,bus=virtio \
--import  &> /dev/null &  #导入并且打入后台


该内容只能一次


下面
#!/bin/bash
qemu-img create -f qcow2 \
 -b /var/lib/libvirt/images/$1.qcow2 \
/var/lib/libvirt/images/$2.qcow2  &> /dev/null #不显示信息重定向

virt-install \
--name $2 \
--ram 1024 \   #内存另一种写法
--vcpus 1 \
--network source=br0,model=virtio \
--disk  /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--import  &> /dev/null &  #导入并且打入后台

这下可以了

避免删注释
#!/bin/bash
qemu-img create -f qcow2 \
-b /var/lib/libvirt/images/$1.qcow2 \
/var/lib/libvirt/images/$2.qcow2

virt-install \
--name $2 \
--ram 1024 \
--vcpus 1 \
--network source=br0,model=virtio \
--disk  /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--import  &> /dev/null &

 

linux012虚拟机安装linux012虚拟机安装


用命令彻底删除一个虚拟机
1 virsh destroy XX
2 virsh undefinde XX
3  rm -fr var/lib/libvirt/images/X.qcow2

这样才能释放真正的空间