chglogon(Change Logon):启用 / 禁用 / 排空远程桌面新用户登录,保障维护操作不受新连接干扰。chgport(Change Port):专为老旧 DOS 串口程序做兼容,管理系统 COM 串口映射关系,修改虚拟 COM 端口绑定,工控、串口设备运维场景使用。chgusr(Change User):RDS 服务器默认开启用户注册表虚拟化,普通安装程序无法写入全局公共注册表,

Windows RDS 全部 chg* 系列命令完整汇总

一、系列通用说明

chg = Change,全是 Windows Server 远程桌面服务(RDS / 终端服务)内置配套命令,用于管控终端服务器登录、用户安装模式、串口兼容映射,仅在开启远程桌面服务的服务器可用。
 
包含 3 条独立工具:chglogonchgusrchgport

1. chglogon(Change Logon)管控远程桌面登录权限

核心功能

启用 / 禁用 / 排空远程用户新建 RDP 会话,服务器维护专用。

完整语法

cmd
chglogon {/QUERY | /ENABLE | /DISABLE | /DRAIN | /DRAINUNTILRESTART}
参数 作用
/QUERY 查询当前登录限制状态
/ENABLE 恢复正常,允许所有用户登录
/DISABLE 完全禁止登录,现有会话强制断开
/DRAIN 禁止新用户登录,已在线会话可重连(常规维护推荐)
/DRAINUNTILRESTART 永久排空,重启服务器才自动解除限制

标准维护示例

cmd
chglogon /drain
# 执行软件部署、系统补丁
chglogon /enable

2. chgusr(Change User)切换 RDS 服务器安装 / 执行模式

核心功能

解决多远程用户环境软件全局安装注册表重定向问题。

完整语法

cmd
chgusr {/QUERY | /INSTALL | /EXECUTE}
参数 作用
/QUERY 查看当前服务器模式
/INSTALL 切换安装模式,软件写入全局配置,所有用户共用
/EXECUTE 默认执行模式,多用户注册表隔离,日常业务运行

软件部署标准流程(搭配 chglogon)

cmd
chglogon /drain
chgusr /install
# 运行EXE/MSI安装程序
chgusr /execute
chglogon /enable

3. chgport(Change Port)DOS 兼容 COM 串口映射

核心功能

仅为老旧 16 位 DOS 工控程序提供串口映射兼容,不修改硬件物理 COM 编号。

完整语法

cmd
chgport [portx=porty | /D portx | /QUERY]
参数格式 作用
COM1=COM3 创建映射:DOS 程序访问 COM1,实际转发至硬件 COM3
/D COM1 删除 COM1 端口映射规则
/QUERY 查询全部现有串口映射

限制说明

  1. 仅 NTVDM DOS 虚拟机程序识别该映射,现代 64 位软件不生效;
  2. 映射临时生效,重启服务器自动清空。

chg* 三命令业务定位区分

命令 管控对象 使用场景
chglogon RDP 远程登录会话 服务器停机、补丁、维护时拦截新连接
chgusr RDS 全局软件安装权限 在多用户终端服务器安装行业软件
chgport DOS 程序 COM 串口映射 工控老旧 DOS 采集程序串口兼容适配

PixPin_2026-07-02_19-54-40

chglogon 命令完整解析

一、基础全称与定位

  1. 命令全称
     
    chglogon = Change Logon
     
    完整官方名称:Terminal Services Session Logon Control Utility
  2. 适用系统:Windows Server(远程桌面服务 RDS 专用),用于管控远程桌面会话登录权限,运维服务器维护、集群停机检修场景高频使用。
  3. 核心作用:启用 / 禁用 / 排空远程桌面新用户登录,保障维护操作不受新连接干扰。

二、五大参数功能对照表

