即使更改所有权和权限后,我似乎也无法删除文件

即使更改所有权和权限后,我似乎也无法删除文件

没来过这里太多。主要是 Stackoverflow。无论如何,我有一个无法删除的文件。

我尝试sudo rm files.db并得到了

Operation not permitted

做过sudo chown me: files.db

然后sudo chmod 777 files.db

再次尝试sudo rm files.db并得到相同的结果。

ls -l产生:

-rwx------  1 me  staff  34177024 Jun  6 23:58 files.db

我本来希望看到:

-rwxrwxrwx  1 me  staff  34177024 Jun  6 23:58 files.db

尝试过sudo chflags noschg files.db

然后sudo chmod 777 files.db然后仍然得到:

-rwx------  1 me  staff  34177024 Jun  6 23:58 files.db

我缺少什么?

更新:

尝试su user rm -rf files.db输入我的密码并得到:

su: Sorry

我用这个驱动器进行时间机器备份。

难道就没有办法强制删除吗?

另一个更新:

不确定这是如何工作的,但尝试过ls -i并得到:

5482053549 files.db

然后find . -inum 5482053549 -delete得到:

find: -delete: unlink(./files.db): Operation not permitted

还尝试find . -inum 5482053549 -exec rm {} \;并得到:

rm: ./files.db: Operation not permitted

啊。

最后更新:

今天早上我做了以下事情:chown me folder然后chmod 777 folder。然后我就可以删除该文件了。

答案1

您是否也尝试过chflags nouchg,或者您是否检查过某些父目录是否有uchgorschg标志?

$ mkdir 1; touch 1/2; chflags uchg 1; sudo rm -f 1/2
rm: 1/2: Operation not permitted
$ chflags nouchg 1; rm 1/2
$ 

如果该目录没有写权限,则错误消息通常Permission denied不是Operation not permitted

$ sudo mkdir 3; sudo touch 3/4; sudo chown $USER 3/4; rm 3/4
rm: 3/4: Permission denied

sudo rm即使deletedelete_child操作被拒绝,通常也能正常工作:

$ touch 4; chmod +a 'everyone deny delete' 4; rm 4
rm: 4: Permission denied
$ mkdir 5; touch 5/6; chmod +a 'everyone deny delete_child' 5; rm 5/6
rm: 5/6: Permission denied
$ ls -lde 4 5
-rw-r--r--+ 1 lauri  staff    0 Jun  7 12:44 4
 0: group:everyone deny delete
drwxr-xr-x+ 3 lauri  staff  102 Jun  7 12:44 5
 0: group:everyone deny delete_child
$ sudo rm 4 5/6
$ 

相关内容