拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Win11本地用户和组:lusrmgr.msc入口、创建、提权与批量管理

Win11本地用户和组:lusrmgr.msc入口、创建、提权与批量管理

Win11 的"本地用户和组"这个管理单元,微软是有意把它从默认视野里挪开的。设置面板里能加账户、能改账户类型,但那个从 XP 时代就陪着我们的 lusrmgr.msc 窗口,在开始菜单里搜半天也搜不出来。这事情我碰到过太多次:朋友买了台二手笔记本,想给自己和家人各开一个账号;公司里几台测试机需要统一开一批运维账号;还有折腾虚拟机的时候想让宿主机和客户机账户体系分开。跑到设置里点半天,发现"更改账户类型"的按钮是灰的,或者点完提示要重启才生效,最后还是得回来找这个老管理单元。这篇就把 Win11 本地用户和组的完整操作链路捋一遍:怎么打开它、家庭版没有这个东西该怎么办、怎么创建本地用户、怎么把普通账户提成管理员、批量建号怎么省事,以及一路踩过的坑。不管你是刚接触 Windows 的家庭用户,还是天天给机器开账号的运维,看完基本都能直接照着做。

1. Win11把"本地用户和组"藏哪儿了

先说清楚一个前提:Win11 的家庭版和专业版,在账户管理这块的能力边界差别很大,很多人第一步就卡在这儿,以为是系统坏了。我自己第一次在家庭版上找 lusrmgr.msc 的时候,运行框里敲进去回车,弹出来一句"Windows 找不到文件",当时还以为是系统组件缺失,折腾了半天才发现是版本限制。所以这一节先把这个入口的问题彻底讲明白,后面所有操作才有的放矢。

1.1 三个入口的实际差异

Win11 里能摸到账户管理的地方其实有三个,但能干的活完全不一样。

第一个是设置 → 账户 → 其他用户。这是给普通用户准备的入口,能添加微软账户、能添加本地账户、能把某个账户设成管理员或标准用户。它的优点是简单,缺点是只能管"能登录的账户",看不到用户组、看不到内置账户、看不到禁用状态,也改不了密码策略。

第二个是计算机管理(compmgmt.msc)。在这个控制台左边树里,展开"系统工具 → 本地用户和组",就能看到"用户"和"组"两个节点。这其实就是 lusrmgr.msc 的完整内容,只是嵌在了一个更大的管理控制台里。它的好处是顺手,因为你经常要同时看磁盘管理、设备管理器、事件查看器。

第三个是独立的 lusrmgr.msc。Win+R 输入lusrmgr.msc,回车,直接就是一个干净的、只做账户和组管理的窗口。左侧两个节点,右侧列表,界面和二十年前几乎没变。我个人的习惯是直接用它,因为加载最快,不拖泥带水。

注意:lusrmgr.msc只在 Windows 11 专业版、企业版、教育版里存在。家庭版敲这个命令一定报错,这不是你系统装坏了。

那家庭版怎么办?后面第 3 节会专门讲替代方案,命令行和 netplwiz 都能顶上,功能上不差,只是没有图形界面那么直观。

1.2 家庭版和专业版的能力边界

很多人问"我到底需不需要转专业版",我的建议是先看你实际要干什么。

如果你只是想给家里几个人分账号,每人一个独立桌面、独立文档目录、互不干扰,家庭版完全够用。netplwiz加上 PowerShell 的New-LocalUser,创建本地账户、提权、改密码这些都能做,只是没有那个统一的图形界面。

如果你要管一批机器、要配置密码策略(比如强制最小长度、锁定阈值)、要把某些人加进"远程桌面用户"组、要对接域环境,那专业版是刚需,光靠家庭版的命令拼凑会很别扭。

判断当前版本的方法很简单:Win+R 输入winver,弹窗里会写明是家庭版还是专业版;或者去"设置 → 系统 → 关于"里看。我一般先敲 winver,因为快,而且顺带能看到具体的操作系统内部版本号,排查某些组件问题时有用。

