Gå til innhold

[Løst] Script for å flytte Hjemmeområdet for deaktiverte AD brukere


Anbefalte innlegg

Hei!


 


Trenger litt hjelp med et powershell script for å flytte hjemmeområdet for deaktiverte brukere. Her er scriptet jeg har prøvd så langt:



$Users = Get-ADUser -Property HomeDirectory -Filter {Enabled -eq "False"} -SearchBase "OU=Disabled Brukere,DC=domenet,DC=local"

$oldhome = "\\server\brukere\"
$newhome = "\\server\Deaktiverte_Brukere\2017\"

foreach($user in $Users)
{
$path = Join-path $oldhome -childpath $user.SamAccountName
move-item $path $newhome
}

Jeg er ikke så kyndig med powershell i fra før, så det krevde litt hjelp i fra google for å få dette til  :)


 


Takker for svar!


Lenke til kommentar
Videoannonse
Annonse

move-item -path "$path" -destination "$newhome"

 

Glemte helt å skrive feilmeldingen jeg fikk:

Move-item: Source and destination path must have identical roots. Move will not work across volumes.

Det gjelder forresten når jeg prøvde din kode og.

Lenke til kommentar

Ok, foretrekker å bruke Robocopy selv i script.

 

robocopy "$path" "$newhome" /move /MT

 

Hmm, ser ut som at jeg bare får kopiert over innholdet i mappene og ikke selve hjemmemappen under brukere.

Lenke til kommentar

$destination = Join-path $newhome -childpath $user.SamAccountName

 

robocopy "$path" "$destination" /move /MT

 

Se her ja, scriptet fungerer som en drøm nå :D

Takk for god hjelp!

 

Tenker det er på god tid å lære meg powershell, ser at det er mye å hente.

Lenke til kommentar

:thumbs:

 

Absolutt veldig nyttig å kunne en del powershell når man skal administrere og vedlikeholde Microsoft-miljøer.

 

Hmm, en ting til :whistle:

 

Hvordan beholder jeg ACL tilgangene for destinasjon mappene? Robocopy /COPYALL gjelder vel bare for filer og sub-mapper

Lenke til kommentar

/sec

 

Det fungerte ikke, men det er ikke så viktig uansett.

/MOVE parameteret flyttet egentlig bare filer og ikke sub-mapper eller filer som lå under mappene, så jeg inkluderte /E som kopierte mappene først, og alt fungerer fint nå :)

 

Jeg kan inkludere det fullstendige scriptet i tilfeller noen andre trenger det:

$Users = Get-ADUser -Property HomeDirectory -Filter {Enabled -eq "False"} -SearchBase "OU=Disabled Brukere,DC=os,DC=domenet"

$oldhome = "\\server\brukere\"
$newhome = "\\server\Deaktiverte_Brukere\2017\"

foreach($user in $Users)
{
	$path = Join-path $oldhome -childpath $user.SamAccountName
	$destination = Join-path $newhome -childpath $user.SamAccountName
	robocopy "$path" "$destination" /E /move /MT
	Remove-item $path -recurse
}
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...