1. 程式人生 > >linux虛擬機器的安裝和管理

linux虛擬機器的安裝和管理

先檢查cpu是否有全虛擬化功能

cat /proc/cpuinfo

flags裡顯示cpu的功能

裡面有vmx就是有
在這裡插入圖片描述

1.手動安裝虛擬機器

virt-manager

選擇左上角的電腦
在這裡插入圖片描述
選擇第一個選項,並且命名虛擬機器forward是前進的意思
在這裡插入圖片描述
在瀏覽裡選擇映象的位置,選擇本地瀏覽browse local,選好地址開啟
在這裡插入圖片描述
在這裡插入圖片描述

配置記憶體時如果要開圖形的話至少768m
在這裡插入圖片描述
配置硬碟空間時如果開圖形至少5g
在這裡插入圖片描述
設定名字
在這裡插入圖片描述
進入預安裝程式選項分別為開始安裝
第二個為檢查完整再安裝

選擇第一個開始安裝
在這裡插入圖片描述
選擇安裝語言,與系統內語言無關
在這裡插入圖片描述
完成後進入的介面如果有感嘆號的必須設定
在這裡插入圖片描述

注意SOFTWARE(軟體選擇)
在這裡插入圖片描述
選擇第六個意為帶圖形介面的伺服器

INSTALLATION DESTINATION(安裝位置)設定分割槽
在這裡插入圖片描述
打鉤是選擇對此盤做處理

Other Storage Options

partitioning下選擇自動或手動分割槽,選擇手動
在這裡插入圖片描述
進入後注意別選藍色的詞條

選擇選擇第一個標準分割槽
在這裡插入圖片描述
點+(添加掛載點)
Mount point(掛載點)選/boot

下欄選大小例如200m
在這裡插入圖片描述
swap分割槽是儲存記憶體多出的資料,等到記憶體空出來再給記憶體
在這裡插入圖片描述

/分割槽不填下一欄的話就把所有空間給他

完成點接受更改

開始安裝後會要求設定root和普通使用者的密碼,安裝完成後重啟
在這裡插入圖片描述


完成後進入一個輸入介面讓我們選授權協議,我們選1,2,c,c
在這裡插入圖片描述
進入選擇系統語言
在這裡插入圖片描述
在這裡插入圖片描述
然後選時間,在搜尋欄搜shanghai
在這裡插入圖片描述
設定普通使用者帳號密碼
在這裡插入圖片描述
完成
在這裡插入圖片描述

2.用指令碼自動安裝虛擬機器

在企業中我們可能一次要安裝幾百臺虛擬機器,手動安裝不現實,我們需要用指令碼代替人力

vim /mnt/vm_create.sh寫下

#!/bin/bash #指令碼中的直譯器
virt-install \ #安裝虛擬機器命令
–cdrom /iso/rhel-server-7.2-x86_64-dvd.iso #安裝映象所在位置
–memory 1000 \ #配置記憶體大小
–vcpus 1 \ #cpu核心數
–disk /var/lib/libvirt/images/test.qcow2,size=9,bus=virtio #硬碟位置型別和大小
–name test \ #虛擬機器名字
–network source=br0,model=virtio
#虛擬機器的網絡卡型別和工作模式
退出儲存後chmod o+x

注意換行符後不能加空格
在這裡插入圖片描述
如何在指令碼後面加上詞條讓指令碼根據詞條變化改變建立的虛擬機器名
把名稱換為$1
–disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \

–name $1 \

此時執行指令碼後程序會佔用前臺,我們需要把他切換到後臺執行在最後加&
–network source=br0,model=virtio &

不希望出現執行結果–network source=br0,model=virtio &> /dev/null &
在這裡插入圖片描述
sh vm_create.sh test執行

如果不知道virt-install後面接什麼在shell裡打

man virt-install,/example在後面找–的選項
在這裡插入圖片描述

3.虛擬機器的管理命令

virt-manager #圖形模式開啟虛擬機器管理器
在這裡插入圖片描述
virsh加以下
list #顯示正執行的虛擬機器

list --all #檢視所有虛擬機器
在這裡插入圖片描述
start desktop #開啟虛擬機器

shutdown desktop #正常關閉虛擬機器

destroy desktop #強行關閉虛擬機器

virt-viewer desktop #顯示虛擬機器
在這裡插入圖片描述

4.虛擬機器的恢復

虛擬機器的硬體資訊檔案位置/etc/libvirt/qemu/westos.xml
在這裡插入圖片描述
虛擬機器的硬碟資訊/var/lib/libvirt/images/westos.qcow2
在這裡插入圖片描述
用scp複製備份以上檔案到/mnt/
在這裡插入圖片描述
刪除westos此時westos.qcow2刪掉了
在這裡插入圖片描述
用virsh create westos.xml臨時恢復westos
此時會報錯,因為找不到westos.qcow2
在這裡插入圖片描述
我們需要移動westos.qcow2到/var/lib/libvirt/images/再恢復
在這裡插入圖片描述
成功後關閉這虛擬機發現消失了,如何永久恢復呢
在這裡插入圖片描述
virsh define westos.xml
在這裡插入圖片描述
virsh undefine westos (注意不需要加.xml)
在這裡插入圖片描述

5.虛擬機器的快照

在實際情況下我們修改虛擬機器的時候會有不可逆的錯誤操作導致嚴重後果
這時候為了安全我們需要上保險,類似於拍照,發生不可逆錯誤的時候刪掉照片就行了

命令為qemu-img create -f qcow2 -b /var/lib/libvirt/images/westos.qcow2 asd.qcow2
作用是類似給虛擬機器拍照,
在這裡插入圖片描述
完成後要手動匯入。

1選擇建立新虛擬機器,選擇第四個

2選擇瀏覽本地路徑,選中asd.qcow2,按提示點兩次前進
在這裡插入圖片描述
3修改名字
在這裡插入圖片描述
完成

這種操作重複無聊,我們需要指令碼來節省時間
#!/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 &
在這裡插入圖片描述
啟動命令為sh 1.sh westos node #前者為被拍的虛擬機器硬碟名,後者為照片名
在這裡插入圖片描述
6.虛擬機器如何掛載光碟機

實際情況下,虛擬機器會安裝一些軟體,我們需要從真機映象檔案複製到虛擬機器如果數量太大不現實,我們需要掛載光碟機

先開啟虛擬機器管理器,開啟westos選擇左上角的小燈泡
在這裡插入圖片描述
右鍵新增硬體,storage裡Device type選擇CDROM device
在這裡插入圖片描述
選擇iso檔案的路徑,點選完成

重啟電腦
在這裡插入圖片描述