Windows 2000/2003终端服务器超出最大允许连接数

故障现象:远程登录服务器时提示“终端服务器超出最大允许链接数”错误导致无法正常登录终端服务器;

故障分析:引起该问题的原因在于终端服务的缺省链接数为2个链接,并且当登录远程桌面后如果不是采用注销方式退出,而是直接关闭远程桌面窗口,那么实际上会话并没有释放掉,而是继续保留在服务器端,这样就会占用总的链接数,当这个数量达到最大允许值时就会出现上面的提示。在服务器的“终端服务管理器”中将已经登录的远程用户注销掉即可。

故障总结:以下为具体的解决方法:
  1、用注销来退出远程桌面而不是直接关闭窗口
  2、限制已断开链接的会话存在时间
  3、增加最多链接数
  第2、3条可采用以下两种方式来修改
  (1)、从终端服务配置中修改
   修改会话存在时间:运行-Tscc.msc-连接-双击RDP-Tcp或右击-属性-会话-选中第一个的替代用户设置(O)-结束已断开的会话[将默认值“从不”改为一个适当的时间,比如30分钟];
修改最大连接数:选择“网卡”选项卡-修改“最大连接数”改成你所需的值,当然这个值不也能太大,否则会占用较多的系统资源。不过这里修改的值好像不起作用,设置成无限制时照样还是会出现本文所说的情况;
  (2)、从组策略修改
   win2003
组策略级别要高于终端服务配置,当启用组策略后终端服务配置中的相应选项会变成灰色不可修改
   运行-gpedit.msc-计算机配置-管理模板-Windows组件-终端服务;
   双击右边的”限制连接数量“-选择”已启用“-填入允许的最大连接数;

win2000
开始-运行-gpedit.msc-计算机配置-管理模板-windows组件-终端服务-会话;
右边窗口选择 为断开的会话设置时间限制 -选择已启用,选择一个时间;

如果已经发生解决办法:
1、首先你可以telnet到此主机上(不管你用哪种方法),当然如果能直接操作机器更好,不过直接操作就不必用命令行了,那当然是知道机器超级管理员的密码的情况下,可以使用OpenTelnet来打开远程服务器的Telnet端口;。
2、Telnet上去后,先看登陆的用户:
输入命令:query user
系统返回:(下面为示例)
C:>query user
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
k12update console 1 运行中 2007-3-14 14:57
此时可以看出的可能都不一样,根据具体情况而定。
ID 0 的用户是本地登陆的,ID 1 和 ID 12是3389登陆的用户,前者在运行中,后者已经断开了,但是断开了仍然占用系统资源和通道,我们要把它踢掉。如下进行操作即可。
输入命令:logoff 1
3、如果服务器关闭了telnet功能(这是默认的),还可以通过SqlServer的xp_cmdshell扩展存储过程,使用格式:master.dbo.xp_cmdshell '命令内容',其余可参考第二步。此方式要求有访问xp_cmdshell的权限。

本文出自 “心意” 博客,请务必保留此出处http://xingyi.blog.51cto.com/20896/153361

你可能感兴趣的:(职场,2003,限制,终端,休闲,Windows2000)