防止在绑定套接字时删除文件系统中的Unix域套接字文件

时间:2014-04-03 00:28:14

标签: linux macos unix unix-socket

是否可以在Linux或MacOSX上阻止当前绑定的Unix域套接字文件(例如/ tmp)被删除?我想要一个用户可以连接的模式0777套接字,但用户在守护进程运行时无法删除。

现在普通用户可以' rm'套接字,阻止任何其他人访问它,直到重新启动守护程序。好像它应该是“忙碌的”#39;如果它受到约束。

1 个答案:

答案 0 :(得分:2)

创建套接字后,您可以创建一个新的子目录并在目录上设置只读权限:

mkdir /tmp/blah
cd /tmp/blah
# do stuff to create /tmp/blah/socket
chmod 555 /tmp/blah


rm /tmp/blah/socket

rm: cannot remove /tmp/blah/socket: Permission denied

(或等同于C /您选择的语言)

相关问题