【问题标题】:Windows Server 2012: trying to copy files via command line, getting permission deniedWindows Server 2012:尝试通过命令行复制文件,获得权限被拒绝
【发布时间】:2014-10-24 22:04:38
【问题描述】:

我正在尝试以编程方式将主要文件夹从 C: 复制到 E:,以便自动备份这些文件夹。在我看来,作为管理员,我应该像 Linux 上的 root 一样拥有完全访问权限,尤其是对于仅读取文件的权限。

这对我来说毫无意义。我以管理员身份登录,我以管理员身份运行 powershell,我什至去了控制面板并将 UAC 滑块一直向下移动。

那么为什么我在尝试复制 C:\Users 或“C:\Program Files”时会出现访问/权限错误?

【问题讨论】:

  • 这个网站是针对编程相关的问题,因此你的问题在这里是题外话。它更可能适合Super User,所以你应该在这里删除它并在那里询问它。 (它会为您节省一些声誉点数;这里的许多用户认为应该自动对离题的问题投反对票。我不在其中,但请考虑一下您自己。)
  • 感谢您的警告。我正在专门编写一个程序/脚本来复制这些文件。我的代码失败了,我已经将其归结为权限问题。我不确定如何解决这个问题。
  • @pw222 - 这实际上是一个脚本/权限问题,属于服务器故障,因为它与服务器脚本相关。
  • @KenWhite - 超级用户更多地解决与最终用户相关的问题。服务器故障更多地与管理相关,我将其归类为。
  • 您的问题是“在命令行”,这不是编程/脚本问题。问题是您没有在 Linux 上运行;管理员不会仅仅因为它们在管理员帐户下运行而自动访问所有文件夹。 (例如,运行安装程序仍会提示您确认是否允许该应用更改系统,即使您以管理员身份运行也是如此。)

标签: file-permissions uac windows-server-2012


【解决方案1】:

这有望被迁移,但答案是 Windows 不像 Linux。管理员帐户与 root 帐户不同。默认情况下,它没有各种权限,除非您执行与 sudo 等效的操作,即以提升的权限运行提示。右键单击您的 powershell 提示符并选择以管理员身份运行。

向下拖动 UAC 滑块并不会关闭 UAC,它只是在需要提升时关闭 UAC 警告。

【讨论】:

  • 谢谢你的回答,埃里克。奇怪的是,右键单击 powershell 并选择以管理员身份运行后,我仍然没有获得对所有文件的读取权限。我正在使用 Tcl,并且使用命令 [file copy -force -- C:/Users E:/test] 导致对嵌套在 C:/Users 中的某些文件的权限被拒绝。从命令行使用 xcopy 会导致类似的错误。有任何想法吗?谢谢
  • @pw222 - 这取决于您正在谈论的文件。你看过所有者和权限属性了吗?
猜你喜欢
  • 1970-01-01
  • 2015-12-02
  • 2017-01-07
  • 1970-01-01
  • 2013-10-27
  • 1970-01-01
  • 2019-01-30
  • 2020-08-26
  • 1970-01-01
相关资源
最近更新 更多