Cygwin で sshd をサービスとして実行中にエラーが発生しました

Cygwin で sshd をサービスとして実行中にエラーが発生しました

私は cygwin run 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と、現在 root (Windows では「SYSTEM」と呼ばれます) が所有しているというエラーが表示されます/var/empty。解決策は、管理用 Cygwin シェルで所有者を変更することでした。

chown SYSTEM /var/empty

関連情報