还有一个容易被忽略的点:加入了域的机器,"本地用户和组"仍然是本地概念。域账户由域控统一下发,你在本机的 lusrmgr 里是看不到、也管不了的。但你可以把域账户加进本机的 Administrators 组,让它在这台机器上拥有管理员权限——这个操作本身是在本地做的,属于"本地组的成员可以是域账户"。这两件事别搞混,我在刚接触域环境的时候就在这上面绕了弯路。

2. 先把概念理清:账户、组、权限到底谁管谁

动手之前,有几组概念必须先掰扯清楚。我见过太多人一顿操作猛如虎,结果权限没生效、账号删了权限还在、同名重建之后文件打不开,最后一脸问号。根本原因就是没搞懂账户、组、SID 三者之间的关系。这一节不用背,理解了就行。

2.1 本地账户、微软账户、域账户的区别

本地账户是存在这台电脑本地的,用户名和密码哈希保存在本机 SAM 数据库里。它的权限范围仅限这台机器,换台电脑就不认识了。适合虚拟机、测试机、家用分账号这些场景。

微软账户本质上是把"登录凭据"托管到了云端,本机只保存一个关联标识。用它登录的好处是能同步设置、能进应用商店、能跨设备。但坏处也很明显:在 lusrmgr.msc 里你几乎管不了它,改密码、改登录名这些操作会把你引导到网页端去。

域账户由企业内的域控制器统一管理,本机只是"接受认证"。它能登录这台机器,但账户本身不在这里。

这里有个实操要点:如果你需要在 lusrmgr 里对一个微软账户做完整管理(比如设置密码永不过期、调整它所属的组),通常的做法是先把它切换成本地账户——设置 → 账户 → 你的信息 → 改用本地账户登录。切换之后,它就变成了一条普通的本地记录,lusrmgr 里能正常操作了。这个转换是不可逆的,但账号本身还在,只是不再跟云端关联。我在给客户做测试机的时候就吃过这个亏:一开始用微软账户登录,后面想批量管理账户,发现脚本怎么跑都对不上号,切成本地账户之后一切顺畅。

2.2 内置用户组各自管什么

Win11 里内置的本地组挺多,日常真正会用到的其实就下面这几个。我把它们整理成一张表,比逐个念定义清楚得多。

组名中文显示实际作用日常是否需要手动加人
Administrators管理员完全控制本机,包括装驱动、改系统设置、装软件会,提权就是用这个
UsersUsers标准用户的基础组,能运行程序、改自己的设置一般不用,创建账户时默认就在
GuestsGuests极低权限,默认禁用基本不用
Remote Desktop Users远程桌面用户允许通过网络远程登录这台机器按需,远程办公常用
Backup Operators备份操作员绕过文件权限做备份还原少数备份场景
Hyper-V AdministratorsHyper-V 管理员管理 Hyper-V 虚拟机而不需要完整管理员权限搞虚拟机的人会用到
Performance Log Users性能日志用户采集性能计数器数据排障时偶尔用

需要特别说明的是:在中文版 Win11 里,这些内置组的名字仍然是英文(Administrators、Users、Guests),只是描述被本地化成了中文。所以你在命令行里必须敲英文组名,写"管理员"是不认的——这是新手最常见的报错来源之一。我在第一次写批处理的时候,就因为写了net localgroup 管理员而反复报"系统找不到指定的组名",后来才反应过来要把组名和显示名分开看。

2.3 SID:删了再建同名账户为什么权限全丢

这是账户管理里最深、也最容易被忽略的一个坑,值得单独讲。

Windows 不靠用户名认人,靠的是SID(安全标识符)。每个账户创建时,系统会分配一串唯一的 SID,形如S-1-5-21-...-1001。你给某个文件夹设了权限只允许用户 Alice 访问,实际写进 ACL(访问控制列表)的是 Alice 的 SID,不是"Alice"这三个字。

现在问题来了:你把 Alice 这个账户删掉,然后在同一台机器上重新建一个也叫 Alice 的账户。系统会分配一个全新的 SID,后三位数字递增。于是新 Alice 拿着新 SID 去访问那个文件夹,系统一比对:SID 对不上,拒绝访问。文件夹的属性里会显示一条"未知账户 (S-1-5-21-...-1001)",看着特别瘆人。

