全部產品
Search
文件中心

Elastic Compute Service:查看執行結果及修複常見問題

更新時間:Dec 24, 2025

在ECS管理主控台執行雲助手命令與登入執行個體後運行命令一樣,只有滿足所需條件後,命令才會運行成功。建議在執行命令後查看命令執行結果與狀態,確保目標操作已完成。如果執行失敗,可以根據常見錯誤資訊定位並修複問題。

背景資訊

當出現ECS執行個體缺乏相關依賴、網路異常、命令語義錯誤、指令碼調試失敗或者執行個體狀態異常等情況時,命令會呈現不同的執行狀態與執行結果。可以通過控制台或API查看執行結果中的錯誤資訊、診斷並修複問題。

查看執行結果

通過控制台查看

  1. 訪問ECS控制台-雲助手

  2. 在頁面左側頂部,選擇目標資源所在的資源群組和地區。地區

  3. 命令執行結果頁簽,查看命令執行結果。

    • 如果命令執行成功,在執行結果中查看輸出資訊。

      1. 找到執行狀態成功執行的命令執行結果。

      2. 操作欄中,單擊查看

      3. 執行個體列表頁面的執行完成頁簽,查看命令執行結果。

        執行成功

    • 如果命令執行失敗,在執行結果中查看錯誤資訊,並根據錯誤資訊診斷和修複問題。

      1. 找到執行狀態執行失敗的命令執行結果。

      2. 操作欄中,單擊查看

      3. 執行個體列表頁面的執行失敗頁簽,查看執行失敗的錯誤資訊。

        常見錯誤資訊及修複建議,請參見執行失敗常見錯誤及修複建議

        執行失敗

    • 查看定時執行任務的輸出資訊。

      1. 找到執行狀態計劃執行中的命令執行結果。

      2. 操作欄中,單擊查看

      3. 執行個體列表頁面,查看命令執行結果。

通過阿里雲CLI查看

阿里雲CLI的使用步驟,請參見使用阿里雲CLI管理阿里雲資源

  1. RunCommandInvokeCommand的返回結果中擷取命令執行 ID(InvokeId)。

  2. 輸入InvokeId和ECS執行個體的地區ID(RegionId)查詢命令的執行結果。下面樣本以華東2(上海)地區為例,其他地區的ID請參見地區和可用性區域

    • 調用DescribeInvocations介面查看命令的執行狀態。

      aliyun ecs DescribeInvocations --RegionId cn-shanghai --InvokeId t-sh054h*****
    • 調用DescribeInvocationResults介面查看命令的執行結果。

      aliyun ecs DescribeInvocationResults --RegionId cn-shanghai  --InvokeId t-sh054h******

通過API查看

  1. RunCommandInvokeCommand的返回結果中擷取命令執行 ID(InvokeId)。

  2. DescribeInvocationsDescribeInvocationResults中,輸入InvokeId和ECS執行個體的地區ID查詢命令的執行結果。

執行失敗錯誤及修複建議

常見錯誤

錯誤碼

錯誤資訊

修複建議

InstanceNotRunning

建立任務時,該執行個體不處於運行中。

請確認執行個體是否正常運行。

InstanceRestarted

執行個體在任務執行期間被重啟。

請不要在執行任務時重啟執行個體。

ClientNotRunning

雲助手Agent未運行。

因為雲助手Agent已停止或未安裝,請按照以下步驟啟動或安裝雲助手Agent

  1. 檢查雲助手Agent對應進程是否正常運行。

    • Linux:執行以下命令。

      ps -ef |grep aliyun-service
    • Windows:在工作管理員中查看是否存在aliyun_assist_service進程。

  2. 如果進程不存在,則啟動雲助手Agent

    • Linux:執行以下命令。

      #Linux系統支援systemctl
      systemctl start aliyun.service
      
      #Linux系統不支援systemctl
      /etc/init.d/aliyun-service start
    • Windows:通過服務管理員啟動Aliyun Assist Service服務。

說明

如果以上操作還未能啟動雲助手Agent,請重新安裝雲助手。具體操作,請參見安裝雲助手Agent

ClientNetworkBlocked

執行個體網路環境異常。

  1. 執行以下命令檢查網路連通性,如果返回當前執行個體的ID,則表示網路正常。

    curl https://{region-id}.axt.aliyun.com/luban/api/instance/instance-id
  2. 如果沒有返回當前執行個體的ID,請從安全性群組、防火牆、DNS設定和路由表等方面排查網路問題。需要在內網出方向允許存取TCP 443、TCP 80、UDP 53連接埠,確保雲助手能夠內網訪問以下地址:

    • https://{region-id}.axt.aliyun.com:443/

    • http://100.100.100.200:80/

    • http://aliyun-client-assist-{region-id}.oss-{region-id}-internal.aliyuncs.com

      因為雲助手Agent安裝包所在的OSS儲存空間為私人存取權限,只有對應的安裝包檔案為公用讀取許可權,所以在驗證該網域名稱的連通性時,返回“AccessDenied”資訊即表示該網域名稱可以正常連通。

