在 Windows Server 2019 中,SSH 完全受 Microsoft 支持。我从 PuTTY 通过 SSH 连接到 Windows Server 2019 计算机,登录后它给了我一个 cmd。在执行此操作的同时,我还与服务器建立了 RDP 会话。两者都使用同一个用户。
在 SSH 会话中,我输入了 Notepad;在 RDP 会话中执行此操作时,它只会打开记事本。这里它什么也没做,但如果我在任务管理器中查看,确实有一个新的记事本进程,其用户与我在 SSH 会话和 RDP 连接中拥有的用户相同。
我的问题是:发生了什么事?我知道由于没有 GUI,记事本无法通过 SSH 会话出现,但它存储在哪里?当我重新使用 RDP 时,有什么方法可以显示它吗?
答案1
编辑:感谢 Harry Johnston 帮助我意识到这一点。我正在更正我的答案以反映实际情况的准确性。有关更多信息,请参阅此答案的评论。但是,这一切的要点是,如果您运行以 SSH 登录的进程,无论进程在何种安全上下文中运行,该进程都在 conhost.exe / 命令行下运行。因此,它实际上不会出现在用户的桌面上,而是在命令行服务下运行并由其拥有,如果这有意义的话。在 Windows 系统管理方面,有很多比我更有才华的人,但我觉得我有责任在引起更多混乱之前纠正答案。
再次感谢 Harry 让我意识到这一点!我们每天都会学到一些东西!:D
我附加了 Process Explorer 的照片以帮助更好地理解这一切。
原始答案:它做了它通常做的事情 - 它在用户的桌面上打开了记事本进程。仅仅因为您处于终端会话中并且无法查看桌面并不意味着桌面不活动,只是它没有显示。
我敢打赌,如果您这样做并通过 RDP 或本地会话返回服务器并重新登录用户帐户,您将看到记事本窗口。该进程正在用户的图形桌面上运行,但出于显而易见的原因,您无法通过 SSH 会话看到它。