如何卸载/重新安装 cygwin 以使用 sshd?

pro*_*eek 17 cygwin openssh sshd

我安装了 cygwin/sshd 没有很好的结果。我删除了 c:\cygwin 目录以重新安装。我手动删除了 sshd 管理员用户。

我再次重新安装了 cygwin,然后运行“ssh-host-config -y”。奇怪的是,它没有询问有关创建新用户的任何信息。而且程序真的很短。

$ ssh-host-config -y
 * 查询:覆盖现有的 /etc/ssh_config 文件?(是/否)是
 信息:创建默认的 /etc/ssh_config 文件
查询:覆盖现有的 /etc/sshd_config 文件?(是/否)是
 信息:创建默认的 /etc/sshd_config 文件
 信息:从 OpenSSH 3.3 开始,权限分离默认设置为 yes。
 信息:但是,这需要一个名为“sshd”的非特权帐户。
 信息:有关权限分离的更多信息,请阅读 /usr/share/doc/openssh
ME.privsep。
*查询:是否应该使用权限分离?(是/否)是
*** 信息:更新 /etc/sshd_config 文件

*** 信息:主机配置完成。玩得开心!

当我运行“cygrunsrv -S sshd”时,出现错误。“Win 32 错误 1069:由于登录失败,服务没有启动”。这是合理的消息,因为我以用户身份删除了 sshd,并且重新安装过程再次没有做任何事情。

我发现卸载有问题。

Q:如何完美卸载sshd相关的东西,重新安装?

Ken*_*rav 37

如果 sshd 之前已安装在系统上,则应在调用 ssh-host-config 之前执行以下清理过程:

# Remove sshd service
cygrunsrv --stop sshd
cygrunsrv --remove sshd

# Delete any sshd or related users (such as cyg_server) from /etc/passwd
#   (use your favorite editor)

# Delete any sshd or related users (such as cyg_server) from the system
net user sshd /delete
net user cyg_server /delete
Run Code Online (Sandbox Code Playgroud)

  • 我没有文件`/etc/passwd`。除此之外,这有效! (3认同)

pro*_*eek 4

我必须执行三个步骤才能重新安装它。

  • 删除 LOCAL_MACHINE\SYSTEM\ControlSet001\services\sshd
  • 运行“sc删除sshd”
  • 重启

问题是我无法从 Mac 登录 cygwin,这就是我尝试重新安装 cygwin 的确切原因。

我针对这个问题做了另一个帖子。->我无法从 Mac 登录 cygwin/ssh