[AHV] export VM disks to qcow2 files (怎麼匯出 qcow2 檔案?)

前言:怎麼為 VM 匯出 qcow2 檔案? 備份或是其他理由都好。

GUI 裡面提供嗎? 沒有 GUI 用 CLI 更快呀。

可以有效率的方式完成嗎? 目前來看,scripting 自動化是最佳的方式,這是一個重覆動作。

只要適當的運用 qemu-img cli 就可以了,以下的例子是把輸出丟到某個 NFS Server 上,並且還支援多 vdisk 喔 (但要修改 script 配合要求)。


 

#!/bin/bash
#
#
# setup NFS path 把 NFS Server 與 Path 設定正確
# exports file 我是全開都可讀寫 (rw,sync,all_squash)
#
nfs="10.42.93.231/var/nfsshare"
#
#
#

# you can change here to export all disks 這邊二行的意思是只處理 disk 0 還是全部都處理
for((i=0;i<${#diskuuid[@]};i++));
#for((i=0;i<1;i++));
do
qemu-img convert -f raw -O qcow2 -c nfs://127.0.0.1/$cntr/.acropolis/vmdisk/${diskuuid[$i]} -O qcow2 nfs://${nfs}/${vmname}-${i}-`date +%Y%m%d%H%M`.qcow2 &
done


我把原始 script 放在這裡下載
https://drive.google.com/open?id=173Jg7VFr4F6EaxZd9RakT3QnHN3TfJfX

這支 script 不收費,給有緣人。套句某名人說的:source code is your friend.

此版本加了不少防呆。
一方面檢查 VM 是不是存在,還有 VM 名字裡有空白字元也處理了 (@@請不要用空白字元呀)

放到任何一台 CVM 就可以執行。要改成 Web Service 也不是難事,靠你自己囉。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s