我遇到过一次相当典型的场景:帮朋友的旧电脑换主人,直接把原主人账户删了、用同样的名字建了新账户,结果电脑里那个"共享素材"文件夹怎么都进不去,属性里一堆天书。最后是手动把旧的未知 SID 条目的权限移除,再把新账户加进去才解决。

经验:如果只是想换个使用者,而机器里已经有大量按原账户 SID 配置的权限和加密数据,最稳妥的做法是直接改账户名(lusrmgr 里右键 → 重命名),而不是删除后重建。这样 SID 保持不变,所有历史权限、加密证书、配置文件都能接着用。删除再重建只适合那种账户从来没被授予过特殊权限的场景。

顺带说一句,用户配置文件目录C:\Users\Alice也是跟 SID 绑定的。删除账户后这个目录不会自动消失,会变成一堆残留。清理方法见第 6 节。

3. 创建本地用户:图形界面与命令行两条路

概念理清了,开始动手。创建本地用户这件事,我强烈建议两种方法都要会:图形界面日常用着顺手,命令行在批量场景和远程操作时是不可替代的。而且命令行往往能暴露图形界面藏起来的选项(比如密码永不过期、账户永不过期),理解得更透。

3.1 lusrmgr.msc 图形化新建流程

完整步骤如下,专业版用户可以直接照做。

第一步,Win+R 输入lusrmgr.msc回车。如果提示 UAC 提权,点"是"。窗口打开后,左侧能看到"用户"和"组"两个节点。

第二步,点"用户"节点,右侧会出现当前所有本地账户。注意看一下图标上的小箭头:带向下箭头的是被禁用的账户(比如内置的 Administrator 默认就是禁用状态),没箭头的才是正常账户。

第三步,在右侧空白处右键 → "新用户",或者点菜单栏的"操作 → 新用户"。弹出的对话框里有这几项:

  • 用户名:登录用的名字,建议用英文或拼音,避免空格和特殊符号,某些老软件对中文用户名支持很差。
  • 全名:显示用的名字,可以中文,随便填。
  • 描述:备注,比如"家用-视频剪辑专用",以后自己看得懂。
  • 密码 / 确认密码:两遍输入,必须一致。
  • 用户下次登录时须更改密码:勾上之后,这个人首次登录必须改密码。
  • 用户不能更改密码:勾上之后密码被锁死。
  • 密码永不过期:勾上之后不受密码过期策略约束。
  • 帐户已禁用:勾上就建一个不激活的账户。

第四步,点"创建"。对话框不会关闭,方便你接着建下一个,全部建完点"关闭"。

这里有三个复选框的坑必须说清楚。"用户下次登录时须更改密码"和"密码永不过期"这两个如果同时勾选,是互相矛盾的,Windows 会弹窗报错让你取消一个。我在给测试机建服务账号的时候就踩过:明明是给某软件跑后台用的账户,密码不能过期、也不能要求改密码,结果两个都勾了,反复报错,后来才明白这俩逻辑上冲突。服务类账号正确的组合是:取消"下次登录须更改密码",勾上"密码永不过期",同时"用户不能更改密码"也建议勾上,免得有人手贱改了密码把服务搞挂。

3.2 net user 与 PowerShell 命令对照

命令行这块,我给你两套方案,看场景选。

老牌的 net 命令,几乎所有 Windows 版本通用:

:: 创建一个本地用户,密码为 P@ssw0rd2024 net user alice P@ssw0rd2024 /add :: 加上备注 net user alice /comment:"家用-客厅主机" :: 设置密码永不过期 wmic useraccount where "name='alice'" set PasswordExpires=false :: 把 alice 加入管理员组 net localgroup Administrators alice /add :: 查看当前所有账户 net user :: 查看某个账户的详细信息(含最后登录时间) net user alice

net user的老毛病在于,它没有直接的"密码永不过期"开关,得靠wmic补一刀。而 wmic 在较新的 Win11 里被标记为弃用,虽然还能用,但官方是建议迁移到 PowerShell 的。

PowerShell 的 LocalAccounts 模块,更现代也更清晰:

