sc config 是什么
sc config 修改服务配置,最常用的是调整启动类型:auto 自动、demand 手动、disabled 禁用;也可以改运行账户与显示名。动手前先用 sc qc 记录现状,出问题才有依据回滚。改动影响的是下次启动行为,不会改动服务此刻的运行状态。
基本信息
| 适用平台 | Windows CMD(cmd.exe) |
|---|---|
| 语法 | sc config 服务名 start= auto|demand|disabled [obj= 账户] [displayname= 显示名] |
| 语法要点 | start= 后面必须有一个空格,写成 start=auto 会报参数无效 |
| 查看现状 | sc qc 服务名,改前先留档 |
| 生效时机 | 启动类型在下次启动时体现,当前状态用 start 与 stop 调整 |
| 权限要求 | 需要管理员权限 |
典型使用场景
- 把用不到的服务改为手动或禁用,降低开机负载与暴露面
- 服务暂时无法停止时,先把启动类型改成手动,重启后不再自启
- 调整服务运行账户,例如让备份服务以指定账户运行
- 在多台机器上统一同类服务的配置
- 把临时开启的调试服务恢复成原始配置
常用示例
常用示例
REM 改前先记录现状,便于回滚
sc qc Spooler
REM 改为手动启动
sc config Spooler start= demand
REM 改回自动启动
sc config Spooler start= auto
REM 禁用服务,可能影响系统功能,需谨慎
sc config wuauserv start= disabled
REM 修改运行账户,密码建议交互方式提供
sc config MySvc obj= "CORP\svcuser"
REM 改完核对结果
sc qc MySvcstart= 取值
| 取值 | 含义 | 适用场景 |
|---|---|---|
| auto | 系统启动时自动运行 | 必须常驻的核心服务 |
| delayed-auto | 自动但延迟启动 | 占用资源较大的服务,减少开机等待 |
| demand | 手动启动 | 按需使用的服务,如打印与备份 |
| disabled | 禁用,不能启动 | 确认不需要的服务 |
| boot 与 system | 在更早的启动阶段加载 | 一般服务不使用,多用于驱动 |
sc 对赋值参数的空格非常敏感:start= 之后必须留一个空格再跟取值,写成 start=auto 会直接报参数无效。这是它与其他命令行工具习惯差异最大的一点。
把系统关键服务设为禁用可能造成功能缺失甚至启动异常,改动前先确认该服务的作用与依赖关系,并记录原始配置,确保随时可以回滚。