Tôi đang cố gắng sử dụng Start-CMSoftwareUpdateDeployment
lệnh ghép ngắn để triển khai nhóm cập nhật phần mềm vào bộ sưu tập hiện có.
PS WHO:\> Start-CMSoftwareUpdateDeployment -SoftwareUpdateGroupName "Update Group - Microsoft Updates" -CollectionName `
Eval_OSUpdates -DeploymentType Required -SendWakeUpPacket $true -AllowRestart $true -PersistOnWriteFilterDevice $true `
-DownloadFromMicrosoftUpdate $true -DeploymentName "Evaluation Deployment - Update Group - Microsoft Updates" `
-UserNotification DisplayAll -RestartWorkstation $false -AllowUseMeteredNetwork $true
Tất cả các tham số bắt buộc được đưa ra, tuy nhiên tôi nhận được lỗi sau khi thực hiện:
Start-CMSoftwareUpdateDeployment : ConfigMgr Error Object:
instance of SMS_ExtendedStatus
{
Description = "One or more updates are present for which a EULA exists which hasn't been approved.";
ErrorCode = 1078462208;
File = "e:\\nts_sccm_release\\sms\\siteserver\\sdk_provider\\smsprov\\sspciassignment.cpp";
Line = 361;
Operation = "PutInstance";
ParameterInfo = "";
ProviderName = "ExtnProv";
StatusCode = 2147749889;
};
At line:1 char:1
+ Start-CMSoftwareUpdateDeployment -SoftwareUpdateGroupName "SoM Update Group - Mi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (Microsoft.Confi...ploymentCommand:StartSoftwareUpdateDeploymentCommand) [Start-CMSoftware
UpdateDeployment], WqlQueryException
+ FullyQualifiedErrorId : UnhandledExeception,Microsoft.ConfigurationManagement.Cmdlets.Sum.Commands.StartSoftwareUpdateDeployment
Command
Tôi khá chắc chắn rằng tôi biết bản cập nhật nào cần EULA được chấp nhận, nhưng khi cố gắng tự động hóa bản cập nhật này, thật tuyệt khi chấp nhận bất kỳ EULAs nào theo chương trình và không có các bước thủ công trong quy trình.
Tôi thấy lệnh ghép ngắn Get-SoftwareUpdateLicense
, nhưng tất cả những gì làm được đều trả về một chuỗi đẫm máu của EULA, không ai đọc được.
Một bước gần hơn hôm nay tôi đã tìm thấy một bài viết MSDN về phương thức AcceptEULA, nhưng tôi không biết cách gọi nó trên bản cập nhật, vì bản cập nhật thuộc loại SMS_SoftwareUpdate, nhưng phương thức đó không được liệt kê khi tôi chuyển sang Get-Member
và Tất nhiên chỉ cần cố gắng để willy nilly gọi phương thức ném lỗi.
Tóm lại, đó là nơi tôi bị mắc kẹt: Tôi không biết cách gọi phương thức WMI này trên một đối tượng SMS_SoftwareUpdate cụ thể, sử dụng powershell nếu điều đó tạo ra sự khác biệt.