# 创建本地用户 $pwd = ConvertTo-SecureString "P@ssw0rd2024" -AsPlainText -Force New-LocalUser -Name "alice" ` -Password $pwd ` -FullName "Alice" ` -Description "家用-客厅主机" ` -PasswordNeverExpires ` -AccountNeverExpires # 加入管理员组 Add-LocalGroupMember -Group "Administrators" -Member "alice" # 查看所有本地用户 Get-LocalUser # 查看某个组的成员 Get-LocalGroupMember -Group "Administrators" # 禁用账户(比删除更安全,保留 SID 和配置文件) Disable-LocalUser -Name "alice" # 删除账户 Remove-LocalUser -Name "alice"

PowerShell 这套的好处是一目了然,-PasswordNeverExpires、-AccountNeverExpires直接写在参数里,不用再绕 wmic。而且它返回对象,能直接接管道做筛选,比如Get-LocalUser | Where-Object {$_.Enabled -eq $false}就能列出所有被禁用的账户。

注意:PowerShell 的 LocalAccounts 模块需要管理员权限运行。普通权限下执行New-LocalUser会直接报"拒绝访问"。正确姿势是开始菜单搜索"终端"或"PowerShell",右键 → "以管理员身份运行"。

顺带提一句热词里经常出现的"cmd 如何切换到管理员":最省事的办法是 Win+X 然后按 A("终端(管理员)"),或者按住 Ctrl+Shift 再点开始菜单里的终端图标。别去折腾什么 runas 提权技巧,那是另一回事,而且很容易把当前会话搞乱。

3.3 密码策略、密码提示与首次登录

创建完账户,第一次登录可能会撞上几个提示,这里提前打个预防针。

"密码不满足密码策略要求":这条通常出现在你输了一个太简单的密码时。默认情况下,Win11 的本地策略要求密码至少 6 位,且包含大小写字母、数字、符号中的三类。如果你在纯家用环境,觉得这要求太烦,可以用管理员权限执行:

net accounts /minpwlen:0

把最小长度改成 0,密码策略基本就形同虚设了。但我要说清楚,这只适合隔离的测试环境或者家里那台不连外网的机器。任何联网的、存有个人资料的机器,都不建议这么干,弱密码被撞开是真实会发生的。

"密码提示":图形界面创建账户时,密码提示是选填的。它存在 SAM 里,任何人登录界面都能看到。所以千万别写"我的生日"这种,等于自己把答案贴门上。要么留空,要么写一句只有你自己懂的暗语。

首次登录的漫长等待:新账户第一次登录时,系统会在C:\Users\下创建配置文件目录,还可能要准备开始菜单布局、预装应用初始化,这个过程在机械硬盘的机器上能磨蹭好几分钟,屏幕上就转圈。这不是卡死,等就是了。我见过有人等了两分钟强行断电,结果配置文件创建到一半,下次登录直接报"用户配置文件服务登录失败",只能重建账户。

实操心得:如果你要给一台机器开好几个账户,建议一次性建完,然后逐个登录一遍,把配置文件目录都预热出来。这样以后切换用户时不会有"第一次登录特别慢"的体验落差,运维交接的时候也省得解释"这机器切账号怎么这么卡"。

4. 普通账户提权为管理员

创建账户只是第一步,很多人真正卡住的地方是"怎么把普通账户变成管理员"。设置面板里那个"更改账户类型"的按钮有时候是灰的,有时候点了没反应,还有时候明明改了却还是要输密码。这一节把提权这件事从头到尾讲清楚。

4.1 加组操作与生效条件

提权的本质非常简单:把账户加进 Administrators 组。就这一步,没有别的机制。

图形界面做法:lusrmgr.msc → 左侧点"组" → 右侧双击"Administrators" → 点"添加" → 在输入框里填账户名 → 点"检查名称"确认 → 确定 → 确定。

命令行做法:

net localgroup Administrators alice /add :: 查看结果 net localgroup Administrators

PowerShell 做法:

Add-LocalGroupMember -Group "Administrators" -Member "alice"

三种方式效果完全一样。但这里有三个非常容易踩的坑:

