本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 EC2 序列主控台進行 Amazon EC2 執行個體疑難排解
透過使用 EC2 序列主控台,您可以連接到執行個體的序列埠來疑難排解開機、網路設定和其他問題。
針對執行個體的作業系統和您在執行個體上設定的工具,使用相關指示。
先決條件
開始之前,請確定您已完成先決條件,包括設定您選擇的故障診斷工具。
(Linux 執行個體) 使用 GRUB 對執行個體進行疑難排解
GNU GRUB (GNU Grand 統一開機載入程式的簡稱,通常稱為 GRUB) 是大多數 Linux 作業系統的預設開機載入程式。從 GRUB 功能表中,您可以選擇要開機的核心,或修改功能表項目以變更核心的開機方式。這在疑難排解失敗的執行個體時非常有用。
GRUB 功能表會在開機過程中顯示。該功能表無法透過一般 SSH 存取,但您可以透過 EC2 序列主控台存取。
您可以開機至單一使用者模式或緊急模式。單一使用者模式會以較低的執行層級啟動核心。例如,它可能掛載檔案系統,但不會啟動網路,讓您有機會執行修復執行個體所需的維護。緊急模式與單一使用者模式類似,不同之處在於核心以最低的執行層級執行。
開機至單一使用者模式
-
連線到執行個體的序列主控台。
-
使用下列命令重新啟動執行個體。
[ec2-user ~]$
sudo reboot -
在重新開機期間,當 GRUB 功能表出現時,按任意鍵停止啟動過程。
-
在 GRUB 功能表中,使用方向鍵選取要開機的核心,然後按鍵盤上的
e
。 -
使用方向鍵將游標定位在包含核心的行上。該行以
linux
或linux16
開頭,取決於用於啟動執行個體的 AMI。對於 Ubuntu,兩行以linux
開頭,必須在下一個步驟中修改這兩行。 -
在該行的末尾,添加單詞
single
。以下是 Amazon Linux 2 的範例。
linux /boot/vmlinuz-4.14.193-149.317.amzn2.aarch64 root=UUID=d33f9c9a-\ dadd-4499-938d-ebbf42c3e499 ro console=tty0 console=ttyS0,115200n8 net.ifname\ s=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.she\ ll=0 single
-
按 Ctrl+X 以開機進入單一使用者模式。
-
出現
login
提示時,輸入您先前設定之密碼型使用者的使用者名稱,然後按 Enter。 -
出現
Password
提示時,輸入密碼,然後按 Enter。
開機進入緊急模式
遵循與單一使用者模式相同的步驟,但在步驟 6 中新增字詞 emergency
,而非 single
。
(Linux 執行個體) 使用 SysRq 對執行個體進行疑難排解
系統要求 (SysRq) 金鑰,有時稱為「神奇 SysRq」,可以用來在 shell 之外直接向核心傳送命令,無論核心正在執行什麼操作,都會回應。例如,如果執行個體已停止回應,您可以使用 SysRq 金鑰告訴核心當機或重新開機。如需詳細資訊,請參閱 Wikipedia 中的神奇 SysRq 金鑰
您可以在以 EC2 序列主控台瀏覽器為基礎的用戶端或 SSH 用戶端中使用 SysRq 命令。每個用戶端傳送中斷請求的命令是不同的。
若要使用 SysRq,請根據您所使用的用戶端選擇下列其中一個程序。
(Windows 執行個體) 使用 SAC 為您的執行個體進行疑難排解
Windows 的特殊管理主控台 (SAC) 功能提供了一種疑難排解 Windows 執行個體的方法。透過連線到執行個體的序列主控台並使用 SAC,您可以中斷開機程序並以安全模式啟動 Windows。
注意
如果您在執行個體上啟用 SAC,則依賴密碼擷取的 EC2 服務將無法從 Amazon EC2 主控台運作。Amazon EC2 上的 Windows 啟動代理程式 (EC2Config、EC2Launch v1 和 EC2Launch v2) 倚賴序列主控台執行各種任務。在執行個體上啟用 SAC 時,這些任務不會成功執行。如需 Amazon EC2 啟動代理程式的詳細資訊,請參閱 設定您的 Amazon EC2 Windows 執行個體。如果您啟用 SAC,可以稍後停用它。如需詳細資訊,請參閱 停用 SAC 和開機選單。
使用 SAC
使用 SAC
-
如果執行個體上已啟用 SAC,序列主控台會顯示
SAC>
提示。 -
若要顯示 SAC 命令,請輸入「?」,然後按 Enter。
預期的輸出結果
-
若要建立命令提示通道 (例如
cmd0001
或cmd0002
),請輸入「cmd」,然後按 Enter。 -
若要檢視命令提示通道,請按 ESC,然後按 TAB。
預期的輸出結果
-
若要切換通道,請同時按 ESC+TAB+通道號碼。例如,若要切換至
cmd0002
頻道 (如果已建立),請按 ESC+TAB+2。 -
輸入命令提示通道所需的憑證。
命令提示字元與您在桌面上取得的完整功能命令 Shell 相同,但是除了它,不允許讀取已經輸出的字元。
也可以從命令提示字元使用 PowerShell。
請注意,您可能需要將進度偏好設定設定為無訊息模式。
![命令提示字元中的 PowerShell。](images/win-boot-8.png)
使用開機功能表
如果執行個體啟用了開機功能表,且透過 SSH 連線後重新啟動,您應該會看到開機功能表,如下所示。
![命令提示字元中的開機功能表。](images/win-boot-1.png)
開機功能表命令
- ENTER
-
啟動選取的作業系統項目。
- TAB
-
切換至「工具」功能表。
- ESC
-
取消並重新啟動執行個體。
- ESC 後跟 8
-
相當於按下 F8 。顯示所選項目的進階選項。
- ESC 鍵 + 向左箭頭
-
回到初始開始功能表。
注意
單獨的 ESC 鍵不會帶您回到主功能表,因為 Windows 正在等待查看是否正在進行逸出序列。
![進階開機選項。](images/win-boot-2.png)
停用 SAC 和開機選單
如果您啟用 SAC 和開機選單,可以稍後停用這些功能。
使用下列其中一種方法來停用執行個體上的 SAC 和開機功能表。