>>> import shutil
>>> shutil.copy2('c:/trash/1.txt','r:/1.txt')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:Python27libshutil.py", line 131, in copy2
copystat(src, dst)
File "C:Python27libshutil.py", line 100, in copystat
os.chmod(dst, mode)
WindowsError: [Error 5] Access is denied: 'r:/1.txt'
想知道是否有人可以阐明这一点。这是通过Windows提示下发生的。我已经重新安装了份额,确认了权限,确保UAC也关闭了。
我正在尝试将文件的副本执行到R:这是网络共享(Freenas)。直到最后两天开始发生,才有任何问题。现在,奇怪的是,即使出现错误,文件还是复制的。
在同一网络中在多个其他PC上测试,只有1个是同一问题,但似乎没有来源或想法是如何出现的。想法?
hackish toararound
通过查看跟踪输出,shutil.copy2
将其复制到网络共享后立即更改文件的权限。这意味着您在Linux网络共享服务器中具有错误配置。
要解决此问题,请改用此功能
shutil.copyfile(r'c:trash1.txt',r'r:1.txt')
iv'e从Windows计算机将文件复制到基于Linux的网络共享
,因为您必须拥有"系统管理员特权"才能执行此操作。因此,尝试使用系统管理员特权运行脚本。
在管理员命令提示符
中运行此操作以管理员的身份启动命令提示符
- 单击"开始"菜单。
- 在搜索栏中,键入CMD,然后按Ctrl Shift Enter。
- 运行Python脚本,它将以管理员的方式运行。