坑一:必须用管理员权限执行。普通账户执行net localgroup ... /add会报"发生系统错误 5,拒绝访问"。

坑二:组名必须写英文 Administrators。中文界面里它显示成"管理员",但命令行不认中文。这是我见过的最高频报错,报错信息是"系统找不到指定的本地组"。

坑三:提权后需要重新登录才完全生效。这一点最反直觉。你把 Alice 加进管理员组,Alice 当前已经登录的会话里,那个访问令牌还是旧的(标准用户令牌),所以你会觉得"加了没用"。注销后重新登录,系统才会在登录时重新计算组关系,签发一个带管理员组的新令牌。我当初就是因为这个,反复加了好几次组还以为命令写错了,其实人家早就加上了。

4.2 管理员也弹UAC:令牌拆分的原理

很多人(包括几年前的我自己)都有个困惑:既然我这个账户已经是管理员了,为什么打开个程序还弹"你要允许此应用对你的设备进行更改"?是不是没提权成功?

不是。这是UAC(用户账户控制)的设计,跟你的组身份不冲突。

原理是这样的:当一个管理员账户登录时,Windows 会给它签发两个访问令牌——一个完整权限的管理员令牌,一个被削减过的标准用户令牌。默认情况下,系统只激活那个标准用户令牌来跑桌面和大部分程序。只有当某个操作需要管理员权限时(装软件、改系统目录、改注册表敏感项),系统才会弹 UAC 窗口,问你确认之后,才把那个完整的管理员令牌挂上去执行。

这个设计的意图很直接:防止恶意程序在你不知情的情况下拿到完整权限。哪怕你账户是管理员,一个悄悄下载回来的程序默认也只能用标准用户令牌跑,改不动系统关键位置。这就是为什么"是管理员"和"不弹 UAC"是两回事。

想要彻底不弹,就去用户账户控制设置里把滑块拉到最低。我不建议这么干,那等于主动拆掉最后一道闸门。如果是自动化脚本、批处理需要在无人值守情况下提权运行,正确做法是用计划任务:创建任务时勾上"使用最高权限运行",这样任务启动时就是完整管理员令牌,不会弹窗。这个方法我在部署批处理脚本时用了很多次,比什么 runas 技巧稳得多。

另外热词里提到过一个很常见的困惑:"同一个软件,Win11 上不需要输入管理员密码,为什么?"——因为你的账户本身就是管理员,触发 UAC 时弹的是确认框(是/否),不是密码输入框。标准用户账户才会被要求输入某个管理员的密码。这两个弹窗长得像但含义完全不同。

4.3 降权、禁用与删除账户的正确姿势

提权会了,反过来操作也要会,而且这里更容易伤到人。

降权就是从 Administrators 组里把人移除:

net localgroup Administrators alice /delete

注意命令是/delete不是/remove,这是 net 命令的一个小脾气。PowerShell 里对应的是:

Remove-LocalGroupMember -Group "Administrators" -Member "alice"

禁用账户是比删除更温和的做法。Disable-LocalUser -Name "alice"或者 lusrmgr 里右键属性勾"帐户已禁用"。这个账户从此登录不了,但 SID 保留、配置文件保留、它所拥有的文件权限依然有效。临时停用某人账号用这个,别用删除。

删除账户要谨慎,尤其你要删的那个人是当前登录用户时,系统会直接拒绝——"无法删除当前登录的用户"。想删自己得先切到另一个管理员账户。

删除之前,有两件事建议先做。一是确认这个账户名下没有加密文件或者绑定的证书私钥,删了可能就再也解不开了。二是如果这个账户曾经是很多文件的属主,删之前最好先把那些文件的所有者转移给别人,不然会有一堆访问受限的麻烦。

还有一个不那么明显的问题:唯一的那个管理员账户能不能删?如果系统里只剩最后一个管理员账户,Windows 会阻止你删除它或降权它,报"不能删除唯一的管理员"。这是保护机制,避免你把所有管理员都干掉、把自己锁在门外。我建议每个人至少保留两个管理员账户:自己的常用账户,以及一个备用的应急管理员,密码写在安全的地方。这样万一常用账户出问题,还有个后门能进。

