故障診斷 Windows 執行個體的常見訊息 - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

故障診斷 Windows 執行個體的常見訊息

本節包含根據常見訊息協助您故障診斷問題的秘訣。

「未提供密碼」

若要使用遠端桌面連線到 Windows 執行個體,您必須指定帳戶和密碼。提供的帳戶和密碼是以您啟動執行個體所用的 AMI 為基礎。您可擷取管理員帳戶自動產生的密碼,或使用 AMI 建立來源之原始執行個體中使用的帳戶和密碼。

您可以為使用自訂 Windows AMI 啟動的執行個體產生管理員帳戶密碼。要產生密碼,您需要在建立 AMI 之前在作業系統中配置一些設定。如需詳細資訊,請參閱 建立自訂 Windows AMI

如果您的 Windows 執行個體未設定產生隨機密碼,當您使用主控台擷取自動產生的密碼時,就會收到以下訊息:

Password is not available.
The instance was launched from a custom AMI, or the default password has changed. A
password cannot be retrieved for this instance. If you have forgotten your password, you can
reset it using the Amazon EC2 configuration service. For more information, see Passwords for a
Windows Server instance.

檢查執行個體的主控台輸出,查看您啟動執行個體所用的 AMI,建立時是否停用產生密碼。如果停用產生密碼,主控台輸出會包含以下內容:

Ec2SetPassword: Disabled

如果停用產生密碼而您不記得原始執行個體的密碼,您可重設此執行個體的密碼。如需詳細資訊,請參閱 重設遺失或過期的 Windows 管理員密碼

「尚未提供密碼」

若要使用遠端桌面連線到 Windows 執行個體,您必須指定帳戶和密碼。提供的帳戶和密碼是以您啟動執行個體所用的 AMI 為基礎。您可擷取管理員帳戶自動產生的密碼,或使用 AMI 建立來源之原始執行個體中使用的帳戶和密碼。

您應該會在幾分鐘內收到密碼。如果未提供密碼,當您使用主控台擷取自動產生的密碼時,就會收到以下訊息:

Password not available yet.
Please wait at least 4 minutes after launching an instance before trying to retrieve the 
auto-generated password.

如果超過四分鐘仍未收到密碼,則可能是執行個體的啟動代理程式未設定為產生密碼。請檢查主控台輸出是否為空以確認。如需詳細資訊,請參閱 無法取得主控台輸出

同時確認用於存取管理入口網站的 AWS Identity and Access Management (IAM) 帳戶是否具有允許的ec2:GetPasswordData動作。如需 IAM 許可的詳細資訊,請參閱 什麼是 IAM?

「無法擷取 Windows 密碼」

若要擷取管理員帳戶的自動產生密碼,您必須使用啟動執行個體時所指定之金鑰對的私有金鑰。如果您在啟動執行個體時未指定金鑰對,就會收到下列訊息。

Cannot retrieve Windows password

您可以使用相同的 AMI,確定指定金鑰對,終止此執行個體並啟動新的執行個體。

等待中繼資料服務

Windows 執行個體必須先從自己的執行個體中繼資料取得資訊,才能自行啟動。根據預設,WaitForMetaDataAvailable 設定會確定 EC2Config 服務會先等待執行個體中繼資料變成可存取,才繼續開機程序。如需詳細資訊,請參閱 執行個體中繼資料與使用者資料