参数 英文全称 功能说明 典型使用场景
/QUERY Query 查询当前服务器登录管控状态 维护前核查现有登录模式
/ENABLE Enable 解除限制,允许所有新用户正常登录 维护完成,恢复业务远程访问
/DISABLE Disable 完全禁止所有用户新建会话,现有会话强制断开 紧急故障、高危系统升级
/DRAIN Drain 禁止新建登录,保留已有会话重连权限 常规维护、分批迁移业务,不踢在线运维人员
/DRAINUNTILRESTART Drain Until Restart 排空模式永久生效,重启服务器后自动恢复 ENABLE 长期停机检修、机房批量升级

三、场景化实操命令示例

场景 1:服务器常规维护(推荐)

禁止新用户接入,在线人员可继续操作,不强制踢下线
powershell
chglogon /drain
# 核查状态
chglogon /query

场景 2:重大升级 / 高危补丁

完全封锁所有登录,任何人无法新建会话
powershell
chglogon /disable

场景 3:长期停机维护,永久锁定排空模式

powershell
chglogon /drainuntilrestart

场景 4:维护结束,恢复远程桌面登录

powershell
chglogon /enable

四、关键参数差异区分(核心运维重点)

  1. /DISABLE vs /DRAIN
  • /DISABLE:一刀切,不允许任何登录,已有会话断开
  • /DRAIN:柔性管控,仅拦截新连接,已登录用户可断开重连,业务中断最小。
  1. /DRAIN vs /DRAINUNTILRESTART
  • /DRAIN:临时生效,重启自动恢复登录;
  • /DRAINUNTILRESTART:永久锁定排空,必须重启服务器才会解除限制。

五、配套运维联动方案(Windows Server NAS/RDS 集群)

  1. 维护标准化流程
powershell
# 1. 先查看登录状态
chglogon /query
# 2. 进入排空模式,禁止新接入
chglogon /drain
# 3. 通知在线用户保存业务,等待会话全部下线
# 4. 执行补丁/存储/电源配置优化(powercfg批量调整)
# 5. 维护完成恢复登录
chglogon /enable
  1. 搭配其他运维命令组合使用
  • query session:查看当前在线远程桌面会话;
  • logoff [会话ID]:手动下线指定闲置会话;
  • powercfg:同步调整服务器电源计划,优化维护期间硬件性能。
⚠️ 注意:该命令仅管控远程桌面服务会话,本地控制台登录不受此命令限制。
  • chglogon:用于启用、禁用或关闭会话登录。

    • /QUERY:查询当前会话登录模式。
    • /ENABLE:允许用户从会话登录。
    • /DISABLE:禁止用户从会话登录。
    • /DRAIN:禁用新用户登录,但允许重新连接到现有会话。
    • /DRAINUNTILRESTART:禁用新用户登录,直到服务器重新启动,但允许重新连接到现有会话。

PixPin_2026-07-02_19-55-12

chgport 命令完整解析

一、基础全称与定位

  1. 命令全称
     
    chgport = Change Port
     
    完整官方名称:DOS Compatibility COM Port Mapping Utility
  2. 核心用途:专为老旧 DOS 串口程序做兼容,管理系统 COM 串口映射关系,修改虚拟 COM 端口绑定,工控、串口设备运维场景使用。
  3. 适用环境:Windows Server / Windows 桌面系统,仅作用于 16 位 DOS 虚拟机 / NTVDM 兼容层串口映射,不修改硬件物理串口编号

二、语法与参数对照表

基础语法:
plaintext
chgport [portx=porty | /D portx | /QUERY]
 
参数格式 英文全称 功能释义
portx=porty Port Mapping Assign 建立串口映射:将逻辑端口 portx 映射到目标端口 porty
/D portx Delete Port Mapping 删除指定端口 portx 已存在的映射规则
/QUERY Query Mapping List 查询并打印当前全部 COM 端口映射清单

三、实操命令示例

1. 查询现有串口映射

powershell
chgport /query

2. 创建映射(COM1 虚拟映射至 COM3)

powershell
chgport COM1=COM3

3. 删除 COM1 端口映射规则

