将 IIS 站点文件夹复制到其他驱动器,且权限保持不变

将 IIS 站点文件夹复制到其他驱动器,且权限保持不变

我有一个 IIS 应用程序,wwwroot\AppFolder我想在进行一些更改之前将其复制到另一个驱动器。AppFolder 下的某些文件夹需要手动配置权限,例如为 IIS_IUSR 添加对 OpLogs 文件夹的写访问权限等。

为了在出现问题时快速恢复 IIS 应用程序,我想创建一个具有完整权限的副本(可从文件夹属性/安全选项卡访问的权限)。xcopy按照建议使用在这个答案中AppFolder如果我复制到服务器上的另一个驱动器则不起作用。

我读过的许多文档都建议/x使用/o标记来实现我想要的功能,但对我来说它们不起作用。如何将 IIS 应用程序文件夹复制到另一个驱动器而不丢失权限设置?

更新:我注意到,即使使用 将文件夹复制到目的地时文件夹的权限不再包含某些条目xcopy,但如果我将它们复制回原始目录,再次使用xcopy上述参数,权限就会再次出现!例如,Network Service可以访问该文件夹。所以无论这里发生了什么,都会导致权限在目标目录中不可用,但以某种方式作为元数据保留。所以只要我使用xcopy往返,我的问题就会消失。我还检查了如果我通过常规复制和粘贴(使用鼠标)复制到同一个文件夹(wwwroot)并且在这种情况下不保留权限会发生什么,所以无论目的地是什么,这xcopy都是要走的路。

这并不能改变我不理解权限如何消失并再次出现的事实。

答案1

如何在不丢失权限设置的情况下将 IIS 应用程序文件夹复制到另一个驱动器?

robocopy与选项一起使用/SEC

/SEC:使用 SECurity 复制文件(相当于/COPY:DATS)。

在哪里:

(复制标志:

  • D=数据,
  • A=属性,
  • T=时间戳,
  • S=安全=NTFS ACL,
  • O=所有者信息,U=审计信息)
  • 文件数据(D)始终包含文件时间戳(T)。

来源:Robocopy“强大的文件复制”-Windows CMD-SS64.com

相关内容