(Otro) problema de carpeta recursiva de copiar/pegar de PowerShell. Kit de herramientas de implementación de aplicaciones PowerShell y SCCM

(Otro) problema de carpeta recursiva de copiar/pegar de PowerShell. Kit de herramientas de implementación de aplicaciones PowerShell y SCCM

Siento que voy a reír/llorar porque sé que estoy haciendo algo estúpido/obviamente incorrecto.

Estoy usando SCCM y PSADT para intentar lo siguiente. Funciona bien si hago UNC en la carpeta de destino y ejecuto el script, pero sucede lo siguiente cuando se implementa en SCCM

He probado todas las variaciones de lo siguiente que se me ocurren. Estoy intentando mover un directorio de una máquina virtual en red a un cliente local, pero todo lo que puedo hacer es copiar el directorio VACÍO.

ejemplos de lo que he probado son

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

Y

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

Y todo lo que se me ocurre en el medio. Cada vez que obtengo la carpeta de directorio vacía creada pero ninguno de los contenidos

Respuesta1

Suena como un problema de permisos. Mientras ejecuta desde SCCM, supongo que está utilizando la función Run Script de versión preliminar. Esto ejecuta el script como la cuenta del sistema local de la computadora, que probablemente no tenga los permisos NTFS correctos para su recurso compartido de red.

Si está en un dominio: como prueba rápida (sucia e insegura: ¡revierta este cambio inmediatamente después de realizar la prueba!). Otorgue a los equipos del dominio acceso de lectura a la carpeta $dirFiles\target y a todos los objetos secundarios. Si funciona, debes calcular:

  • Cómo desea estructurar los permisos de acceso para las cuentas del sistema local
  • Si se debe convertir el script en un paquete o aplicación y ejecutarlo como el usuario que inició sesión.

La opción del paquete es más segura, pero un poco más larga.

Buena suerte

información relacionada