如果執行個體的執行個體連線能力測試失敗,請嘗試下列方法解決此問題。

  • 檢查您 VPC 的 CIDR 區塊。如果在 IP 地址範圍由 224.0.0.0255.255.255.255 (類別 D 和類別 E IP 地址範圍) 的 VPC 中啟動執行個體,Windows 執行個體即無法正確開機。這些是保留的 IP 地址範圍,不應該指派給主機裝置。我們建議您使用來自私有 (非可公開路由) IP 地址範圍 (如 RFC 1918 中所指定) 的 CIDR 區塊來建立 VPC。

  • 系統可能已以靜態 IP 地址設定。請嘗試建立網路介面連接至執行個體

  • 在您無法連線之 Windows 執行個體上啟用 DHCP
    1. 停止受影響的執行個體並分離其根磁碟區。

    2. 啟動與受影響執行個體同一可用區域中的暫時執行個體。

      警告

      如果您的暫時執行個體與原始執行個體以相同的 AMI 為基礎,則您必須完成額外的步驟,否則您無法在還原原始執行個體磁碟區之後將其啟動,原因是磁碟簽名衝突。或者,請為暫時執行個體選擇不同的 AMI。例如,如果原始執行個體使用 AWS 視窗 AMI 適用於視窗伺服器 2016 年,請使用 AWS 視窗 AMI 啟動暫存執行個體。

    3. 從受影響的執行個體將根磁碟區連接到此暫時執行個體。連線至暫時執行個體、開啟 Disk Management (磁碟管理) 公用程式,然後讓磁碟機上線。

    4. 從暫時執行個體,開啟 Regedit 並選取 HKEY_LOCAL_MACHINE。從 File (檔案) 功能表中,選擇 Load Hive (載入 Hive)。選取磁碟機、開啟檔案 Windows\System32\config\SYSTEM,然後在提示時指定金鑰名稱 (您可使用任何名稱)。

    5. 選取剛載入的機碼並導覽至 ControlSet001\Services\Tcpip\Parameters\Interfaces。每個網路介面均按 GUID 列出。選取正確的網路介面。如已停用 DHCP 並指派了靜態 IP 地址,EnableDHCP 設為 0。若要啟用 DHCP,請將 EnableDHCP 設為 1,然後刪除下列機碼,如果它們存在:NameServerSubnetMaskIPAddressDefaultGateway。再次選取該金鑰,然後從 File (檔案) 功能表中選擇 Unload Hive (取消載入 Hive)

      注意

      如有多個網路介面,您需要找出正確的介面來啟用 DHCP。若要找出正確的網路界面,請檢閱下列機碼值:NameServerSubnetMaskIPAddressDefaultGateway。這些值會顯示前一個執行個體的靜態組態。

    6. (選用) 如已啟用 DHCP,您可能沒有中繼資料服務的路由。更新 EC2Config 可解決此問題。

      1. 下載並安裝最新版的 EC2Config 服務。如需安裝此服務的詳細資訊,請參閱 安裝最新版本的 EC2Config

      2. .zip 檔案中的檔案解壓縮到所連接之磁碟機上的 Temp 目錄中。

      3. 開啟 Regedit 並選取 HKEY_LOCAL_MACHINE。從 File (檔案) 功能表中,選擇 Load Hive (載入 Hive)。選取磁碟機、開啟檔案 Windows\System32\config\SOFTWARE,然後在提示時指定金鑰名稱 (您可使用任何名稱)。

      4. 選取剛載入的機碼並導覽至 Microsoft\Windows\CurrentVersion。選取 RunOnce 機碼。(如果此機碼不存在,請在 CurrentVersion 按一下滑鼠右鍵、指向 New (新增)、選取 Key (機碼) 並命名機碼 RunOnce。) 按一下滑鼠右鍵、指向 New (新增),然後選取 String Value (字串值)。在名稱輸入 Ec2Install,在資料輸入 C:\Temp\Ec2Install.exe -q

      5. 再次選取該金鑰,然後從 File (檔案) 功能表中選擇 Unload Hive (取消載入 Hive)

    7. (選用) 如果您的暫時執行個體與原始執行個體以相同的 AMI 為基礎,則您必須完成下列步驟,否則您無法在還原原始執行個體磁碟區之後將其啟動,原因是磁碟簽名衝突。

      警告

      下列程序說明如何使用登錄編輯程式來編輯 Windows 登錄檔。如果您不熟悉 Windows 登錄檔或如何使用登錄編輯程式來安全地進行變更,請參閱 設定登錄檔

      1. 開啟命令提示,輸入 regedit.exe,然後按 Enter。

      2. 登錄編輯程式中,從內容功能表中選擇 HKEY_LOCAL_MACHINE (按一下右鍵),然後選擇 Find (尋找)。

      3. 輸入 Windows Boot Manager,然後選擇 Find Next (尋找下一個)。

      4. 選擇名為 11000001 的金鑰。此金鑰是您在上一個步驟中找到的金鑰的同級。

      5. 在右窗格中,選擇 Element,然後從內容功能表中選擇 Modify (修改)(按一下右鍵)。

      6. 在資料中的位移為 0x38 處找到四位元組的磁碟簽章。反轉位元組以建立磁碟簽章,然後寫下來。例如,下列資料所代表的磁碟簽章是 E9EB3AA5

        ... 0030 00 00 00 00 01 00 00 00 0038 A5 3A EB E9 00 00 00 00 0040 00 00 00 00 00 00 00 00 ...
      7. 在 [命令提示字元] 視窗中,執行下列命令以啟動 Microsoft DiskPart。

        diskpart
      8. 執行下列 DiskPart 命令以選取磁碟區。(可以使用磁碟管理公用程式,確認磁碟編號為 1)。

        DISKPART> select disk 1 Disk 1 is now the selected disk.
      9. 運行以下 DiskPart 命令以獲取磁盤簽名。

        DISKPART> uniqueid disk Disk ID: 0C764FA8
      10. 如果上一步中顯示的磁碟簽章與您先前寫下的 BCD 的磁碟簽章不符,請使用下列 DiskPart 命令來變更磁碟簽章,使其符合:

        DISKPART> uniqueid disk id=E9EB3AA5
    8. 使用 Disk Management (磁碟管理) 公用程式讓磁碟機離線。

      注意

      如果暫時執行個體執行的作業系統與受影響執行個體的相同,磁碟機會自動離線,因此您不需要手動將其離線。

    9. 分離磁碟區與暫時執行個體。如果不再需要使用此暫時執行個體,您可終止它。

    10. 將磁碟區連接為 /dev/sda1 來還原受影響執行個體的根磁碟區。

    11. 啟動受影響的執行個體。