說明
  • {region-id}表示執行個體所在的地區,例如杭州為cn-hangzhou

  • 各地區雲助手伺服器的網域名稱與IP地址,請參見精細配置

SecurityGroupRuleDenied

安全性群組規則拒絕訪問雲助手服務。

  • 請查看ErrorInfo欄位中拒絕訪問雲助手服務的安全性群組ID與雲助手服務IP,修改安全性群組規則為允許訪問雲助手服務。

  • 具體配置請參考配置雲助手Agent網路許可權

ClientNotResponse

雲助手Agent未響應。

請結合雲助手Agent的日誌進行排查。

  1. 開啟雲助手Agent的記錄檔,記錄檔預設路徑如下所示。

    • Linux:/usr/local/share/aliyun-assist/<雲助手版本號碼>/log/aliyun_assist_main.log

    • Windows:C:\ProgramData\aliyun\assist\<雲助手版本號碼>\log\aliyun_assist_main.log

  2. 查詢日誌中是否存在對應的命令執行ID。

    • 如果存在此ID,檢查上下文中是否有異常資訊,例如雲助手命令是否執行完畢及是否上報成功。

    • 如果不存在此ID,則重新執行雲助手命令。如果重新執行還是失敗,則建議重啟雲助手Agent

      • Linux系統:執行以下命令。

        #Linux系統支援systemctl
        systemctl restart aliyun.service
        
        #Linux系統不支援systemctl
        /etc/init.d/aliyun-service restart
      • Windows:通過服務管理員啟動Aliyun Assist Service服務。

ClientNeedUpgrade

雲助手Agent需要升級以支援指定特性。

  • 請查看ErrorInfo欄位中特性及最低支援版本號碼,至少升級雲助手Agent到特定版本。

ClientNotOnline

雲助手Agent未串連到伺服器。

請重新啟動雲助手Agent,具體操作,請參見停止和卸載雲助手Agent

DeliveryTimeout

雲助手服務端向雲助手Agent下發任務失敗。

雲助手命令尚未下發到執行個體中,建議重新執行。

ExecutionTimeout

命令執行逾時。

請根據需要延長命令執行逾時時間。

  • 如果在控制台建立並執行命令,逾時時間預設為60秒,請設定為適當的值。

  • 如果調用RunCommand執行命令,Timeout預設取值60秒,請設定為適當的值。

  • 如果調用CreateCommand建立命令並調用InvokeCommand執行命令,在建立命令時Timeout預設取值60秒,請在建立命令時設定為適當的值,或者在建立命令後調用ModifyCommand修改為適當的值。

ExecutionException

命令執行發生異常。

請查看ErrorInfo欄位提示的詳細錯誤資訊。

ExitCodeNonzero

命令執行結束,但命令進程的退出碼非0。

請檢查命令指令碼內容以及命令的輸出資訊。

ClientRestarted

雲助手Agent重啟導致任務中斷。

請在重啟完成後重新執行。可以在雲助手控制台或調用DescribeCloudAssistantStatus查看雲助手Agent運行狀態。

InstanceReleased

執行命令期間,執行個體被釋放。

執行命令期間執行個體被釋放,無法執行。

DirectoryNotExists

執行個體內不存在指定的運行目錄。

請在執行個體中建立指定的運行目錄,再執行命令。

執行命令

錯誤碼

錯誤資訊

修複建議

ClientIsUpgrading

雲助手Agent正在升級中。

請在升級完成後重新執行。可以在雲助手控制台或調用DescribeCloudAssistantStatus查看雲助手Agent運行狀態。

InstanceDeregistered

受管理的執行個體已經登出。

執行命令時受管理的執行個體已經登出,無法執行。

InvalidSystemBuiltInParameter

內建環境參數不合法。

不支援指定的內建環境參數,內建環境參數說明,請參見RunCommandCommandContent參數說明。

DefaultWorkingDirectoryNotAvailable

執行個體中預設的運行目錄不可用。

請檢查執行個體中預設的運行目錄:

  • Linux系統執行個體預設在管理員(root使用者)的home目錄下,即/root

  • Windows系統執行個體預設在雲助手Agent進程所在目錄,例如C:\Windows\System32

