Powershell HomeDirectory未在文件服务器文件系统上创建

时间:2014-10-27 16:29:38

标签: powershell active-directory fileserver home-directory

我在使用Powershell并通过cmdlet设置HomeDirectory时遇到了一个奇怪的问题

Set-ADUser -Identity "user" -HomeDirectory "\\fileserver\home$\user"

即使cmdlet正在运行并在AD中设置值,也不会创建文件服务器“\ fileserver \ home $ \ user”上的必要文件夹。

我在初始创作

时也尝试过同样失败
New-ADUser -Name "user" -HomeDirectory "\\fileserver\home$\user"

我已经通过UAC在Exchange服务器上启动了Powershell作为域管理员,并通过

导入了模块ActiveDirectory
Import-Module ActiveDirectory

我没有使用带有NetBIOS主机名的UNC路径,而是尝试了FQDN \ fileserver.domain.local \以及ip adrress \ ip \

如果我使用cd命令通过Powershell输入UNC路径,它也可以工作,我也可以创建目录。

cd \\fileserver\home$
mkdir test_dir

但是,目录不会被创建。 如果我正在使用AD GUI,并尝试更改HomeDirectory路径,则将创建该文件夹。

任何提示? 非常感谢 PS:2008R2 x64,Exchange 2010,1x Exchange,1x AD控制器,1x文件服务器

2 个答案:

答案 0 :(得分:3)

值得一提的是Hey, Scripting Guy! Blog

以下内容
  

请记住,我们所做的只是编辑Active Directory中的字段。该   外国服务器上的文件系统对该信息一无所知   在Active Directory中呈现。当您在中编辑这些字段时   GUI,用户文件夹和权限作为功能配置   该GUI界面中的代码 - 它们不是Active的功能   目录。

很像Paul建议我认为你只需要自己创建文件夹。该文章中链接的是有关为文件共享设置权限的信息。我想你已经完成了。

NEW-ITEM –path "\\fileserver\home$\user" -type directory -force

答案 1 :(得分:0)

这样做的最佳方法是为所有用户创建主文件夹(如果不存在)。创建一个事件ID为4720的计划任务,以自动执行此操作

连接主文件夹路径和驱动器号。

Get-ADUser -filter * | % { Set-ADUser $_ -HomeDrive "H:" -HomeDirectory ('\\server\home$\' + $_.SamAccountName) }

为每个用户创建主文件夹: -

ForEach( $User in (Get-ADUser -filter * | if( -not ( -HomeDrive "H:" -HomeDirectory ('\\server\home$\' + $_.SamAccountName) )