听起来域上的 AD 配置文件正在覆盖用户定义的变量。我看到您的屏幕截图显示您已连接到 eait.org.edu.au 域。那将是您问题的根源。只是在这里包含一些我在其他地方发现的细节,这可能对你有帮助:
HOMEDRIVE、HOMEPATH 和 HOMESHARE 通过 Active Directory 设置和更新。HOMEDRIVE 和 HOMEPATH 即使没有在帐户上设置主驱动器也已设置;但是它们将被 AD 中设置的任何用户帐户属性覆盖。
另请参阅这些知识库文章:
http://support.microsoft.com/kb/841343
http://support.microsoft.com/kb/237566
http://support.microsoft.com/kb/101507
在旁注中以另一种方式解决该问题:
- 我过去创建了一个新的 Windows 命令行 shell 可执行文件实例,它自动运行自定义脚本,因此每次启动 shell 时,环境变量都可以被覆盖。
- 为此,您只需将发布的用于更改环境变量的代码放入批处理脚本中,存储在您喜欢的任何位置,然后通过转到属性> 编辑用于启动 shell 的快捷方式 > 然后更改目标框: %SystemRoot%\system32\cmd.exe /K "C:\Documents and Settings\Administrator\My Documents\customshellscript.cmd" (显然 /K 之后的路径部分是您自定义脚本的位置)
这样,如果您仍然在控制台上使用 openSSH,它将始终正确设置 homedrive。