也可以在執行命令時指定運行目錄,可通過雲助手控制台或RunCommandWorkingDir指定。

CommandNotApplicable

命令類型不適用於指定的執行個體。

各命令類型支援的執行個體作業系統如下:

  • RunBatScript:適用於Windows執行個體的Bat命令。

  • RunPowerShellScript:適用於Windows執行個體的PowerShell命令。

  • RunShellScript:適用於Linux執行個體的Shell命令。

InvalidCommandText

命令內容不合法。

請檢查命令內容,命令內容可以是明文內容或Base64編碼後的內容。

CommandContentDecodeError

命令內容解碼失敗。

若命令內容指定了Base64編碼,請檢查Base64編碼是否正確。

AccountNotExists

執行個體內不存在指定的使用者。

請在執行個體中建立指定的使用者後再執行命令。

  • Linux系統的ECS執行個體,預設以root使用者執行命令。

  • Windows系統的ECS執行個體,預設以System使用者執行命令。

您也可以在執行命令時指定已存在的其他使用者執行命令,可通過雲助手控制台或RunCommandUsername指定。

定時執行命令

錯誤碼

錯誤資訊

修複建議

BadCronExpression

指定的Cron運算式不合法。

請修改Cron運算式,更多資訊,請參見基於時鐘定時執行

CronExpressionExpired

Cron運算式到期,對應的定時任務不會執行。

執行命令時請不要指定已到期的Cron運算式。

InvalidGMTOffsetForTimezone

Cron運算式中指定的GMT位移時區格式不合法。

請檢查GMT位移時區格式。

支援的GMT範圍:GMT-12:59至GMT+14:59,分鐘位允許0~59任意值,小時位不支援添加前置字元為零。

InvalidGMTOffsetHourForTimezone

Cron運算式中指定的GMT位移小時值不合法。

請檢查GMT位移時區的小時值。

支援的GMT範圍:GMT-12:59至GMT+14:59,小時位不支援添加前置字元為零。

InvalidGMTOffsetMinuteForTimezone

Cron運算式中指定的GMT位移分鐘值不合法。

請檢查GMT位移時區的分鐘值。

分鐘位允許0~59任意值。

TimezoneInformationCorrupt

由於時區檔案損壞等原因,導致雲助手Agent無法解析時區資訊。

  • Linux執行個體:請檢查/usr/share/zoneinfo目錄下是否有對應的時區檔案,例如/usr/share/zoneinfo/Asia/Shanghai是中國/上海時區的檔案。

  • Windows執行個體:請檢查註冊表中是否有對應的時區檔案,如HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones

說明

若不存在對應的時區檔案,請建立正確的時區檔案後再執行命令。

InvalidRateExpression

Rate運算式不合法。

請修改Rate運算式,更多資訊,請參見固定時間間隔執行

RateFrequencyTooLarge

Rate運算式中指定的定時執行頻率過大

定時執行頻率不能大於7天。

InvalidAtExpression

時間戳記(At運算式)不合法

請修改時間戳記,更多資訊,請參見僅在指定時間執行一次

AtExpressionExpired

時間戳記(At運算式)到期,對應的定時任務不會執行。

執行命令時請不要指定已到期的時間戳記。

在容器內執行命令

錯誤碼

錯誤資訊

修複建議

InvalidContainerName

容器名稱不合法。

容器名稱必須以數字、字母開頭,只能包含數字、大小寫字母以及特殊字元中的半形句號(.)、底線(_)、短劃線(-),長度不能超過255個字元。

UnsupportedContainerRuntime

不支援容器ID中包含的容器運行時

僅支援由Kubernetes通過CRI規範管理的且在dockercontainerdcri-o容器運行時上啟動並執行容器。

InvalidContainerId

容器ID不合法。

僅支援64位十六進位字串,允許存在docker://containerd://或者cri-o://首碼來明確指定的容器運行時。

ContainerConnectFailed

無法串連到容器。

請查看容器是否在運行中,可以使用kubectl或雲助手Agent查看容器狀態,StateRunning表示容器在運行中。更多資訊,請參見使用雲助手在容器內執行命令

  • 若容器在運行中,請檢查容器運行時。僅支援由Kubernetes通過CRI規範管理的且在docker、containerd、cri-o容器運行時上啟動並執行容器。

  • 若容器運行時符合雲助手限制,請檢查通過容器執行的命令是否符合要求。更多資訊,請參見使用限制

ContainerStateAbnormal

容器狀態異常。

請檢查容器狀態,只有運行中的容器才能通過雲助手執行命令,可以使用kubectl或雲助手Agent查看容器狀態,StateRunning表示容器在運行中。更多資訊,請參見使用雲助手在容器內執行命令

