文件 v0.1.7

OS 初始化腳本

本頁說明支援的作業系統版本、映像來源,以及新 VM 在初始化階段執行的 sh/<os>_<version>.sh。

支援版本與映像

os version 映像來源 支援至(sh/pdvm_os.json)
debian 11 cloud.debian.org bullseye generic amd64 June 2026
12 cloud.debian.org bookworm generic amd64 June 2028
13 cloud.debian.org trixie generic amd64 June 2030
ubuntu 20.04 mirror.twds.com.tw ubuntu-cloud-images server cloudimg amd64 April 2030
22.04 同上 April 2032
24.04 同上 April 2036
rockylinux 8 dl.rockylinux.org GenericCloud-Base latest x86_64 May 2029
9 同上 May 2032
10 同上 May 2035

其他組合在 getting OS image 步驟以 unsupported ... version 失敗。

執行方式

VM 第一次可 SSH 登入後,主節點以 Cloud-Init 使用者身分登入 VM 並執行:

curl -fsSL http://<NODE_{MAIN_NODE}>:<PORT>/sh/<os>_<version>.sh | sudo bash -s <VM_ROOT_PASSWORD>

VM_ROOT_PASSWORD 為空時不帶參數,腳本改用內建值 0123456789。腳本輸出逐行轉成 SSE 事件,任一指令失敗(set -e)即視為 SSH 初始化失敗並清除 VM。

腳本內容

動作 Debian Ubuntu Rocky Linux
設定 root 密碼 ✓ ✓ ✓
停用 passwd/chpasswd 並鎖定密碼期限 ✓ ✓ ✓
切換套件來源 ftp.tw.debian.org tw.archive.ubuntu.com 啟用 EPEL
升級系統、安裝常用工具與 qemu-guest-agent ✓ ✓ ✓
語系 en_US.UTF-8 ✓ ✓ —
時區 Asia/Taipei ✓ ✓ ✓
sysctl:忽略 ICMP echo、提高 inotify 上限 ✓ ✓ ✓
建立 2G /swapfile ✓ ✓ ✓
安裝登入資訊腳本 sysinfo ✓ ✓ ✓
清除套件快取、/tmp 與日誌 ✓ ✓ ✓

腳本完成後服務會重開 VM 以套用 GRUB 與核心參數。

客製化

直接修改 sh/ 下對應檔案即可,服務每次都以靜態檔案即時提供,不需重啟。新增版本則需同時修改 internal/service/osImage.go 的支援清單與映像網址。

EN