在cygwin中將sshd作為服務運行時出錯

在cygwin中將sshd作為服務運行時出錯

我正在使用 cygwin 運行 sshd。但現在 sshd 沒有作為服務運作。當我使用“net start sshd”啟動服務時,訊息如下:“無法啟動 cygwin sshd 服務。該服務未報告錯誤。通過鍵入 NET HELPMSG 3534 可以獲得更多幫助”並且如果使用“cygrunsrv”運行-S sshd'錯誤類似於“啟動服務時出錯。查詢服務狀態:win32 錯誤1062”

我透過刪除其服務、伺服器和註冊表來完全刪除 cygwin。並再次安裝,但 sshd 沒有作為服務運行。

我可以解決這個問題嗎?

答案1

啟動服務時發生錯誤。查詢服務狀態:win32錯誤1062

有時,您在嘗試執行服務後會收到 sshd/cygrunsrv 服務錯誤。

cygrunsrv: Error starting a service:
QueryServiceStatus: Win32 error 1062:
The service has not been started.

造成這種情況的原因可能有幾個。以下方法可能會解決該問題(XP Home 上沒有此選項)。

解決方案1。

您可能安裝了舊的或損壞的 Cygwin。嘗試重新安裝。

以下內容也可能有幫助:

  1. cygrunsrv -R sshd
  2. 重新啟動(或使用任務管理器終止所有可能在背景執行的 sshd 的執行個體)
  3. 再次運行ssh-host-config -y

這似乎對我工作過的一些系統有幫助。

解決方案2。

開啟資源管理器視窗並使用「屬性 | 安全性」對話框,並將 SYSTEM 使用者的「完全控制」明確新增至下列目錄:

C:\Cygwin
C:\Cygwin\var
C:\Cygwin\var\log

來源Cygwin SSHD 操作指南

另請參閱 StackOverflow 問題無法啟動 cygwin sshd 服務


進一步閱讀

答案2

檢查/var/log/sshd.log sshd抱怨/var/empty現在由 root(在 Windows 上稱為“SYSTEM”)擁有。解決方案是在管理 Cygwin shell 中更改擁有者:

chown SYSTEM /var/empty

相關內容