본문 바로가기
기술자료 (KB)/Active Directory (AD)

AD 정보 백업 및 복원

by 이완주 2021. 5. 27.

[문의사항]

AD 정보를 일괄 수정하였을 경우 기존 정보를 백업하고 복원 방법 문의

원하는 값은 계정 정보의 cn, displayname, description 값을 백업 하고 복원 문의

 

[문의답변]

문의 주신 사항에 대한 MS 백업 방법과 복원 방법은 아래 링크에 방법으로 지원 가능합니다.

시스템 상태 완전 복구 백업 | Microsoft Docs

 

단 시스템 상태 백업은 특정 OU Object  단위의 복원을 지원하지 않습니다.

 

해당 문의의 내용은 아래 OU 정보에 대한 백업만을 원하시는 거라면 Powershell 혹은 CSVDE 명령어로 csv 파일로 해당 OU 정보를 저장하여 인사 시스템에서 변경 사항과 비교하여 값을 확인 하는 것이 좋을 듯 합니다.

 

제가 추천하는 방법은 아래 명령어로 간단하게 csv 파일로 보낼 수 있습니다.

csvde -m -d "ou=gsoft,dc=gsoft,dc=local" -u -f out.csv

 

특정 OU에 해당 값이 명확한 경우는 아래와 같이 Powershell 명령어로 지정하여 백업하시는게 좋을 듯 합니다.

 

사용자 계정 정보를 수집하여 userinfo.csv 파일로 저장 후 gridview로 출력한 내용 입니다.

저는 엑셀보다 GridView가 편한거 같더라구요.

 

"OU=users,OU=gsoft,DC=gsoft,DC=local" 값을 원하는 DN  으로 바꾸시면 됩니다.

물론 저장 위치나 파일명도 원하시는대로 변경 가능합니다.

 

Get-ADUser  -Properties description,displayname, cn -Filter * -SearchBase "OU=users,OU=gsoft,DC=gsoft,DC=local" `
| select samaccountname, cn, displayname, description, distinguishedName `
| Export-Csv c:\temp\userinfo.csv -NoTypeInformation -Encoding UTF8
 
Import-Csv -Path "C:\temp\userinfo.csv" | Out-GridView

 

 

 

해당 csv 파일을 가지고 있다면 원복 시키는 방법으로 저장한 userinfor.csv 파일을 불러와 표시이름(displayname) 과 설명(description) 값을 일괄 변경 합니다.

Import-Csv "C:\temp\userinfo.csv" | ForEach-Object `
{
    Set-ADUser -Identity $_.samaccountname -displayname $_.displayname -description $_.description
}

 

CN 값은 이름 변경으로 ADObject 값 자체의 이름을 변경한다고 보시면 됩니다.

아래와 같이 실행하면 이름이 원래대로 변경됨을 확인 할 수 있습니다.

Import-Csv "C:\temp\userinfo.csv" | ForEach-Object `
{
    Get-ADUser -Identity $_.samaccountname | Rename-ADObject -NewName $_.cn
}

 

댓글