天天看點

linux centos 安裝 kvm 并建立虛拟機

#!/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




           

繼續閱讀