當前位置:首頁 » 編程軟體 » 虛擬機玩什麼腳本

虛擬機玩什麼腳本

發布時間: 2023-08-05 11:55:51

linux初學之安裝虛擬機,寫幾個簡單腳本,實

1、准備鏡像(輸入cat /etc/redhat-release可以查看redhat版本) #輸入uname -r可以查看linux系統版本

根據查看的版本去網上下載相關資源。例如本機是7.2.

2、輸入virt-manager進入虛擬機控制平台

點擊小電腦圖標

我們選擇第一個選項(通過iso image或者光碟進行安裝)

然後找到剛剛下載好的鏡像。

名字和內存都隨自己更改。

3、更改時區,語言,安裝方式(真機須選3個關於虛擬化的選項)。

時區選擇上海即可

加入中文簡體

一般選擇最後一個,安裝一些必要的程序即可。

4、分區(建議自動分區,然後修改分配容量)
(1)/boot ---啟動分區,200M即可,太大沒有什麼作用
(2)/swap ---交換分區,當內存容量大於內存80%時,把多餘的放進硬碟,待內存降下來之後,又放回內存,建議分區大小為物理內存1.5~2倍,8G可設12G。

(3)/ ---其餘分區皆為即可。

接下來等待安裝即可。
二 創建腳本安裝虛擬機
在 /usr/sbin/建立一個Create_Vm.sh
chmod +x Create_Vm.sh ---加可執行許可權
加&在後台運行,不加在前台(創建虛擬機)
#!/bin/bash
virt-install \
--name $1 \
--ram 1024 \
--file /var/lib/libvirt/images/$1.qcow2 \
--file-size 8 \
--cdrom /home/kiosk/Desktop/rhel-server-7.2-x86_64-dvd.iso \
--vcpus 1 &

寫入如下腳本:

如果是無圖形界面則依次輸入12cc即可

xml ---可擴展標記語言 ,封裝數據
模擬拷貝虛擬機
1 cd /etc/libvirt/qemu/ ---進入虛擬機目錄
2 ls ---顯示該目錄文件項
3 cp node1.xml /mnt/ ---復制(發送)前端文件(硬體相關信息)到目標主機
4 cd var/lib/libvirt/images/ ---進入到虛擬機硬碟所在目錄
5 ls

6 mv node1.qcow2 /mnt/ ---復制硬碟到目標主機
7 virsh undefine node1 ---刪除原有虛擬機(在復制到其他機器上忽略此步驟)
8 mv /mnt/node1.qcow2 /var/lib/libvirt/images/ ---復制硬碟到虛擬機默認硬碟所在目錄

9 virsh define node1.xml ---創建復制虛擬機
9 virsh create node1.xml ---打開復制過來的虛擬機,關閉之後在manager會消失
打開虛擬機相關命令:
virsh list ---顯示當前正在運行的虛擬機

virsh list --all ---顯示所有虛擬機
virsh start node1 ---打開虛擬機
virt-viewer node1 ---顯示圖形界面
virsh shutdown node1 ---正常關機

virsh destroy node1 ---強制關機
剩下就不一一列舉了

三 虛擬機快照:(以安裝node1為例)
1、 cd /var/lib/libvirt/images/ ---進入新安裝的虛擬機的硬碟目錄
2、 在虛擬機管理界面delete 新安裝的虛擬機node1,記得不要刪除其硬碟文件,留下其硬碟文件,可以母盤,下面是為了防止以後手殘更改了母盤文件導致其他虛擬機不能用。

3、 mv node1.qcow2 vm_storage.qcow2 ---更改源硬碟文件名,名字可以自行確定
4、 qemu-img create -f qcow2 -b vm_storage.qcow2 newname.qcow2 ---創建新快照。
5、虛擬機管理界面添加新機即可。

選擇第四個,然後改名字即可。

新機就建立完成。
四 腳本:

1)只添加虛擬機其餘自己操作的腳本:Create_Vm.sh
#!/bin/bash
virt-install \
--name $1 \
--ram 1024 \
--file /var/lib/libvirt/images/$1.wcow2 \
--file-size 8 \
--cdrom /home/kiosk/Desktop/rhel-server-7.2-x86_64-dvd.iso \
--vcpus 1 &
這個腳本上邊已經有詳細過程。
2)添加帶磁碟的虛擬機腳本:創建快照,添加快照,安裝 Createvm.sh
#!/bin/bash
qemu-img create -f qcow2 -b /var/lib/libvirt/images/vm_storage.qcow2 \
/var/lib/libvirt/images/$1.qcow2 &> /dev/null

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

3)重置虛擬機腳本:Resetvm.sh
#!/bin/bash
virsh destory $1 &> /dev/null
rm -rf /var/lib/libvirt/images/$1.qcow2
qemu-img create -f qcow2 -b /var/lib/libvirt/images/vm_storage.qcow2 \
/var/lib/libvirt/images/$1.qcow2 &> /dev/null
echo Successfully!!!
virsh start $1 &> /dev/null
virt-viewer $1 &> /dev/null &

sh -x 命令 ---一步一步安裝,若出錯,報告出錯過程

⑵ shell腳本編程是什麼,它的性質 怎麼在虛擬機上運行呢

就是把一連串的shell命令編成腳本,自動執行這些命令。只要在虛機上安裝linux、windows等操作系統,各系統都有自己的shell命令

⑶ 在虛擬機下 編寫三個shell腳本

1

#!/bin/bash

[$#-ne1]&&echo"usage:$0filename"&&exit-1

read-p"entercount:"count

i=1
while[$i-le$count]
do
date=`date-d"$idays"+"%Y%m%d"`
>$1_${date}
i=$(($i+1))
done

2

#!/bin/bash

if[$#-ne1];then
echo"usage:$0file1"
exit-1
fi

if[-e$1];then
now=`date+"%Y%m%d%H%M%S"`
mv$1$1_${now}
fi


awk-F':''{print$1}'/etc/passwd|grept>$1

3. 確保user.txt和pass.txt格式正確嗎?

user.txt :

user:passwd:UID:GID::/home/user:/bin/bash

pass.txt:

user:newpasswd

#!/bin/bash
if[$#-ne2];then
echo"usage:$0user_filepasswd_file"
exit-1
fi
read-p"inputaction[add/del]:"act
case$actin
"add")
newusers$1
cat$2|chpasswd
;;
"del")
forusrin`awk-F':''{print$1}'$1`
do
userdel$usr
done
;;
*)echo"ERRORFLAG";;
esac
熱點內容
中國彩票的網是什麼密碼 發布:2025-03-21 07:25:06 瀏覽:441
蘋果稅與安卓哪個收費更狠 發布:2025-03-21 07:17:52 瀏覽:294
通過一個ip訪問兩台伺服器嗎 發布:2025-03-21 07:06:12 瀏覽:522
怎麼讓伺服器查不到我的ip地址 發布:2025-03-21 07:05:27 瀏覽:184
編譯器有什麼用 發布:2025-03-21 07:00:24 瀏覽:78
android百度雲盤 發布:2025-03-21 06:59:47 瀏覽:261
青雲存儲 發布:2025-03-21 06:50:03 瀏覽:403
王者榮耀有腳本嗎 發布:2025-03-21 06:50:00 瀏覽:806
c語言代碼運行 發布:2025-03-21 06:49:17 瀏覽:560
python打開文件夾下所有文件 發布:2025-03-21 06:44:34 瀏覽:951