當您無法訪問Linux實例中的服務時,可能的問題原因之一是該服務對應的進程未處於運行中。以下列舉幾個Linux實例中常見的服務以及這些服務未運行時產生的影響
服務名稱 | 描述 | 默認監聽的端口 | 未運行時的影響 |
SSH | 遠程連接 | 22 | 無法通過SSH遠程連接 |
Web | Web網站服務 | 80(HTTP)、443(HTTPS) |
無法訪問網站 |
MySQL | MySQL數據庫 | 3306 | 無法訪問數據庫 |
- 在Linux實例中執行以下命令,檢查目標服務的端口監聽狀態。確認系統無返回結果,即目標服務的端口未處於監聽狀態。
netstat -ntlp | grep [$Port]
說明:[$Port]指目標服務監聽的端口,現場以實際情況為准。如果您修改過目標服務默認的端口,請替換為修改后的端口號。
tcp代表ipv4
tcp6代表IPv6
- 如果系統返回目標端口信息,並且監聽狀態為LISTEN,則說明目標服務已經處於運行狀態,不需要啟動。此時您應當檢查服務配置、系統防火牆、ECS安全組等因素,或者參見ECS常見問題,檢查是否存在符合您問題現狀的參考文檔。
- 執行以下命令,啟動目標服務。
systemctl start [$Service]
說明:
如果系統無返回結果,則表示命令執行成功。如果系統返回錯誤,請參考錯誤提示進行修復。
- [$Service]指目標服務的名稱,現場以實際情況為准。
- 如果您要啟動的是SSH服務,則服務名稱為
sshd
。 - 如果您要啟動的是第三方服務,例如“Nginx”、“Tomcat”、“MySQL”等,請查閱第三方服務的官方網站,獲取對應的啟動命令。
- 執行以下命令,檢查目標服務的狀態。
systemctl status [$Service]
說明:此處以SSH服務為例,現場請以實際情況為准。
- 執行以下命令,檢查目標服務的端口監聽狀態。
netstat -ntlp | grep [$Port]