這是一個用於快速重設和初始化 Ubuntu 虛擬機(VM)的 Bash 腳本。它能自動化處理網路設定、主機名稱變更以及系統唯一識別碼的重設,特別適用於從範本複製或大量部署 VM 後的初始設定。
- 互動式設定:透過簡單的問答引導,輕鬆完成所有設定。
- 網路組態:支援 DHCP 或靜態 IP 的設定,並自動生成 Netplan 設定檔。
- 系統識別碼重設:
- 安全地重新生成 SSH 主機金鑰。
- 重設
machine-id,避免在複製的 VM 中出現重複 ID。
- 狀態清理:清理
cloud-init的狀態和舊的 udev 網路規則。 - 安全性:
- 內建錯誤處理機制,任何步驟失敗都會立即停止腳本。
- 在執行任何變更前,會顯示設定總覽並要求使用者最終確認。
- 自動備份現有的 Netplan 設定檔。
- 輸入驗證:驗證使用者輸入的網路參數格式,提高可靠性。
您可以直接透過 curl 下載並執行此腳本。請在您的 Ubuntu VM 終端機中執行以下指令:
curl -fsSL https://raw.githubusercontent.com/leonoxo/reset_vm/main/reset_vm_ubuntu.sh | sudo bash腳本將會開始執行,並引導您完成後續的設定步驟。
- 需要 Sudo 權限:此腳本需要
sudo權限來修改系統層級的設定檔和服務。 - 將會重新啟動:為了套用所有變更,腳本在成功執行完所有任務後,會自動重新啟動您的系統。
- 僅適用於 Ubuntu:此腳本主要針對使用 Netplan 進行網路管理的 Ubuntu 系統設計。