[UNIX]假设存在属于组G的用户X(即不是超级用户)。该用户X在目录中创建文件F,具有权限" rw-rw --- - &#34 ;. 有没有办法防止用户X发出的命令从任何用户(超级用户除外)删除此文件? 我发现" chattr + a",但它只能由超级用户发布。
换句话说,我是用户X,G组的成员,我拥有一个必须拥有权限的文件" rw-rw ----"。我想阻止我自己和G组的任何其他用户删除此文件。
答案 0 :(得分:1)
一种可能的解决方案是提供root拥有的脚本和setuid标志。该脚本只运行位于特定目录中的egainst文件,以避免混淆的副攻击。
我没有探索的另一种可能性是使用ACL,它提供比标准rwx更多的粒度。
答案 1 :(得分:1)
也许你正试图解决错误的问题(“我想防止意外删除我自己的文件”)。
通常的对策是备份和/或存档。对于单个文件,我只需使用RCS检查它们,即每次修改它们时ci -l precious.txt
。请注意,此解决方案还解决了意外修改的问题,因为您可以轻松地签出任何早期版本。
请参阅rcsintro(1),ci(1),co(1)和rcsdiff(1)的手册。