首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >杀死已停用的xrdp会话-- xrdp用户无法登录。

杀死已停用的xrdp会话-- xrdp用户无法登录。
EN

Server Fault用户
提问于 2017-04-20 03:22:49
回答 3查看 16.7K关注 0票数 2

用户无法通过xrdp连接到使用linux远程桌面客户端以及windows远程桌面客户端进行测试的服务器。

错误信息是“错误:连接问题”

代码语言:javascript
复制
/var/log/sesman.log 

显示此错误。

代码语言:javascript
复制
[20170419-22:06:02] [INFO ] scp thread on sck 7 started successfully
[20170419-22:06:02] [INFO ] ++ reconnected session: username test, 
display :47.0, session_pid 2869, ip xxx.xxx.xxx.xxx:53732 - socket: 7

为这一过程喝彩

代码语言:javascript
复制
root@server:/etc/xrdp# ps -aux | grep defunct
root      2869  0.0  0.0      0     0 ?        Z    19:08   0:00 
[xrdp-sessvc] <defunct>

试图扼杀这个过程

代码语言:javascript
复制
kill -9 2869 

不会扼杀这个过程

我怎样才能扼杀这个过程?

用户无法登录到日志文件所说的现有会话。

但是,当运行查看断开连接的tcp会话(不是已建立的连接,而只是侦听端口)时,我没有看到该用户存在任何会话。

这是一个长期的,反复发生的问题,似乎没有任何规律地表现出来。

我能做什么?

列出所有xrdp会话

代码语言:javascript
复制
#!/bin/bash

# find disconnect RDP sessions

lsof -b -w -n -c /^Xvnc$/b -a -iTCP:5900-5999

显示没有断开连接的会话(为所有已连接的用户建立了所有tcp连接)

EN

回答 3

Server Fault用户

发布于 2021-01-15 09:29:49

xrdp正在记录存储在用户主目录中的.xrdp*文件中的会话日志。它可能会发生一些要存储到/tmp/或/tmp/..xrdp/中的.xrdp*会话文件。xrdp服务正在与此会话文件建立关系。因此,为了在已停止的进程中再次建立连接,您有三个选项:

  • 使用不同的分辨率建立新连接(作为解决办法,但我不推荐)
  • 若要从受影响用户/S的主目录中删除. .vnc/sessman*文件,请在/tmp和/tmp/.xrdp/中删除受影响用户的xrdp*文件,然后再次连接。(建议的解决办法)
  • 要重新启动xrdp服务,这将清除与会话文件的关联。(建议只在您能够负担得起xrdp会话的停机时间时:)
票数 2
EN

Server Fault用户

发布于 2017-04-20 18:25:09

如果FOr遇到这个问题,我发现xrdp服务器存储了一些与断开连接的会话有关的状态信息。即使解析所有TCP连接并关闭侦听但未建立的端口也不能解决这个问题(尽管这确实解决了不必要的资源分配的巨大问题)。

我发现我无法收获僵尸,迫使XRDP创建一个新会话,而不是尝试重新连接到以前的状态,而不重新启动XRDP服务器。

我发现的唯一窍门是改变客户端的屏幕分辨率,使xrdp服务器以为它是一台新机器。这允许接受连接并建立新会话。

票数 1
EN

Server Fault用户

发布于 2020-03-27 17:47:27

游戏有点晚了,但为什么要这么做,我不确定,但我的服务器只有7个月的正常运行时间,有数千个已停止的xrdp进程。我用“systemctl重新启动xrdp.service”来清理它。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/845426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档