全部產品
Search
文件中心

:Linux系統的ECS執行個體中,啟動SSH服務時未遇到任何錯誤資訊,但是ssh服務未啟動該怎麼辦?

更新時間:Apr 16, 2025

本文介紹在Linux系統的ECS執行個體中,啟動SSH服務時未遇到任何錯誤資訊,但是ssh服務未啟動的問題原因和解決方案。

問題現象

在Linux系統的ECS執行個體中,使用service或systemctl命令啟動SSH服務時,命令列沒有返回任何報錯資訊,但服務沒有正常運行。

執行cat /var/log/secure查看secure日誌,發現類似如下錯誤資訊。

sshd.service: main process exited, code=exited, status=203/EXEC.
init: ssh main process (1843) terminated with status 255.

問題原因

該問題通常是因為PATH環境變數配置異常,或SSH軟體包相關檔案被移除。

解決方案

請按照如下操作步驟,進行檢查並解決問題。

  1. 使用VNC遠端連線ECS執行個體。

    具體操作,請參見通過VNC串連執行個體

  2. 執行如下命令,檢查環境變數配置。

    echo $PATH
    • 系統正常返回類似如下,該值為PATH環境變數的預設值。

      /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
    • 若返回其他資訊,表示環境變數的預設值被改變,則需執行如下命令,重設環境變數。

      export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
  3. 執行如下命令,尋找並確認sshd程式的路徑。

    find / -name sshd
    • 系統正常返回類似如下,包含sshd程式的預設路徑。

      /usr/sbin/sshd
    • 如果相應檔案不存在,建議執行如下命令,重新安裝SSH軟體包。

      yum install -y openssh
  4. 執行如下命令,重啟SSH服務。

    systemctl restart sshd.service
  5. 執行如下命令,查看SSH服務狀態。

    systemctl status sshd.service

    返回如下所示時,表示SSH服務為運行中。

    查看sshd狀態