powershell
chgport /D COM1

四、关键技术说明

  1. 适用范围限制
     
    该映射仅对运行在 NTVDM DOS 兼容环境下的 16 位老式程序生效,原生 32/64 位 Windows 软件不识别此映射;现代工控软件直接读取硬件 COM 编号,不受该命令控制。
  2. 典型业务场景
     
    工控服务器运行老旧 DOS 采集程序,程序硬编码固定读取 COM1,而硬件设备占用 COM3,通过chgport做端口兼容转发,无需修改老旧程序源码。
  3. 持久化特性
     
    端口映射为临时内存生效,系统重启后自动清空,如需开机自动映射,需封装脚本写入开机任务计划。

五、配套运维补充

若需要永久固化串口映射,可创建开机 PowerShell 脚本:
powershell
# startup-com-port.ps1
chgport COM1=COM3
通过schtasks配置开机自动执行,实现重启保留串口兼容映射。
  • chgport:用于设置端口映射。

    • AUX = \DosDevices\COM1
    • COM1 = \Device\Serial0

PixPin_2026-07-02_19-55-37

chgusr 命令完整解析

一、基础全称与定位

  1. 命令全称
     
    chgusr = Change User
     
    完整官方名称:Remote Desktop Services Install Mode Control Utility
  2. 适用系统:Windows Server RDS(远程桌面服务服务器),专门控制终端服务器安装模式 / 执行模式,解决多用户环境下软件安装注册表重定向问题。
  3. 核心原理:RDS 服务器默认开启用户注册表虚拟化,普通安装程序无法写入全局公共注册表,切换/install模式后系统重定向安装写入路径,软件才能对所有远程用户生效。

二、参数对照表

基础语法:
plaintext
CHANGE USER {/EXECUTE | /INSTALL | /QUERY}
参数 英文全称 功能说明 业务场景
/QUERY Query 查询当前服务器所处模式 安装软件前核查状态
/INSTALL Install 切换至软件安装模式 安装需要全局生效的桌面程序、行业软件
/EXECUTE Execute 切换回默认执行模式(出厂默认) 软件安装完成后恢复正常远程会话运行

三、标准软件安装运维流程

完整操作步骤

powershell
# 1. 先查看当前模式
chgusr /query

# 2. 切换安装模式,系统接管注册表写入
chgusr /install

# 3. 运行软件安装包(MSI/EXE),完成全局安装
# 此处执行安装程序

# 4. 安装完毕切回默认执行模式,供远程用户正常使用
chgusr /execute

实操示例

powershell
chgusr /install
msiexec /i D:\Software\NAS管理工具.msi
chgusr /execute

四、两种模式核心区别

  1. /EXECUTE(默认执行模式)
     
    远程桌面多用户标准运行环境,系统将用户配置写入各自独立的注册表隔离目录,避免多用户配置冲突;禁止安装程序写入全局机器级注册表
  2. /INSTALL(安装模式)
     
    临时重定向注册表路径,程序安装时写入机器全局配置,安装完成切回执行模式后,所有登录用户共享这套软件配置;仅用于软件部署,日常业务运行不可长期停留在此模式。

五、配套 RDS 运维联动组合

搭配之前同系列 RDS 命令形成完整服务器维护流程:
powershell
# 1. 禁止新远程登录,避免安装干扰
chglogon /drain
# 2. 切换安装模式部署软件
chgusr /install
# 3. 执行软件安装
# 4. 恢复执行模式
chgusr /execute
# 5. 放开远程登录权限
chglogon /enable
⚠️ 注意:该命令仅作用于远程桌面服务终端服务器,普通单机、Windows 客户端系统无此模式区分。
  • chgusr:用于更改安装模式。

    • /EXECUTE:启用执行模式(默认)。
    • /INSTALL:启用安装模式。
    • /QUERY:显示当前设置。
posted @ 2024-03-11 08:34  suv789  阅读(66)  评论(0)    收藏  举报