什麼是 Xen Shell?
Xen Shell 是 Xen 虛擬化平台提供的管理控制介面,運行於宿主機 (Dom0),允許 VPS 使用者在無法透過 SSH/RDP 連入客體系統時 (如系統掛起、核心恐慌、網路配置錯誤),執行電源管理、主控台連線、狀態查詢等操作。類似於實體伺服器的 IPMI/iDRAC/iLO 功能。
連線與登入
- 取得 宿主機 IP (非 VPS 自身 IP),向服務商索取
- 使用 SSH 客戶端連線:
ssh xen@宿主機IP 或 ssh 你的VPS用戶名@宿主機IP
- 輸入 Xen Shell 專用密碼 (通常與 VPS 根密碼不同,服務商提供)
介面與核心指令完整參考
| 指令 | 功能 | 適用狀態 | 備註 |
boot | 啟動 VPS | 關機狀態 | 冷開機 |
console | 連接 VPS 主控台 (相當於螢幕鍵盤) | 運行中 | Ctrl+] 退出回 Xen Shell |
exit / quit | 離開 Xen Shell | 任何 | 斷開 SSH 連線 |
help [cmd] | 顯示幫助 | 任何 | 帶參數查看指令詳情 |
passwd | 修改 Xen Shell 登入密碼 | 任何 | 建議首次登入即修改 |
pause | 暫停 VPS (凍結 CPU、記憶體狀態) | 運行中 | 非關機,unpause 即時恢復 |
reboot | 重啟 VPS (ACPI 關機信號 → 開機) | 運行中 | 優雅重啟 |
serial | 同 console | 運行中 | 別名 |
shutdown | 關機 VPS (ACPI 關機信號) | 運行中 | 優雅關機 |
status | 顯示 VPS 當前狀態 | 任何 | running/paused/shutdown 等 |
sysreq | 發送 SysRq 魔術鍵組合 | 運行中 | 如 sysreq s (同步磁碟)、sysreq b (強制重啟) |
top | 顯示宿主機資源使用 (含其他 VPS) | 任何 | 通常被服務商屏蔽 |
unpause | 恢復暫停的 VPS | paused | 瞬間恢復,無開機過程 |
uptime | 顯示宿主機與 VPS 運行時間 | 任何 | |
version | 顯示 Xen Shell 版本 | 任何 | |
whoami | 顯示當前登入帳號 | 任何 | |
實戰操作流程範例
場景 1:VPS 當機無法 SSH,需強制重啟
ssh xen@host-ip
# 輸入密碼
Xen Shell> status
# 顯示 running 但無回應
Xen Shell> reboot
# 或強制:sysreq b
Xen Shell> status
# 確認重新 running
Xen Shell> console
# 進入主控台觀察開機過程
# Ctrl+] 退出
Xen Shell> quit
場景 2:網路配置錯誤導致無法連線,需進主控台修復
Xen Shell> console
# 進入 VPS 終端機介面
# 登入系統
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 修正 IP/閘道
# systemctl restart network
# Ctrl+] 退回 Xen Shell
Xen Shell> quit
場景 3:核心恐慌需擷取錯誤資訊
Xen Shell> console
# 觀察螢幕錯誤訊息、拍照記錄
# 若系統完全凍結
Xen Shell> sysreq s # 同步磁碟
Xen Shell> sysreq u # 重新掛載唯讀
Xen Shell> sysreq b # 強制重啟
安全退出規範 (必讀)
- 若已進入
console,務必先按 Ctrl+] 退回 Xen Shell
- 再輸入
quit 或 exit 斷開 SSH 連線
- 直接關閉 SSH 視窗可能導致主控台 session 殘留,影響後續連線
常見問題
| 問題 | 解決 |
| 忘記 Xen Shell 密碼 | 聯繫服務商重置,通常在控制台有「重置 Xen Shell 密碼」功能 |
console 顯示亂碼/無回應 | 嘗試 serial、調整終端機編碼 (UTF-8)、檢查 VPS 核心參數 console=hvc0 |
top 被屏蔽 | 正常,服務商為保護其他客戶隱私通常停用此指令 |
無法 boot (提示已運行) | 先 shutdown 或 sysreq b 強制關機再 boot |
進階:Xen Shell 腳本自動化
# 期望透過 SSH 非互動模式執行
ssh xen@host-ip "reboot"
# 或批次管理多台
for host in host1 host2 host3; do
ssh xen@$host "status"
done
需配置 SSH 金鑰認證,避免密碼互動。
核心價值:Xen Shell 是最後一道救命稻草。當 VPS 作業系統掛掉、網路斷開、防火牆誤封時,它是唯一不依賴客體 OS 網路堆疊的管理入口。熟練掌握 console、sysreq、reboot 三大指令,關鍵時刻能省下數小時工單等待時間。