UnauthorizedAccessException mit Copy-Item auf remote fileserver

Ich versuche zu kopieren, etwa 10 Ordner mit jeweils ~3 KB .txt-Datei auf einem remote-Dateifreigabe mit einigen Sekunden Latenz. Ich bin mit Powershells Copy-Item wie diese:

try
{
    Copy-Item -Path $source -Destination $destination -Recurse -ErrorAction Stop
}
catch
{
    Write-Error $_.Exception.ToString()
}

Den Benutzer der das Skript ausführt, muss lese -, schreib-und execute-Berechtigungen auf dem fileserver teilen und auf die lokale Quelle.

Bei der ersten Ausführung der Ziel-Ordner leer ist. Alles funktioniert einwandfrei.
Auf den zweiten ausführen, die Dateien und Ordner bereits vorhanden ist. Also vor dem ausführen des Codes oben habe ich zuerst eine Prüfung mit Test-Path und falls der Ordner vorhanden ist ein löschen mit Remove-Item wie diese:

try
{
    if(Test-Path -Path $path -ErrorAction Stop)
    {
         Remove-Item -Recurse -Path $path -ErrorAction Stop
    }
}
catch
{
    Write-Error $_.Exception.ToString()
}

Sonst niemand bearbeitet diese Dateien. Jedoch, wenn das script ausgeführt wurde, ein dozent mal, einmal in eine Weile, für einen Grund ich nicht verstehen, ich bin plötzlich immer UnauthorizedAccessException Fehler für einige der Ordner beim kopieren. Der genaue Fehler ist:

System.UnauthorizedAccessException: Zugriff verweigert
---> System.ComponentModel.Win32Exception: Zugriff verweigert
in Microsoft.PowerShell.Befehle.FileSystemProvider.NativeDirectoryExists(String
Pfad) in
System.Management.Die Automatisierung.SessionStateInternal.IsItemContainer(CmdletProvider
providerInstance, String path, CmdletProviderContext Kontext

bitte beachten Sie: ich bin immer diese Fehler NACH dem löschen der alten Dateien auf dem entfernten fileserver hat compleated erfolgreich.

InformationsquelleAutor masi | 2013-01-06
Schreibe einen Kommentar