关于热词里常出现的"内置 Administrator":这个账户默认是禁用状态。有些人为了图方便用net user administrator /active:yes把它激活,然后拿它当日常账户用。我不推荐这么做,因为内置 Administrator 不受 UAC 限制(没有令牌拆分),任何程序都是直接满权限运行,等于把安全闸门拆了。真要用,也应该是临时排障用完立刻关掉。

5. 批量创建用户的实操方案

单开一两个账户,图形界面点一点就完事了。但如果要一次性建二三十个账户——比如给培训教室的机器、给测试环境、给一批新入职的同事——挨个点就是折磨自己。这一节讲批量方案,我在机房部署时用这套流程省下了大把时间。

5.1 CSV + PowerShell 循环脚本

最推荐的方式是用表格驱动。先准备一个 CSV 文件,比如users.csv,内容长这样:

Name,FullName,Password,Group,Description test01,测试账号01,P@ssw0rd2024!,Users,培训用01 test02,测试账号02,P@ssw0rd2024!,Users,培训用02 test03,测试账号03,P@ssw0rd2024!,Administrators,培训用03(管理员) test04,测试账号04,P@ssw0rd2024!,Remote Desktop Users,远程接入账号

然后用一段脚本读它、循环建号:

# 必须以管理员身份运行 $csv = Import-Csv -Path "C:\temp\users.csv" foreach ($u in $csv) { $securePwd = ConvertTo-SecureString $u.Password -AsPlainText -Force if (Get-LocalUser -Name $u.Name -ErrorAction SilentlyContinue) { Write-Host "跳过(已存在):$($u.Name)" -ForegroundColor Yellow } else { New-LocalUser -Name $u.Name ` -Password $securePwd ` -FullName $u.FullName ` -Description $u.Description ` -PasswordNeverExpires ` -AccountNeverExpires Add-LocalGroupMember -Group $u.Group -Member $u.Name Write-Host "已创建:$($u.Name) -> $($u.Group)" -ForegroundColor Green } }

这几行看着简单,但里面有讲究。

-ErrorAction SilentlyContinue那一段是必须的。因为脚本可能被重复执行,如果账户已经存在,New-LocalUser会直接抛异常中断整个循环,后面的人全建不出来。加上存在性判断,脚本就变成了幂等的——跑一次和跑十次结果一样,只补缺的、不动已有的。这个思路在运维里非常重要,我吃过不止一次亏:一个没做幂等判断的脚本在中途失败后重跑,前一半直接报错崩掉。

密码里带感叹号要小心。CSV 里的P@ssw0rd2024!在 PowerShell 双引号字符串里不会被特殊处理,但如果同样的密码出现在批处理里,!就可能被解析掉。这是我用 bat 写批量脚本时踩过的坑,密码少了字符,登录死活失败。现在我都统一用 PowerShell 做这件事。

组名必须和目标机上的实际组名完全一致。CSV 里写Administrators没问题,写Remote Desktop Users也有限制:这个组在有防火墙和网络配置文件约束的机器上,光加组还不够,还得去"设置 → 系统 → 远程桌面"里把开关打开,并且确保防火墙规则放行。加组只是给权限,不负责开门。

5.2 计划任务与命令行批处理版本

有些半自动化的场景,比如新机器克隆之后需要自动建号,这种可以在系统首次启动时跑脚本。做法是创建一个批处理文件,然后注册为开机运行的计划任务,勾上"使用最高权限运行"。

批处理版本大概长这样:

@echo off setlocal set /a i=1 :loop if %i% GTR 20 goto end set UNAME=lab%i% net user %UNAME% P@ssw0rd2024! /add >nul 2>&1 if errorlevel 1 ( echo 跳过已存在账户:%UNAME% ) else ( net localgroup Users %UNAME% /add >nul 2>&1 echo 已创建:%UNAME% ) set /a i+=1 goto loop :end echo 批量创建完成 pause

这段代码的>nul 2>&1是把命令输出全部丢掉,避免刷屏。errorlevel 1用来判断上一条命令是否失败,从而识别"账户已存在"。这个写法在批处理里是最朴素的幂等。

