#!/bin/bash
# kvm 虚拟化部署创建虚拟机,mstsc 链接centos桌面
# 开发商:小绿叶技术博客 eisc.cn
wget www.eisc.cn/file/shell/centos-yum.sh ; sh centos-yum.sh
# 切换yum 源
grep -E '(vmx|svm)' /proc/cpuinfo ** # 查看cpu是否支持虚拟化
yum install -y qemu-kvm libvirt virt-install bridge-utils virt-* qemu-img
# 安装qemu-kvm(用户态管理工具),libvirt(命令行管理工具)
# virt-install(安装kvm工具),bridge-utils(桥接设备管理工具
modprobe kvm ; modprobe kvm-intel ; lsmod |grep kvm
# 启动kvm列出KVM模块
systemctl enable libvirtd ; systemctl start libvirtd ; systemctl status libvirtd
# enable 加入开机启动,启动libvirtd服务,状态
#---- 获取网卡信息 -----#
eth=$(ip a| grep "BROADCAST" | awk -F ":" 'NR==1{print $2}' | sed "s/ //g") ; echo "网卡名为:"$eth ;
# 命令 ip a 查看网卡 过滤;BROADCAST [ˈbrɔːdkɑːst] >广播;字段的行
# awk -F ":" 以冒号为分隔符 ; 选择第一行,第二列,sed删除空格
# 符号 ; 分号表示第一条命令结束,第二条开始
ethCatalog=$(find / -name "*$eth" | grep "/etc/" | grep $eth | sed "s/ //g" ) ; echo " 网卡路径为:" $ethCatalog
# find 查找网卡名称的路径,grep 过滤/etc 目录下网卡名称。sed删除空格
ip=$(cat $ethCatalog | grep IPADDR | awk -F "=" 'NR==1{print $2}' | sed "s/ //g") ; echo "IP地址为: " $ip
# 查看网卡文件,过滤IPADDR的行,awk -F"=" 分隔符是等于符号,打印第一行第二列
#-------------------#
cp $ethCatalog $ethCatalog-br0 # 复制网卡为桥接网卡名字
sed -i "s/NAME.*/NAME=$eth-br0/g" $ethCatalog-br0
sed -i "s/DEVICE.*/DEVICE=$eth-br0/g" $ethCatalog-br0
sed -i "s/TYPE.*/TYPE=Bridge/g" $ethCatalog-br0
sed -i "s/BOOTPROTO.*/BOOTPROTO=static/g" $ethCatalog-br0
sed -i "/UUID/d" $ethCatalog-br0 # 删除网桥网卡mac 否则冲突
# 修改桥接网卡信息:名字,类型
sed -i "s/BOOTPROTO.*/BOOTPROTO=dhcp/g" $ethCatalog
sed -i "/BRIDGE/d" $ethCatalog
echo "BRIDGE=$eth-br0" >> $ethCatalog
# 修改原网卡,dhcp 自动获取。none static 为手动,共享到网卡
sed -i "/IPADDR/d" $ethCatalog
sed -i "/NETMASK/d" $ethCatalog
sed -i "/GATEWAY/d" $ethCatalog
sed -i "/DNS/d" $ethCatalog # 清空原网卡信息
yum install -y net-tools # ifconfig 命令需要这个包
# 添加 dns 解析,linux centos 能 ping 通 ip ,ping网站网址地址不通,无法解析域名
echo "
nameserver 223.5.5.5
nameserver 8.8.8.8
" > /etc/resolv.conf
#------- 删除virbr0 -------#
brctl show # 查看网桥
virsh net-list # 查看网络:有默认的 default 网络
virsh net-destroy default # 删除默认网络
virsh net-undefine default # 取消默认网络定义
systemctl restart libvirtd.service
brctl show # 查看已经被删除
#---------------------------#
wget www.eisc.cn/file/shell/centos-mstsc.sh ; sh centos-mstsc.sh
# 安装图形桌面,windows 系统可以通过 mstsc 来连接centos桌面,默认端口3389
yum -y install virt-manager # 安装virt-manager 虚拟化管理
# 通过 mstsc 进入centos 桌面 【运用程序---系统工具---虚拟系统管理器---创建虚拟机】
### 1.服务器端配置 中文 utf8 语言 ###
yum groupinstall -y "fonts" # groupinstall 安装软件并安装依赖
yum install -y kde-l10n-Chinese # 安装中文语言包
# yum install *Chinese # 或者安装所有Chinese的包
sed -i 's/LANG=.*/LANG="zh_CN.UTF-8"/g' /etc/locale.conf
# 修改为中文,/g 作用于双引号不被解析
source /etc/locale.conf # 立即生效
locale # 查看安装的编码
date # 显示时间,看是否为中文显示
reboot # 重启, # halt 关机
# centos7 更新同步时间
yum install -y ntpdate # 安装工具
ntpdate -u cn.pool.ntp.org # 同步时间
timedatectl set-timezone Asia/Shanghai # 设置区域
systemctl start ntpd # 启动时间
systemctl enable ntpd # 开机启动:自动同步
安装kvm: https://www.cnblogs.com/yuezhimi/p/10272738.html
命令创建kvm虚拟机:https://www.cnblogs.com/fjping0606/p/9845368.html