如果您已連線到此執行個體,請由此執行個體開啟網際網路瀏覽器,然後輸入下列中繼資料伺服器的 URL:

http://169.254.169.254/latest/meta-data/

如果無法聯絡中繼資料伺服器,請嘗試下列方法解決問題:

  • 下載並安裝最新版的 EC2Config 服務。如需安裝此服務的詳細資訊,請參閱 安裝最新版本的 EC2Config

  • 檢查 Windows 執行個體是否正在執行 RedHat 光伏驅動程式。如果是,請更新至 Citrix PV 驅動程式。如需詳細資訊,請參閱 升級 Windows 執行個體上的 PV 驅動程式

  • 確認防火牆、IPSec 和代理伺服器設定不會封鎖中繼資料服務 (169.254.169.254) 或 AWS KMS 伺服器的傳出流量 (地址指定在 TargetKMSServerC:\Program Files\Amazon\Ec2ConfigService\Settings\ActivationSettings.xml 元素中)。

  • 使用下列命令確認您有中繼資料服務的路由 (169.254.169.254)。

    route print
  • 檢查是否有可能影響您執行個體可用區域的網路問題。請前往 http://status.aws.amazon.com/

無法啟動 Windows

視窗執行個體使用視窗 AWS KMS 啟用。您可以收到以下訊息:A problem occurred when Windows tried to activate. Error Code 0xC004F074,如果您的執行個體無法連線到 AWS KMS 伺服器。Windows 必須每 180 天啟動一次。EC2Config 會嘗試在啟動期間到期之前聯絡 AWS KMS 伺服器,以確保 Windows 保持啟動狀態。

如果您發生 Windows 啟用問題,請使用下列程序予以解決。

EC2Config (Windows Server 2012 R2 AMI 及舊版)
  1. 下載並安裝最新版的 EC2Config 服務。如需安裝此服務的詳細資訊,請參閱 安裝最新版本的 EC2Config

  2. 登入執行個體並開啟下列檔案:C:\Program Files\Amazon\Ec2ConfigService\Settings\config.xml

  3. 在檔案中找到 EC2 WindowsActivate 外掛程config.xml式。將狀態變更為 Enabled (已啟用) 並儲存變更。

  4. 在 Windows 服務嵌入式管理單元中,重新啟動 EC2Config 服務或重新開機執行個體。

如果這無法解決啟用問題,請遵循下列其他步驟。

  1. 設定 AWS KMS 目標:C:\> slmgr.vbs /skms 169.254.169.250:1688

  2. 啟動 Windows:C:\> slmgr.vbs /ato