至于注册计划任务,图形界面走"任务计划程序 → 创建任务 → 常规 → 勾选'使用最高权限运行' → 触发器设置为'计算机启动时' → 操作指向这个 bat"。命令行可以用schtasks,但那个参数又多又容易写错,我一般还是走图形界面,一次配好就不用管了。

实操提醒:这类自动建号脚本里千万别写死明文密码然后留在磁盘上。用完就删,或者至少把脚本放在只有管理员能读的目录里,加个 NTFS 权限限制。机房环境尤其要注意,很多人图省事,脚本和密码就晾在桌面上,等于把钥匙插在门上。

5.3 批量操作的安全与命名规范

批量建号除了技术,还有规范问题。这些是我在实践中被坑过之后总结出来的。

命名规则要定好。建议统一前缀加序号,比如lab01、lab02,或者按用途test-video-01。不要用中文名,不要带空格,不要用特殊符号,长度控制在 20 字符以内。一旦定好就别改,因为后面所有脚本、权限配置、文档都会引用这些名字。

密码要区分场景。批量账户的密码如果是同一个,在隔离的测试环境里可以接受;只要接入任何共享网络,就必须做到一账户一密码,并且首次登录强制修改。别偷这个懒。

建完立刻验证。跑完脚本别急着关窗口,至少要验证三件事:账户数量对得上((Get-LocalUser).Count)、组归属正确(Get-LocalGroupMember -Group Administrators)、能用其中一个账户真实登录一次。我遇到过一次脚本"看起来跑完了"但只建了前三个的情况,原因就是 CSV 里有一行的组名拼错,脚本遇到异常提前退出了。加个-ErrorAction Stop配合 try/catch 会更安全,出错能立刻知道是哪一行。

记录变更。批量操作最怕的就是事后没人知道到底建了多少、都建给了谁。建完之后导出一份账户清单存档:

Get-LocalUser | Select-Object Name, Enabled, LastLogon, Description | Export-Csv -Path "C:\temp\local_users_$(Get-Date -Format yyyyMMdd).csv" -NoTypeInformation -Encoding UTF8

这个习惯坚持下来,将来排查问题时能省很多事。

6. 常见问题与排查速查表

这一节把前面零散提到的坑集中整理一下,方便你直接查。这些都是我自己真金白银踩出来的,不是照抄文档。

6.1 报错对照与定位思路

报错/现象大概率原因解决方式
找不到lusrmgr.msc家庭版没有这个管理单元用netplwiz或 PowerShell 的 LocalAccounts 模块
发生系统错误 5,拒绝访问命令没用管理员权限执行Win+X 选"终端(管理员)"重跑
系统找不到指定的本地组组名写了中文"管理员"改用英文Administrators
密码不满足密码策略要求密码太短或复杂度不够换复杂密码,或net accounts /minpwlen:0(仅限测试环境)
提权后感觉没生效当前会话令牌还是旧的注销并重新登录
无法删除当前登录的用户你要删的是自己切换到另一个管理员账户再删
修改账户类型按钮是灰的微软账户或权限不足先切换为本地账户,或用 lusrmgr 操作
新账户登录特别慢首次登录正在创建配置文件正常等待,别断电
共享文件夹提示无权限且 SID 显示异常删号重建导致 SID 不一致手动清理旧 SID 权限条目,或改用重命名账户
远程桌面加组后仍连不上只加了组,没开远程桌面开关/防火墙设置里打开远程桌面,检查防火墙规则

这张表建议收藏。九成的问题都在这十行里。

6.2 配置文件残留与"这账户删不干净"

删除账户之后,C:\Users\下那个同名文件夹通常还在,而且你直接用资源管理器删还会报权限不足。原因是这个目录的属主是那个已经消失的 SID,当前账户没权限动它。

正确的清理方式是走用户配置文件管理:Win+R 输入sysdm.cpl→ "高级"选项卡 → "用户配置文件"区域的"设置" → 在弹出的列表里选中那个已删除账户对应的条目(通常显示为"未知账户"或原用户名)→ 点"删除"。这样系统会连注册表里的 ProfileList 条目一起清掉,比手动删文件夹干净得多。

