0

Ich habe ein Skript geschrieben, das funktioniert. Es erstellt Benutzerkonten, legt Kennwort, Orte in korrekte OU, erstellt Heimat Laufwerk Ordner und Unterordner darin. Benutzer können sich anmelden und haben keine Probleme, aber eine Sache, die ich bemerkt habe, ist, dass Benutzer zu einem Unterschied Laufwerk von dem in AD angegebenen zuordnen. Skriptblock dafür ist:Laufwerkszuordnung falsch, wenn AD-Benutzer mit Powershell erstellt

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

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

Wie ich bereits erwähnt habe, funktioniert alles andere gut. Dieses Problem ist, dass selbst in AD, dass Y der Laufwerksbuchstabe ist, aber wenn sich Benutzer anmelden, werden sie stattdessen Z zugeordnet. Irgendwelche Ideen, warum das passieren kann? Es wird auch nicht von einem GPO verwaltet.

Vielen Dank!

Antwort

0

Haben Sie ein anderes Skript? überprüfen Sie, ob es herumspielen.

Testen Sie dieses Skript, um die Anzeigenerstellung zu vereinfachen.

$homedrive = "Y:" 

statt: 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

Vielen Dank für die Antwort. Es gibt kein anderes Skript, das damit zu tun hat. Es fing gerade an zu geschehen. Irgendwelche anderen Ideen? –

+0

können Sie einen Benutzer aus dem obigen Skript erstellen und sehen? Bei Änderungen können Sie repadmin-Änderungen verwenden. repadmin/showjobmeta dc01 "cn = Benutzer", ou = "someou", dc = "dc01" dc = "com" Sie können auch die Überwachung aktivieren und in den Protokollen sehen, welche Änderungen verursacht wurden – DisplayName

0

sollten Sie schreiben

$homedrive = "Y" 
1

ich dieses Problem mit Antrieben Mapping als Z aufweist, wurde: ich neue Benutzer mit einem vb erstellen. net Windows-Anwendung und ich hatte Homedrive als M anstelle von M:

Das hat mein Problem behoben !! Das gleiche gilt für vb.net wie Powershell.

Verwandte Themen