文章目录
参考链接
reference link1
reference link2
副作用声明
- 如果您将原用户的
家目录
重名名了,那么已知一些软件(配置)会受到重大影响 wsl
(需要考虑)powershell
所安装的功能模块- (当然如果您会软连接的技巧,或许可以保住原来的样子)
- 后面会提供一些修复手段
- 比较保守的做法参考
共需要修改3个地方
- 这三个地方都需要通过
另一个管理员账户
来修改 - 如果
lusrmgr
中的用户名没改,可能导致wsl将丢失信息(发生错误)
(这里先提一下后果,后面会介绍修改)
eg.比如将userNameOld改为userNameCurrent
管理员账户准备工作
- 进入另一个管理员账户(可以自己新建一个管理员账户)
- 有了当前账户之外的管理员账户后,注销(即登出logout(命令:
logoff.exe
)当前用户
step1:原用户名对应的家目录名的处理
- 我原先的的方案是之间在另一个临时管理员账户中把
C
盘的旧用户目录名修改掉,后来看到其他地方的建议,发觉我这种手法是冒进的,特此强调一下保守一点的做法 - 您可以通过windows软连接(相关文章很多,例如powershell 的
New-Item -Verbose -Force -ItemType junction -Path $Path -Target $Target
;又比如cmd 的mklink
命令,本人都使用较多,已经在其他地方专门介绍)
进入到
C:\users
New-Item -Verbose -Force -ItemType junction -Path <NewUserName> -Target <OldUserName>
本处可以将尖括号中的内容替换为您的实际情况和需求
注意命令中新用户明在前,就用户名写在后者,否则没有效果!
- 将c:\users\目录下的
<userNameOld>
改为<userNameNew>
是一个偏激的操作,由于我一般不用快捷方式启动软件,而且大多装在D盘,没有遇上太大问题;- 但如果您不嫌弃c:/Users目录下有保留旧有的目录的话,可以不做更名,仅仅创建符号链接(软连接)
可以通过Win+r,再输入c:\users
step2:修改本地用户配置信息
- 此时必须再修改注册表,否则无法正常登录被修改的用户的系统
- 可以做如下操作修改注册表:
推荐步骤:
按win+R
输入lusrmgr.msc
点击用户(users
)
按F2
修改名称(注意管理员权限).
- 可以做如下操作修改注册表:
也可通过:鼠标点击方式打开设置
- 控制面板\用户帐户和家庭安全\用户帐户\管理帐户\更改帐户\重命名帐户)
step3:修改注册表
-
按win+R,输入regedit,回车enter
-
在注册表编辑器中定位到以下路径: (可以拷贝粘贴到输入栏中)
- 英文版系统:
computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\profileList
- 中文版系统:
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\profileList
- 英文版系统:
注意是
'\'
(back slash)分隔符,而不是/
.
- 在ProfileList文件夹下,分别点击名字为较长的字符串的文件夹,查看窗口右侧的
ProfileImagePath
键的内容,找到路径为C:/Users/USER1
的键。
- 双击此ProfileImagePath键,修改完,重新登陆USER2帐户
step4(修复工作fix modules invocation)
- (这些配置是在用户名更名操作完成之后的一些修复工作)用户环境变量的修正(比如powershell的模块,以及一些UWP的配置目录(appdata)
这或许可以修复一些由于更改用户名(目录)而导致原有的模块无法调用的问题
这样修改后
-
某些已经有使用痕迹的uwp应用/onedrive就反应不过来(多点击几次)
比如,若干分钟后,onedrive会提示找不到path.../userNameOld
,然后重新设置(登录账户)并选定你想要的同步目录所在位置 -
wsl
可能会收到影响.如果采用软连接而不修改用户名,那么或许wsl可以在新用户名中正常使用,但我未实践