转帖:knityster -=编织者=-
本文链接:http://hi.baidu.com/knityster/blog/item/d5a4504b922ac0f583025c42.html
『情景描述』
1.在登录远端Windows2003服务器的时候,出现"终端服务器超出最大允许连接数"错误,导致管理员无法登录服务器进行远程管理。
2.服务器统一放在公司信息中心管理,而且没有外接显示器,所以,最好能进行远程管理、解决该问题。
『解决过程』
1.首先想到的当然是搜索引擎,谷歌后的结果大概如下:
以下内容来自网络,版权归原作者所有
类 似问题发生是因为remote desktop for administrator缺省设置是2个连接,而且如果远程登录后不注销而直接关闭远程桌面,实际上session还留在服务器端,所以再次连接就很容 易出现上面的提示。如果您使用terminal登录的话,到控制台登录一下,远程的登录用户自动被注销。解决办法一是用注销来关闭远程桌面,二是限制已经 断开连接的session存在的时间,三是增加连接数。 后两种方法分别有两种方式来修改,具体步骤您能能参考下面的信息: 方法1. 修改terminal services configuration 方法2. 修改Group Policy |
2.以上方法设置都是正确的,只是现在我无法远程登录到远程系统了,同时也无法直接登录到该服务器,所以以上操作都无法进行。囧
3.继续查找,终于发现了解决办法,说明如下:
『 解决办法』
以如下命令形式即可解决超过最大连接数问题
运行 mstsc /v:IP /console ,比如
mstsc /v:211.211.0.5 /console
就可以连接到远程系统的的会话。
『相关内容』
1.mstsc命令行工具的参数官方说明(摘自官方帮助文档):
语法
mstsc [
参数 | 说明 |
/v: |
指定要连接的远程计算机。 |
/console | 将您连接到在运行 Windows Server 2003 的服务器或安装了终端服务器角色服务的服务器的控制台中登录的会话。 |
/f | 以全屏模式启动“远程桌面连接”。 |
/w: |
指定“远程桌面连接”窗口的宽度。 |
/h: |
指定“远程桌面连接”窗口的高度。 |
/public | 以公共模式运行远程桌面连接。 |
/span | 使远程桌面的宽度和高度与本地虚拟桌面相匹配,如有必要,扩展到多个显示器。要扩展到多个显示器,所有显示器必须具有相同的高度并垂直排列。 |
/edit | 打开指定的 .rdp 连接文件进行编辑。 |
/migrate | 将使用客户端连接管理器创建的旧连接文件迁移到新的 .rdp 连接文件。 |
/? | 列出这些参数 |
如下图
2.官方帮助文档对/console参数的说明
连接到远程计算机的控制台会话
在此版本的远程桌面连接中,如果远程计算机上安装了终端服务器角色服务,mstsc /console 将:
若要使用已安装的终端服务器角色服务连接到远程计算机的控制台会话,请执行下列步骤:
mstsc /v:server /console
您也可以使用“/console”参数连接到运行 Windows Server 2003、安装或未安装终端服务器角色服务的服务器。
值 | 说明 |
服务器 | 指定要连接的远程计算机的 DNS 名称或 IP 地址。 |
3.mstsc和带参数的mstsc /console的差别
当在XP运行里面打上mstsc命令并连接上另外一台机子,用任务管理器查看里面的进程的时候,你会发现里面的进程少了好多?
明明肯定运行着个的程序无论是在任务管理器里面还是在任务栏、系统托盘里都找不到。难道程序消失啦?
其实是这样的:其实我们一直用的所谓的远程桌面,其实只能算是个虚拟的桌面,而并非真正的形如远程主机显示器上显示的桌面。
mstsc和mstsc /console两个命令所连接的远程桌面,其实是截然不同的。
前者mstsc连接上远程主机后,本地主机所看到的远程主机的桌面其实只是一个虚拟桌面,正如前面所说,并非是远程主机显示器此时显示的桌面,
而是精简化之后的结果,除了开机就运行的一些程序外,其实在开机之后手动运行的程序是不会显示的。当使用普通的远程桌面(开始菜单中)或者mstsc命令 行工具(不带参数)连接到远端主机的时候,远程主机并不会注销当前用户并锁定桌面。而且此时在远程主机上的所有操作(这里的操作是说非修改性的操作,比如 运行程序,下同)都不会影响本地的使用(当然如删除相关文件则例外)。
其实从远程桌面的设置选项中,我们也可以看出些端倪:
而带参数mstsc /console则不同,当本地通过此命令连接上远程主机的时候,远程主机便会立即注销当前登陆使用的用户并锁定桌面,而且在远程主机上的相关操作都将影响本地的使用,也就是说,当远程主机重新登陆用户的时候,本地将断开与之的连接。
但是它们俩都有个共同点,即在主机上面的操作与修改都将会被记录并保存。其实只要你的终端连接的个数没有达到上限,你可以在一台电脑上同时用普通的 远程桌面(开始菜单中)或者mstsc命令行工具(不带参数)多次连接同一台远程PC。这有什么作用呢?其实当你用mstsc远程上去之后所运行的程序都 不会在远程主机上实际运行,所以当你使用第二个mstsc远程连接上去之后,在终端上将不会看到你使用第一个mstsc远程连接上去之后运行的程序。举个 例子,如果你使用第一个mstsc远程连接上去之后,登陆一个QQ123456789,然后你再使用第二个mstsc远程连接上去,你将看不到QQ程序在 运行,且当你同样登陆QQ123456789,那么,你将会在第一个mstsc远程连接上去的终端上看到提示说QQ在别处登陆(纳闷儿不是,都是远程连接 在同一台主机上运行的程序,为什么会这样呢)。但是,正如前面所说的,由于“在主机上面的操作与修改都将会被记录并保存”,所以,当你注销了你登录后,记 录的操作都会生效!
4.新版远程桌面(MSTSC 6)发生的主要区别
注意,如果你像我一样安装了最新版的远程桌面软件(MSTSC 6),那么,你应该会发现, /console选项已经没有了,取而代之的是一个/admin选项。主要区别如下:
/console 参数失效,改为/admin参数;
IMsRdpClientAdvancedSettings接口属性ConnectToServerConsole
改为:IMsRdpClientAdvancedSettings6.ConnectToAdministerServer;
新版远程桌面命令行工具帮助
4.预防出现"终端服务器超出最大允许连接数"错误的措施:
1).用注销来退出远程桌面而不是直接关闭窗口
2).限制已断开链接的会话存在时间(方法见前文)
3).增加最多链接数,即设置可连接的数量多些(方法见前文)
『新版远程桌面软件下载』
1.我的网盘下载:
包含用于windows 2000或更早版本Windows系统的远程桌面软件2.Microsoft 官方下载(需要通过Windows 正版验证):
1).用于XP的新版远程桌面软件:下载
2).用于Windows Server 2003的新版远程桌面软件:下载
P.S.
这次问题的解决走了不少弯路,下次解决问题的执行步骤应该如下:
1.查看程序帮助(软件帮助文档或对应命令行工具的帮助)
2.搜索引擎