Tôi đang làm việc từ máy trạm Windows 7, với PowerShell v2.0 và đang cố gắng xóa một đối tượng (mồ côi?) Cụ thể khỏi vùng LostAndFound
chứa trong rừng FL R2 2008 và miền có bật Thùng rác Active Directory và không gặp may mắn với bất cứ điều gì .
Điều quan trọng, tôi cần xóa đối tượng này và chỉ đối tượng này (thay vì xóa mọi đối tượng với thuộc IsDeleted
tính, dường như là tất cả những gì tôi có thể tìm thấy trợ giúp).
Tôi cần phải xóa nó, vì để giải quyết mối quan hệ tin cậy bị hỏng, máy tính đã bị tách khỏi miền (có lẽ khiến đối tượng đi đến Thùng rác, sau đó đến LostAndFound
thùng chứa) và chúng tôi muốn cung cấp cho nó tên ban đầu của nó trở lại (dựa trên số thẻ tài sản trên PC). Cố gắng nối lại máy tính với tên miền không đúng với thông báo lỗi dưới đây ( The specified account does not exist
)
và cố gắng đổi tên thành tên chính xác khi tên miền đã bị lỗi với thông báo lỗi bên dưới ( The account already exists
)
Vì vậy, PC thực tế hiện đang ngồi ở đó với một tên không chính xác, mà tôi cần phải khắc phục.
Tuy nhiên, cố gắng xóa đối tượng AD này sẽ dẫn đến lỗi : The specified account does not exist
. Tên phân biệt của đối tượng có \
ký tự (dấu gạch chéo ngược), mà tôi giả sử là do nó nằm trong LostAndFound
thùng chứa, và tôi tự hỏi liệu đó có phải là vấn đề không ... và cách khắc phục nó. Tôi đang chạy vỏ của mình như một domain admin
, xác minh rằng domain admins
nhóm có toàn quyền kiểm soát và quyền sở hữu đối tượng được đề cập và dường như không thể tìm ra cái này.
Đối tượng trong câu hỏi (phần nào được điều chỉnh lại):
Get-ADObject "CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects -Properties *
accountExpires : 9223372036854775807
CanonicalName : MyEmployer.prv/LostAndFound/SomeComputer
DEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6
CN : SomeComputer
DEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6
codePage : 0
countryCode : 0
Created : 12/7/2012 9:25:30 PM
createTimeStamp : 12/7/2012 9:25:30 PM
Deleted :
Description : HP6300
DisplayName :
DistinguishedName : CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=
prv
dNSHostName : SomeComputer.MyEmployer.prv
dSCorePropagationData : {5/21/2014 1:40:31 PM, 12/31/1600 7:00:00 PM}
instanceType : 4
isCriticalSystemObject : False
isDeleted :
LastKnownParent : OU=Workstations,OU=Computers,OU=One of Our Sites,DC=MyEmployer,DC=prv
lastLogonTimestamp : 130451668084269817
localPolicyFlags : 0
memberOf : {CN=PCMilerComputers,DC=MyEmployer,DC=prv}
Modified : 5/21/2014 1:40:54 PM
modifyTimeStamp : 5/21/2014 1:40:54 PM
msDS-LastKnownRDN : SomeComputer
Name : SomeComputer
DEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6
nTSecurityDescriptor : System.DirectoryServices.ActiveDirectorySecurity
ObjectCategory :
ObjectClass : computer
ObjectGUID : 90a13eaa-c7b0-4258-bebb-87b7aed39ec6
objectSid : S-1-5-21-1708945318-605057401-313073093-5882480
operatingSystem : Windows 7 Enterprise
operatingSystemServicePack : Service Pack 1
operatingSystemVersion : 6.1 (7601)
primaryGroupID : 515
ProtectedFromAccidentalDeletion : False
pwdLastSet : 130451667147545072
sAMAccountName : SomeComputer$
sDRightsEffective : 15
servicePrincipalName : {HOST/SomeComputer, HOST/SomeComputer.MyEmployer.prv}
userAccountControl : 4096
userCertificate : [Not included]
uSNChanged : 54007434
uSNCreated : 5004556
whenChanged : 5/21/2014 1:40:44 PM
whenCreated : 12/7/2012 9:25:30 PM
Không có gì tôi đã thử dường như làm việc, và tôi đã cố gắng rất nhiều. Trên lưu ý đó, những gì tôi đã thử, dưới đây.
Đầu tiên, với một lệnh ghép ngắn PowerShell một dòng đơn giản:
Get-ADObject "CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target
"CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Remove-ADObject : The specified account does not exist
At line:1 char:145
+ Get-ADObject "CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject <<<<
+ CategoryInfo : NotSpecified: (CN=SomeComputer\0ADE...MyEmployer,DC=prv:ADObject) [Remove-ADObject], ADException
+ FullyQualifiedErrorId : The specified account does not exist,Microsoft.ActiveDirectory.Management.Commands.RemoveADObject
Sau đó, điều tương tự, tham khảo GUID thay thế.
Get-ADObject "90a13eaa-c7b0-4258-bebb-87b7aed39ec6" -IncludeDeletdObjects | Remove-ADObject
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target
"CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Remove-ADObject : The specified account does not exist
At line:1 char:94
+ Get-ADObject "90a13eaa-c7b0-4258-bebb-87b7aed39ec6" -IncludeDeletedObjects | Remove-ADObject <<<<
+ CategoryInfo : NotSpecified: (CN=SomeComputer\0ADE...MyEmployer,DC=prv:ADObject) [Remove-ADObject], ADException
+ FullyQualifiedErrorId : The specified account does not exist,Microsoft.ActiveDirectory.Management.Commands.RemoveADObject
Sau đó, đọc giá trị thành một biến đầu tiên. (Đã thử với cả GUID và DN, chỉ hiển thị một, vì chúng có cùng một lỗi).
$blah = "90a13eaa-c7b0-4258-bebb-87b7aed39ec6"
Get-ADObject $blah -IncludeDeletedObjects | Remove-ADObject
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target
"CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Remove-ADObject : The specified account does not exist
At line:1 char:60
+ Get-ADObject $blah -IncludeDeletedObjects | Remove-ADObject <<<<
+ CategoryInfo : NotSpecified: (CN=SomeComputer\0ADE...MyEmployer,DC=prv:ADObject) [Remove-ADObject], ADException
+ FullyQualifiedErrorId : The specified account does not exist,Microsoft.ActiveDirectory.Management.Commands.RemoveADObject
Sau đó, tôi nghĩ rằng tôi có thể sống với việc phải gọi DSRM thay vì thực hiện nó một cách tự nhiên.
dsrm "CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=Lost
AndFound,DC=MyEmployer,DC=prv"
Are you sure you wish to delete CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv
(Y/N)? y
dsrm failed:CN=SomeComputer\0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv:The specified account does not exist.
Sau đó, tôi đã nói với địa ngục bằng cách làm cho nó tự động hóa, tôi sẽ chỉ cần nhấp chuột phải và xóa nó thông qua ADSIedit .
Vì vậy, cuối cùng, tôi đang nuốt niềm tự hào của mình và hỏi ở đây. Làm thế quái nào tôi thoát khỏi đối tượng chết tiệt này? Nó rõ ràng tồn tại và sự tồn tại của nó đang gây ra vấn đề, nhưng tất cả những nỗ lực của tôi để xóa nó khỏi Active Directory đều gặp phải những lời nói dối, lời nói dối đáng nguyền rủa và thông báo lỗi.
Cập nhật:
Những thứ khác chưa hoạt động, dựa trên nhận xét, đề xuất và thảo luận với ServerFaulters:
Thoát khỏi 0
, như thể \0
đại diện cho một byte null.
Get-ADObject "CN=SomeComputer`0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
Get-ADObject : No superior reference has been configured for the directory service. The directory service is therefore unable to issue referrals to objects outside this forest
At line:1 char:13
+ Get-ADObject <<<< "CN=SomeComputer`0ADEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -Includ
eDeletedObjects | Remove-ADObject
+ CategoryInfo : NotSpecified: (CN=SomeComputer ADEL...MyEmployer,DC=prv:ADObject) [Get-ADObject], ADException
+ FullyQualifiedErrorId : No superior reference has been configured for the directory service. The directory service is therefore unable to issue referrals to objects outside this forest,Microsoft.ActiveDirectory.Management.Commands.GetADObject
Thoát khỏi toàn bộ \0A
, như thể đó là một sự trở lại vận chuyển hoặc dòng mới, như trong DOS (đã thử với `n,` r, `n`r và` r`n). Tất cả trả về cùng một lỗi, vì vậy chỉ hiển thị một lần.
Get-ADObject "SomeComputer`n`rDEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
Get-ADObject : The object name has bad syntax
At line:1 char:13
+ Get-ADObject <<<< "CN=SomeComputer`n`rDEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
+ CategoryInfo : NotSpecified: (CN=SomeComputer
DEL...MyEmployer,DC=prv:ADObject) [Get-ADObject], ADException
+ FullyQualifiedErrorId : The object name has bad syntax,Microsoft.ActiveDirectory.Management.Commands.GetADObject
Thoát khỏi \0A
dạng thức ăn (vâng, hơi tuyệt vọng).
Get-ADObject "CN=SomeComputer`fDEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
Get-ADObject : Directory object not found
At line:1 char:13
+ Get-ADObject <<<< "CN=SomeComputer`fDEL:90a13eaa-c7b0-4258-bebb-87b7aed39ec6,CN=LostAndFound,DC=MyEmployer,DC=prv" -IncludeDeletedObjects | Remove-ADObject
+ CategoryInfo : ObjectNotFound: (CN=SomeComputer♀DEL:...MyEmployer,DC=prv:ADObject) [Get-ADObject], ADIdentityNotFoundException
+ FullyQualifiedErrorId : Directory object not found,Microsoft.ActiveDirectory.Management.Commands.GetADObject
Sau đó, tôi nghĩ rằng tôi nên xác định xem \0A
nhân vật có phải là vấn đề hay không, vì vậy tôi đã chọn một đối tượng khác mà tôi không quan tâm trong Thùng rác AD có \0A
chuỗi trong đó và cố gắng thổi bay nó đi. Nó đã làm việc.
Get-ADObject -Filter { Name -Like '*DEL:*' } -IncludeDeletedObjects | Remove-ADObject
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target "CN=SomeServer-SomeJackass HP LaserJet 1320
PS\0ADEL:eddb23e7-b8d8-4d00-801f-22d82c169d66,CN=Deleted Objects,DC=MyEmployer,DC=prv".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target "CN=SomeServer-SomeJackass HP LaserJet 1320 PCL
5e\0ADEL:6e72e78f-f110-492c-ad50-91107f6fbd6a,CN=Deleted Objects,DC=MyEmployer,DC=prv".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
$C = Get-ADObject -Filter { Name -Like '*DEL:*' }
chỉ trả lại trẻ mồ côi của bạn? Nếu vậy, làm Remove-ADObject -Identity $C.DistinguishedName
Đó \0
là một terminator null.
The specified account does not exist
lỗi tương tự . Để biết giá trị của nó, tôi cũng đã thử coi \0
byte rỗng (và thoát khỏi nó), cũng như coi việc \A0
trả lại dòng / ngắt dòng (như trong DOS), cũng không có niềm vui. Nhiều nỗ lực đoán và thoát khỏi các \A0
nhân vật đã được đáp ứng The object name has bad syntax
và Directory object not found
. :(
'*CNF:*'
) mọi lúc và nó hoạt động hoàn hảo.