不允许根目录的操作

我尝试将文件的所有者chownroot,但是我不能。 我以root身份执行此操作。 我收到以下消息:

chown: changing ownership of `ps': Operation not permitted 

    不可变属性可以在文件上设置。 用chattr -i删除它

    存在几个解决scheme,其中一些:

    • 你有一个文件系统不让你例如。 uid:gid,例如:FAT
    • 该驱动器已安装为只读
    • SELinux或其他安全执行者适用
    • 文件系统被设置为只读模式(例如xfs_freeze)
    • 文件具有不可变标志集(man chattr)

    尝试这个:

    [root @ root]#chattr -ais / bin / ls

    将所有权和组更改回根后。

    滑稽。 你检查了系统日志(/ var / log / messages,/ var / log / syslog,dmesg的输出)是否有任何线索?

    可能的原因:

    • 您正在运行一些安全性增强的Linux,如SELinux 。 这些地方甚至限制了root的function。
    • 该文件位于不支持文件所有权的文件系统上,如(V)FAT。 根据挂载选项chmod / chown会给你错误。

    我有同样的问题。

     $ chattr -V -i dir chattr 1.41.12 (17-May-2010) Flags of dir set as s----a--------- 

    这是不够的。 所以我加了'sa'

     $ chattr -V -ais dir chattr 1.41.12 (17-May-2010) Flags of dir set as --------------- $ chown root dir $ 

    问题解决了 :)

    什么样的文件系统是你试图chown的“ps”文件? fs是否安装为ro(只读)?

    如果你正在讨论/ bin / ps,在debian上总是这样的:

     -rwxr-xr-x 1 root root 76132 2009-05-28 10:48 /bin/ps* 

    每个“猜测”由其他答案是可能的。 一个debugging提示可能是做一个strace的命令,并查看输出,以查看系统调用本身真正的问题。

     strace chown root /bin/ps 2>&1 | less