6

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

我得到错误:

operation not permitted

有什么想法可以取消链接以在本地计算机上工作吗?我正在使用 MAMP。

4

3 回答 3

15

请参阅文档

unlink — 删除文件

另请参阅:rmdir () - 删除目录

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

于 2012-06-11T11:21:55.230 回答
1

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

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

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

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

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

于 2012-06-11T11:21:19.387 回答
-1

这是一个权限问题。

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

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

于 2012-06-11T11:21:47.620 回答