Tôi đã viết tập lệnh powershell ngắn này để đổi tên máy tính thành một phần của chuỗi nhiệm vụ MDT:
Import-Module ActiveDirectory
$AdminUsername = 'domain.com\administrator'
$AdminPassword = 'password' | ConvertTo-SecureString -asPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList $AdminUsername, $AdminPassword
$Domain = Get-ADDomainController –DomainName domain.com -Discover -NextClosestSite
$Site = $Domain.Site
$DomainComputer = Get-WmiObject Win32_BIOS
$Serial = $DomainComputer.SerialNumber
$Computername = $Site + "-" + $Serial
Rename-Computer -NewName $Computername -DomainCredential $cred
Khi MDT chạy tác vụ này, nó sẽ chạy nó với tư cách quản trị viên cục bộ. Tôi nhận được lỗi sau khi nó cố tải Mô-đun AD.
Warning: Error initializing default drive: 'The server has rejected the client credentials.'.
Tôi có thể nhập mô-đun tốt sau khi chuỗi nhiệm vụ kết thúc từ máy khi đăng nhập với tư cách quản trị viên tên miền, nhưng không phải là quản trị viên cục bộ của máy. Có cách nào để chạy chuỗi nhiệm vụ MDT với tư cách là quản trị viên tên miền hoặc nâng cao các đặc quyền của quản trị viên cục bộ trong chuỗi nhiệm vụ không?
Cảm ơn trước cho bất kỳ trợ giúp bạn có thể cung cấp,
Mx
CẬP NHẬT: 10/13/2015
Tôi đã quyết định chuyển sang sử dụng mô-đun AD trong tập lệnh MDT của mình và ngay sau khi đăng bài này đã nghĩ ra một cách khác để thực hiện điều này. Kết quả của tôi với mô-đun AD là không thể dự đoán tốt nhất. Tôi muốn đăng nó ở đây cho hậu thế. Tôi thêm phần này vào thư mục Khôi phục trạng thái> Tác vụ tùy chỉnh dưới dạng "Chạy tập lệnh Powershell" trong chuỗi nhiệm vụ MDT của tôi và sau đó thêm tác vụ Khởi động lại máy tính ngay bên dưới nó. Nó đã hoạt động như một cơ duyên trên triển khai hơn 1600 khách hàng trong năm qua.
$type = [System.DirectoryServices.ActiveDirectory.DirectoryContextType]"Domain"
$context = New-Object System.DirectoryServices.ActiveDirectory.DirectoryContext($type, "yourdomain.edu", "domainadmin", "yourpasswordhere")
$domain = [System.DirectoryServices.ActiveDirectory.Domain]::GetDomain($context)
$DC = $domain.FindDomainController().Name
$Prefix = $DC.Substring(0,5)
$DomainComputer = Get-WmiObject Win32_BIOS
$Serial = $DomainComputer.SerialNumber
$Computername = $Prefix + "-" + $Serial
$Password = "yourpasswordhere"
$Username = "yourdomain.edu\domainadmin"
$Computer = Get-WmiObject Win32_ComputerSystem
$Computer.Rename($Computername,$Password,$Username)
CMD
hay PowerShell
không? Nếu bạn đang thực thi powershell thì hãy thử cmd
lệnh: powershell
Ngoài ra tôi sẽ kiểm tra và xem hộp powershell có được kiểm tra trên màn hình cấu hình xây dựng boot.wim không
-WarningAction SilentlyContinue
để thay thế thông báo trên lệnh nhập mô-đun.
$AdminPassword
trong Danh sách đối số PSCredential không?