чувствую, что я буду смеяться / плакать, потому что я знаю, что делаю что-то глупое / явно неправильное.

Я использую SCCM и PSADT, чтобы сделать попытку ниже. Это нормально работает, если я UNC в целевую папку и запускаю сценарий, но при развертывании в SCCM происходит следующее

Я попробовал все варианты ниже, что я могу придумать. Я пытаюсь переместить каталог с сетевой виртуальной машины на локальный клиент, но все, что я могу сделать, это скопировать сам каталог EMPTY

примеры того, что я пробовал

If (!(Test-Path("C:\Target\"))) {
            New-Item -ItemType directory -Path "C:\Target"
            Copy-Item -Path "$dirFiles\Target\*" -Destination "C:\Target\" -Recurse -Force -Verbose
            } 

А ТАКЖЕ

  If (!(Test-Path("C:\Target\"))) {               
                Copy-Item -Path "$dirFiles\Target" -Destination "C:\" -Recurse -Force -Verbose
                } 

И все, что между я могу думать. Каждый раз, когда я просто создаю пустую папку каталога, но не содержимое

1 ответ1

0

Похоже, проблема с разрешениями. Поскольку вы работаете с SCCM, я предполагаю, что вы используете предварительную версию Run Script. При этом сценарий запускается от имени учетной записи локальной системы компьютера, которая, вероятно, не имеет правильных разрешений NTFS для общего сетевого ресурса.

Если вы находитесь в домене: как можно быстрее (грязный и небезопасный - отменить это изменение сразу после тестирования!) тестовое задание. Предоставьте доменным компьютерам доступ на чтение к папке $ dirFiles\target и всем дочерним объектам. Если это работает, вам нужно выяснить либо:

  • Как вы хотите структурировать права доступа для учетных записей локальной системы
  • Независимо от того, нужно ли превратить скрипт в пакет или приложение и запустить от имени зарегистрированного пользователя.

Вариант с пакетом более безопасен, но немного сложнее.

Удачи

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .