PowerShell: Copy-Item fails despite the same process working with Windows Explorer

Geoff Dawdy picture Geoff Dawdy · Mar 21, 2017 · Viewed 25.9k times · Source

I have a script that needs to copy files on a regular basis (every hour). I can open the source and destination folder using windows explorer and copy the file without issue.

However, if I try the same thing in PowerShell I get an Access to the path is denied error. I've checked the permissions on the share and I have full access. Why does this fail through PowerShell?

Copy-Item command:

Copy-Item \\idmststtrm2\tns_admin$\tnsnames.ora -Destination \\bts13r2b\tnsnames -Force

Errors:

Copy-Item : Access to the path '\\bts13r2b\tnsnames\tnsnames.ora' is denied.
At line:1 char:1
+ Copy-Item \\idmststtrm2\tns_admin$\tnsnames.ora -Destination \\bts13r2b\tnsnames ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : PermissionDenied: (\\idmststtrm2\tns_admin$\tnsnames.ora:FileInfo) [Copy-Item], UnauthorizedAccessException
+ FullyQualifiedErrorId : CopyFileInfoItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.CopyItemCommand

Copy-Item : Access to the path '\\bts13r2b\tnsnames\tnsnames.ora' is denied.
At line:1 char:1
+ Copy-Item \\idmststtrm2\tns_admin$\tnsnames.ora -Destination \\bts13r2b\tnsnames ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Copy-Item], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.CopyItemCommand

Edits:

When I execute a Get-ChildItem against the destination path, I'm able to see the folder contents.

Results from get-item:

get-item \\idmststtrm2\tns_admin$\tnsnames.ora

Directory: \\idmststtrm2\tns_admin$


Mode                LastWriteTime     Length Name                                                                      
----                -------------     ------ ----                                                                      
-a---         3/10/2017   8:49 AM      14143 tnsnames.ora                                                              


get-item \\bts13r2b\tnsnames\tnsnames.ora

Directory: \\bts13r2b\tnsnames


Mode                LastWriteTime     Length Name                                                                      
----                -------------     ------ ----                                                                      
-a---          3/8/2017   9:51 AM      15991 tnsnames.ora 

get-item \\bts13r2b\tnsnames

Directory: 


Mode                LastWriteTime     Length Name                                                                      
----                -------------     ------ ----                                                                      
d----         3/21/2017  11:14 AM            tnsnames   

Tried using xcopy:

xcopy \\idmststtrm2\tns_admin$\tnsnames.ora \\bts13r2b\tnsnames\tnsnames.ora

Access is denied.

Answer

Geoff Dawdy picture Geoff Dawdy · Mar 23, 2017

This problem is due to permissions writing to a network share. While the share permissions were set correctly, the NTFS permissions were missing. A system administrator will need to ensure both sets of permissions allow for the account to write to the folder. Once this was updated correctly the script was able to perform a copy to the network share.