不允许操作 - 在本地计算机上取消链接

时间:2012-06-11 11:19:01

标签: php

我正在尝试取消链接本地版本网站上的文件夹。

我收到错误:

operation not permitted

我是如何在本地计算机上取消链接工作的?我正在使用MAMP。

3 个答案:

答案 0 :(得分:10)

请参阅documentation

  

取消关联 - 删除文件

  

另见:rmdir() - 删除目录

你有一个目录。您需要使用rmdir,而不是unlink

答案 1 :(得分:1)

这意味着不允许脚本删除该文件夹。这可能有多种原因 - 最有可能的原因是您尝试unlink()文件夹,而不是使用rmdir()删除它。

以下是unlink(2)手册页中“不允许操作”(EPERM)的可能原因:

  

EPERM 系统不允许取消链接目录,或者取消链接目录需要调用进程的权限   没有。 (这是POSIX规定的错误返回;如上所述   在上面,Linux为这种情况返回EISDIR。

     

EPERM(仅限Linux)       文件系统不允许取消链接文件。

     

EPERM或EACCES       包含路径名的目录设置了粘滞位(S_ISVTX),并且进程的有效UID既不是UID   要删除的文件或包含它的目录的文件,   并且该进程没有特权(Linux:没有CAP_FOWNER功能)

答案 2 :(得分:0)

这是权限问题。

尝试提供您想要取消链接权限的文件,例如CHMOD 666。

您可能自己创建了该文件,并希望PHP(另一个用户自己,可能是Apache或www-data,具体取决于MAMP的安装方式)为您删除文件 - 没有正确的权限,这是无法做到的。