EC2Launch (Windows Server 2016 AMI 及更新版本)
  1. 從具有管理權限的 PowerShell 提示中,匯入 EC2Launch 模組:

    PS C:\> Import-Module "C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Ec2Launch.psd1"
  2. 呼叫新增路由函數以查看新路由清單:

    PS C:\> Add-Routes
  3. 調用 Set-ActivationSettings 函數:

    PS C:\> Set-Activationsettings
  4. 接著執行下列指令碼以啟動 Windows:

    PS C:\> cscript "${env:SYSTEMROOT}\system32\slmgr.vbs" /ato

針對 EC2Config 和 EC2Launch,如果您仍收到啟用錯誤,請確認下列資訊。

  • 確認您具有通往 AWS KMS 伺服器的路由。開啟 C:\Program Files\Amazon\Ec2ConfigService\Settings\ActivationSettings.xml 並找到 TargetKMSServer 元素。執行下列命令,並檢查是否列出這些 AWS KMS 伺服器的位址。

    route print
  • 確認已設定 AWS KMS 用戶端金鑰。執行下列命令並檢查輸出。

    C:\Windows\System32\slmgr.vbs /dlv

    如果輸出包含「錯誤:找不到產品金鑰」,表示未設定 AWS KMS 用戶端金鑰。如果未設定 AWS KMS 用戶端金鑰,請依照以下 Microsoft 文章:用戶端安裝金鑰所述查詢AWS KMS 用戶端金鑰,然後執行下列命令來設定 AWS KMS 用戶端金鑰。

    C:\Windows\System32\slmgr.vbs /ipk client_key
  • 確認系統的時間和時區是否正確。如果您使用的是 UTC 以外的時區,請新增下列登錄機碼並將1其設定,以確保時間正確:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal

  • 如已啟用 Windows 防火牆,請使用下列命令暫時停用它。

    netsh advfirewall set allprofiles state off

Windows 不是正版 (0x80070005)

視窗執行個體使用視窗 AWS KMS 啟用。如果執行個體無法完成啟用程序,會回報所用 Windows 不是正版。

請嘗試無法啟動 Windows的建議。

無終端機伺服器的授權伺服器可提供授權

Windows Server 預設透過遠端桌面可同時授權兩名使用者使用。如果您需要透過遠端桌面提供兩位以上的使用者同時存取您的 Windows 執行個體,您可購買遠端桌面服務客戶存取授權 (CAL) 並安裝遠端桌面工作階段主機和遠端桌面工作階段授權伺服器角色。

檢查是否有下列問題:

  • 您已超過可同時執行的 RDP 工作階段上限。

  • 您已安裝 Windows 遠端桌面服務角色。

  • 授權已過期。如果授權已過期,您就無法以使用者身分連線到您的 Windows 執行個體。您可以嘗試下列方法:

    • 使用 /admin 參數從命令列連線至執行個體,例如:

      mstsc /v:instance /admin

      如需詳細資訊,請參閱下列 Microsoft 文章:Access Remote Desktop Via Command Line

    • 停止執行個體、分離其 Amazon EBS 磁碟區,然後將它們連接到同一可用區域的另一個執行個體,以復原您的資料。

「部分設定是由您的組織所管理」

從最新 Windows Server AMI 啟動的執行個體可能顯示 Windows Update 對話方塊訊息,其中指出「部分設定是由您的組織所管理」。此訊息是因為 Windows Server 中的變更而出現,不影響 Windows Update 的行為或造成您無法管理更新設定。

如何移除警告
  1. 開啟 gpedit.msc 並導覽至電腦組態 > 系統管理範本 > Windows 元件 > Windows 更新。編輯設定自動更新,然後將其設為已啟用

  2. 在命令提示字元中,使用 gpupdate /force 更新群組政策。

  3. 關閉「Windows Update 設定」再重新開啟。您將看到上述訊息表示您的設定正由您的組織所管理,後面接著「我們將自動下載更新,付費連線的情況除外 (因為可能需要支付費用)。在該種情況下,我們會自動下載保持 Windows 順暢運作所需的這些更新。」

  4. 返回 gpedit.msc,然後將群組政策設回尚未設定。再次執行 gpupdate /force

  5. 關閉命令提示字元並等待幾分鐘。

  6. 重新開啟「Windows Update 設定」。您應該不會看到「部分設定是由您的組織所管理」這個訊息。