【发布时间】:2020-07-31 12:59:49
【问题描述】:
我在 Linux (Ubuntu) 上运行 .Net Core 微服务,并尝试通过 SSH 使用 Visual Studio 进行远程调试。但是该服务在用户svcuser 下运行,而我的用户是mainuser。主用户与服务用户在同一组中。
在 Visual Studio 中,我可以看到服务正在运行的进程,但是当我尝试附加时,我得到:
发生了一个或多个错误。无法附加到进程。 .Net 调试器没有足够的权限来调试进程。要调试此进程,vsdbg 必须以 root 权限运行。
我查看了 MS 文档,但对于 Linux,他们所拥有的只是:https://docs.microsoft.com/en-us/visualstudio/debugger/remote-debugging-dotnet-core-linux-with-ssh?view=vs-2019,其中没有关于使用其他用户运行服务的信息
他们关于解决此类问题的唯一信息仅适用于 Windows:https://docs.microsoft.com/en-us/visualstudio/debugger/error-the-microsoft-visual-studio-remote-debugging-monitor-on-the-remote-computer-is-running-as-a-different-user?view=vs-2019
【问题讨论】:
-
"要调试此进程,vsdbg 必须以 root 权限运行。"
-
@LexLi 必须有一种没有root权限的方法
-
你找到解决方案了吗?
-
@NikolaGaić 不,我们最终只是将其限制在我们可以将用户设置为相同的环境中
标签: c# linux visual-studio .net-core remote-debugging