当前位置:  开发笔记 > 运维 > 正文

如何在UNIX/tmp目录中创建文件,以便所有用户都可以读写它?

如何解决《如何在UNIX/tmp目录中创建文件,以便所有用户都可以读写它?》经验,为你挑选了1个好方法。

我正在尝试在/ tmp目录中创建一个文件(在Linux UBUNTU 7.10上工作),该文件具有任何用户的读/写/执行访问权限.所以我使用"open(fileName,O_CREAT | O_RDWR,0777)"函数在user1帐户中创建文件(来自C程序),我希望user2能够写入特定文件.但是,当我检查/ tmp目录(使用ls -l)时,我看到我没有user2的写访问权限(考虑到user1创建它的事实,我有user1的写访问权限,但是user2,被认为是成为"其他人"没有任何访问权限.我试图在open函数中使用模式0766(以及模式的7和6的这种组合),这样我可以获得user2的写访问权限,但我仍然没有所需的访问权限.



1> CesarB..:

您必须将umask设置为000. umask上的位将从您选择的权限中删除,默认的umask通常为022或002.

请注意,默认ACL和SELinux标签之类的内容也可能会影响文件的可读性和可写性.使用getfacl查看ACL和ls -Z以查看SELinux标签; 对于SELinux,您还必须知道哪些策略处于活动状态以及它们具有哪些效果.在权限之后,ls -l上也可以看到ACL的存在作为+字符.

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有