---
# System prepended metadata

title: Machine Image 實作
tags: [GCP實作]

---

# Machine Image 實作

###### tags: `GCP實作`

## :rocket: 1: Machine Image 建立與使用

### Step1: 創建一台VM

![](https://i.imgur.com/qGjg0yY.png)
![](https://i.imgur.com/TQ4GgHU.png)
![](https://i.imgur.com/yVijXsm.png)
![](https://i.imgur.com/dgL60Id.png)
![](https://i.imgur.com/NZVb4Zj.png)

### Step2: SSH連進去
加上一些檔案

1. 安裝git
![](https://i.imgur.com/nevzWex.png)

2. 確認有安裝
![](https://i.imgur.com/fpTOS1V.png)

3. sudo lsblk -p
![](https://i.imgur.com/oloPiiV.png)

4. 創一個資料夾
mkdir mydata

5. 看硬碟 /dev/sdb目前格式化的狀況
sudo file -s /dev/sdb
![](https://i.imgur.com/XKUqSGC.png)
可以看到目前還是data 所以要先進行硬碟格式化

6. 做硬碟格式化
sudo mkfs -t xfs /dev/sdb![](https://i.imgur.com/uBjroYQ.png)

7. 再重看硬碟 /dev/sdb目前格式化的狀況
sudo file -s /dev/sdb
![](https://i.imgur.com/UwXtyTl.png)
可以看到目前的file system已經變成 XFS

8. 進行mount
sudo mount /dev/sdb ./mydata
![](https://i.imgur.com/On4AR2h.png)
sdb已經成功mount到本地的mydata目錄

9. cd mydata 建立假檔案
sudo fallocate -l 1g fake_file
ls -lh
![](https://i.imgur.com/TnyO0A4.png)

10. 查看目前硬碟使用狀況
df -h
![](https://i.imgur.com/W42hRr9.png)
可以看到sdb mount到mydata下，且已經用了4.6G



### Step3: 回VM Console頁面

![](https://i.imgur.com/4z8gUvL.png)
![](https://i.imgur.com/kvJB5gg.png)

![](https://i.imgur.com/EkabSAG.jpg)
會備份Boot Dist & Additional Disk


### Step4: 把最初創立的VM & additional disk刪掉
![](https://i.imgur.com/ADurPwo.png)



### Step5: 用剛剛建立的image建立一個新的VM
![](https://i.imgur.com/HJ4Rcc4.png)
![](https://i.imgur.com/xJTN0DH.png)
![](https://i.imgur.com/MrnLr3D.png)
![](https://i.imgur.com/q4wbS2t.png)

可以看到：
1. Machine Type會沿用
2. Boot disk會沿用
3. Ad disk會沿用

### Step6: SSH連進去 驗證檔案是否都在

可以看到：

1. sudo git --version  git 已經安裝好了
![](https://i.imgur.com/jWH8DG4.png)

2. sudo lsblk -p
![](https://i.imgur.com/4ueGonu.png)
sda一樣式20g的開機硬碟, sdb一樣是500g額外硬碟 但現在還沒有被mount

3. 再看看/dev/sdb目前格式化狀況
sudo file -s /dev/sdb
![](https://i.imgur.com/qZcR881.png)
可以看到在先前的VM已經做過硬碟格式化，所以這邊已經是XFS格式，不用再做一次
現在只要把它mount上去即可

4. ls
![](https://i.imgur.com/Yiia26S.png)
mydate目錄已經存在

5. 執行mount
sudo mount /dev/sdb ./mydata 
![](https://i.imgur.com/cFD569o.png)

6. cd進去mydata
cd mydata
ls -lh
![](https://i.imgur.com/eNrgZsG.png)


## :rocket: 2: 資源清理
1. 刪除VM
2. 刪除Disk
3. 刪除Machine images