如果那个条目已经不在列表里了,只剩个文件夹,那就得手动接管权限:右键文件夹 → 属性 → 安全 → 高级 → 所有者旁边点"更改" → 输入当前管理员账户名 → 勾选"替换子容器和对象的所有者" → 确定 → 回到安全选项卡授予自己完全控制 → 再删除。

这套"取得所有权"的流程用起来很频繁,热词里那个"管理员取得所有权右键菜单"就是干这个的——把这段操作做成右键菜单项,一键完成。它的本质就是往注册表里写一条HKEY_CLASSES_ROOT\*\shell下的项,关联一个调用takeown和icacls的命令。我个人不太喜欢装这类右键增强,因为它会出现在所有文件上,菜单变得很长。真要用,建议只加在目录(Directory\shell)上,别加在文件类型上。而且那个.reg文件导入前一定要先备份注册表,我见过有人导入了来路不明的注册表文件,结果开始菜单变成好几年前的样子,只能系统还原。

6.3 生活类比:把账户体系想象成一栋写字楼

讲了这么多技术细节,我用一个类比把它串起来,方便记忆。

把整台电脑想象成一栋写字楼。用户账户就是大楼里的门禁卡,每张卡有自己的编号(SID)。用户组就是楼里的权限等级——"管理员组"是物业人员,能进机房、能改门禁系统;"Users 组"是普通租户,只能进自己的办公室和公共区域。文件夹权限就是每扇门上贴的名单,上面写的是卡的编号,不是持卡人的名字——所以你把卡注销了重新办一张同名卡,编号变了,门禁系统照样不认。

UAC就是前台那个保安:就算你挂着物业工牌,要进机房他还是得确认一下"你确定要进去?",确认之后才刷卡放行。删除账户相当于注销门禁卡,但办公室里的东西还在,只是没人有权进去了——所以要先把东西搬出来或者把门锁重新配。内置 Administrator则是那把从不使用的总钥匙,一直锁在保险柜里,能不开就不开。

想明白这个类比,前面那些 SID 对不上、提权不生效、配置文件残留的问题,其实都是同一件事的不同表现。

7. 我在实际维护中的几个习惯

最后分享几个日常维护里真正管用的做法,都是从小麻烦里攒出来的。

第一,给自己的常用账户也开一个备用管理员。不用它登录,只在需要时用。密码写在一张纸上锁抽屉里,或者存在密码管理器里。这样万一常用账户被锁、密码忘了、配置文件坏了,你还有一条路可以进去修。这个习惯救过我一次——某台机器装驱动装到一半蓝屏,重启后常用账户的配置文件损坏登不进去,全靠备用管理员进去重建了配置文件。

第二,账户名的编码风格一开始就定死。是zhangsan还是zhang.san还是zs001,定下来之后所有机器统一。混用的结果是权限配置、脚本、文档全乱,后期想统一就得一个个改。我接手过一套环境,账户名同时存在三种风格,光整理就花了一整天。

第三,定期跑一次账户清单导出。前面给过命令。把导出的 CSV 按月份存好,一旦发现异常登录或者有不明账户,一对比就知道是哪天多出来的。这个做法成本极低,收益很高。

第四,能用禁用就别删除。离职、临时停用、项目结束,这些场景一律用Disable-LocalUser。保留 SID 意味着历史权限、文件属主、加密证书都还在,将来如果这个人回来了或者要导出他的数据,改个名字重新启用就行,不用重新配一遍权限。

第五,改注册表类操作之前先导出备份。不管是"取得所有权"右键菜单,还是调整登录界面、修改右键菜单显示方式,这些注册表改动的共同特点是:改的时候很爽,出问题的时候很难回退。养成改前导出的习惯,真出事的时候导入回去就行。

账户和组这块内容看着简单,但它是整台机器权限体系的地基。地基没打牢,后面装软件报权限错、共享文件夹访问不了、远程桌面连不上,全都会找上门来。把这几节的操作路径和原理过一遍,遇到问题能自己定位,比记住十个具体命令有用得多。

返回列表