请问如何通过 Mac OSX Mountain Lion 上的命令行重新启动 SSH 服务?
使用ps aux | grep 'ssh'
,我能够推断出该过程最有可能/usr/sbin/sshd
。
从这里我搜索了sshd 文档查找对“重新启动”的引用,但没有找到。
我不知道下一步该怎么做。
答案1
看这个答案回答 ServerFault 上的类似问题。Mountain Lion 中的命令应该相同。
您可以使用“unload”子命令停止该服务。
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
@MattClark 建议的更新:要重新启动服务,请load
使用unload
:
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
请注意,现有的 SSH 会话将被终止,因此您需要独立于当前用户会话运行此操作。
答案2
没有必要“卸载” sshd 服务,因为您只需“停止” sshd 服务即可。它将自行重新启动。
sudo launchctl stop com.openssh.sshd
答案3
我无法确认安斯加的答案是否有效,因为没有任何消息/明显的迹象,但我确信它确实有效。
我还发现killall sshd
这会终止并重新启动 sshd 进程,但缺点是所有连接都会停止。
答案4
此处显示的问题和答案太旧了(2012-2013 年)。我在 Ventura(2022 年发布)中尝试过它们,但都不起作用。
我在我的两台 Mac(10.11.6/El Capitan@2016 和 13.1/Ventura@2022)上完成了测试:两台 Mac 都在“Preferences|Common|Shares|RemoteLogin”中提供了 GUI 开关。
您只需将其关闭然后打开。sshd 将重新启动并读取 sshd_config 文件以反映您的更改。
(虽然这两个操作都有相应的命令行命令,但我认为您不会去了解它们。)