ContainerNotFound

容器不存在

請檢查對應名稱或ID的容器是否存在。

方法一:使用kubectl查看

kubectl --namespace <指定namespace> describe pod <指定pod>

方法二:使用雲助手Agent查看

aliyun-service list-containers --source cri --all

更多資訊,請參見使用雲助手在容器內執行命令

ContainerNameDuplicated

節點存在同名容器,無法識別出待執行命令的容器。

  • 當指定容器名稱執行命令時,節點中不允許存在同名容器。

  • 指定容器ID執行命令,使用kubectl或雲助手Agent查看容器ID。更多資訊,請參見使用雲助手在容器內執行命令

ContainerNameAndIdNotMatch

容器ID與容器名稱不匹配。

指定的容器ID與容器名稱不對應同一個容器,請檢查容器ID與容器名稱是否正確。

非預設使用者(System)在Windows執行個體中執行命令

當以非預設使用者(System)在Windows執行個體中執行命令時可能出現以下問題。

錯誤碼

錯誤資訊

修複建議

UserOrPasswordInvalid

使用者名稱或密碼不正確。

使用者名稱稱或對應使用者的密碼不正確。關於使用者名稱稱及密碼說明,請參見加密參數設定普通使用者執行雲助手命令

QueryParameterStoreFailed

從Parameter Store拉取參數失敗。

請檢查CloudOps Orchestration Service的參數倉庫中是否有對應的密碼資訊,更多資訊,請參見加密參數

InstanceRoleInvalid

Instance Role沒有被授予給執行個體。

請調用DescribeInstanceRamRole查看執行個體中是否有對應的RAM角色。

停止命令

錯誤碼

錯誤資訊

修複建議

TerminationException

任務停止失敗。

請查看ErrorInfo欄位提示的詳細錯誤資訊,或重試停止任務。

傳送檔案

錯誤碼

錯誤資訊

修複建議

FileAlreadyExists

相同路徑下存在同名檔案。

可以通過以下方案解決:

  • 刪除路徑下的同名檔案。

  • 允許覆蓋同路徑下的同名檔案。

    • 雲助手控制台:上傳檔案時開啟是否覆蓋

    • OpenAPI:調用SendFile時,Overwrite參數設定為true。

3、修改檔案下發目標ECS執行個體中的路徑或名稱。

FileNameInvalid

檔案名稱不合法。

請調整檔案名稱以符合Windows或Linux作業系統的檔案命名規範。

  • 雲助手控制台:上傳檔案時,檔案名稱符合規範要求

  • OpenAPI:調用SendFile時,Name參數符合規範要求

FilePathInvalid

檔案路徑不合法。

請調整檔案路徑,以符合Windows或Linux作業系統的檔案路徑規範。

  • 雲助手控制台:上傳檔案時,目標路徑符合檔案路徑規範。

  • OpenAPI:調用SendFile時,TargetDir參數符合檔案路徑規範。

FileAuthorityInvalid

檔案許可權不合法。

請調整檔案許可權,只對Linux執行個體生效,設定方式與chmod命令相同。

UserGroupNotExists

執行個體內不存在指定的使用者組。

使用者組預設為root。請在Linux執行個體中建立對應的使用者組。

參考命令:groupadd <groupname><groupname>為待建立的使用者組名稱。

常見問題

Q:通過阿里雲助手在 Windows 伺服器上執行 PowerShell 指令碼時,遇到輸出中文亂碼是什麼原因,如何解決?

A:因為雲助手執行 PowerShell 的預設環境沒有使用 UTF-8 編碼來處理輸出。當中文字元這類非 ASCII 字元被指令碼輸出時,由於編碼不匹配,導致控制

台無法正確解析,從而顯示為亂碼。

有兩種解決方案:

  1. 修改指令碼內容:在指令檔的開頭直接加入代碼,強制指定輸出編碼為 UTF-8。

    在Windows Server 2022環境中,雲助手已預設正確處理中文編碼,無需設定UTF-8編碼。

    在PowerShell 指令碼最前面,添加如下代碼:

    [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
    
    Write-Output "測試中文輸出..."
  2. 修改執行引導程式:在雲助手的進階選項中,修改執行指令碼的底層命令,讓它在運行指令碼前自動化佈建好編碼。

    在雲助手執行命令的引導程式中輸入如下代碼:

    powershell -command [Console]::OutputEncoding=[System.Text.Encoding]::UTF8;{{ACS::ScriptFileName|Ext(.ps1)}};exit $LastExitCode

    在此任務中執行的所有 PowerShell 指令碼都會自動應用 UTF-8 編碼,無需再單獨修改指令檔。