0

私は素晴らしいスクリプトを書いています。ユーザーアカウントを作成し、パスワードを設定し、正しいOUに配置し、ホームドライブフォルダとサブフォルダを作成します。ユーザーはログインすることができますが問題はありませんが、私が気づいたことは、ユーザーがADで指定されたドライブと異なるドライブにマッピングしていることです。このためのスクリプトブロックは次のとおりです。私が述べたようにADユーザーがPowershellで作成したときにドライブマッピングが正しくない

$homedrivepath = "Server_Path_for_users_data" 
$homedrive = "Y" 

New-ADUser -HomeDirectory "$homedrivepath" -HomeDrive "$homedrive" 

は、他のすべてが正常に動作します。この問題は、ADであってもドライブレターであるYと表示されますが、ユーザーがログインすると、代わりにZ:にマップされます。なぜこれが起こっているのでしょうか?それはGPOなどで管理されていません。

ありがとうございました!

答えて

0

他のスクリプトはありますか?その周辺が乱れていないかどうか確認してください。

このスクリプトをテストすると、簡単に広告を作成できます。 https://gallery.technet.microsoft.com/scriptcenter/Create-AD-user-on-the-go-3b754198

Import-Module activeDirectory 
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
$Firstname = [Microsoft.VisualBasic.Interaction]::InputBox("Enter firstname ") 
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
$Lastname = [Microsoft.VisualBasic.Interaction]::InputBox("Enter Lastname ") 
$PWD=[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
$PWD= [Microsoft.VisualBasic.Interaction]::InputBox("Enter Password ") 
$dnsroot = '@' + (Get-ADDomain).dnsroot 
$OU="CN=users, DC=Domain,DC=COM" 
$SAM = $user.FirstName.Substring(0,1) + $user.LastName #example John snow will be Jsnow 
    #$Sam=$User.FirstName+$User.LastName example john snow will be Johnsnow 
    #$Sam=$User.FirstName example john snow will be John 
    #$Sam= $User.firstName + "." + $User.lastName example john snow will be John.snow 
$Dname="$firstName " + "$lastName" 
$UPN = $Sam + “$dnsroot” 
New-ADUser -Name "$firstName $lastName" -DisplayName $Dname -AccountPassword (ConvertTo-SecureString “$pwd” -AsPlainText -force) -GivenName $FirstName -Path $OU -SamAccountName $SAM -Surname $LastName -UserPrincipalName $UPN -Enabled $TRUE 
Write-Output "User $Firstname has been created" -foregroundcolor Green 
## setting up stuff## 
$user=$sam 
Write-Host "Would you like to set up Home Drive?"  -ForegroundColor Green 
$Response = Read-Host "[Y] Yes, [N] No" 
    If($Response -eq "y") 
{Get-ADUser $user | % { Set-ADUser $_ -HomeDrive "H:" -HomeDirectory ('\\SERVER\home$\' + $_.SamAccountName) }} 


#now create Home folder# 


    if(-not (Test-Path \\server\home$\$User)){ 
     New-Item -Path \\server\home$\$User -ItemType directory 
     } 


#**** setting up Login script* 
Write-Host "Would you like to add Login Script?"  -ForegroundColor Green 
$Response = Read-Host "[Y] Yes, [N] No" 
    If($Response -eq "y") 
{Get-ADUser $user | Set-ADUser -ScriptPath 'yyy.bat'} 


## add to group## 
Write-Host "allow to add to group Group?"  -ForegroundColor Green 
$Response = Read-Host "[Y] Yes, [N] No" 
    If($Response -eq "y") 
{Add-ADGroupMember -Identity Group -Member $user} 
write-host "Sit back and relax all task has been completed"  -ForegroundColor Green 
+0

ありがとうございます。他のスクリプトにこれを混乱させることはありません。それはちょうど起こるようになった。他のアイデア? –

+0

上記のスクリプトからユーザーを作成して表示できますか?変更があった場合は、repadminの変更を使用できます。 repadmin/showjobmeta dc01 "cn = user"、ou = "someou"、dc = "dc01" dc = "com"また、監査を有効にして、 – DisplayName

0

あなたは書く必要があります。

$homedrive = "Y:" 

の代わりに:

$homedrive = "Y" 
1

を私はZとしてドライブマッピングでこの問題を抱えていた。 私はVBを使用して新しいユーザーを作成します。ネットウィンドウアプリケーションと私はMの代わりにMとしてhomedriveを持っていた:

これは私の問題を修正しました! これはpowershellと同じようにvb.netにも適用されます。

関連する問題