是否可以限制/ tmp到0770权限?

我想阻止在同一个Linux系统上的两个非root用户共享文件(通过使用/ tmp)。 这是可能的吗?

如果我将/tmp限制为0770root:root作为所有者:组)并通过export TMPDIR=~/tmp; mkdir -p $TMPDIR定义一个用户特定的TMPDIR export TMPDIR=~/tmp; mkdir -p $TMPDIR export TMPDIR=~/tmp; mkdir -p $TMPDIR在启动过程中(比如,通过一个rc[35].d脚本),GConf2开始出现问题。 然后我得到一个典型的错误是:

/usr/libexec/gconf-sanity-check-2 exited with status 256

在运行级别3(非GUI)中,一切似乎都能正常工作…虽然我可能会错误地提前结束这个问题,但运行级别3也可能会出现问题。

我迄今为止使用TMPDIR经验似乎表明它已经被破坏了,或者没有被充分logging,或者没有被所有的Gnome应用所接受。

这将是一个非常糟糕的主意。 它违反了一个非常普遍的(普遍的)和长期的(如“从远古时代起”)一套可能在许多应用和实用程序中根深蒂固的假设。

创buildchroot jail或虚拟子系统并限制这些用户,而不是试图简单地将它们locking在/ tmp之外是更好的办法。

TMPDIR只是一个惯例,而不是一个标准。 UNIX / Linux程序可以自由地兑现或不遵守其作者和维护者的意愿。

别人指出的不好的主意。 您可以使用ACL获得相似的结果:

 groupadd tmpdir-denied setfacl -mg:tmpdir-denied:- /tmp # the specific group has no access to /tmp getfacl /tmp # see permissions 

不要误解我的意思 ACL 也将打破事情 ,如果不是现在,那么将来也是如此,但影响将有望受到一定的限制。 如果我仍然可以(1)备份(2)恢复(3)这些更改后的补丁系统,我会testing为最低限度。

我不认为这是改变/tmp权限的好主意。 许多应用程序在/tmp下创build临时文件,而且它们不一定以root权限运行。 所以,如果你这样做,你会打破他们。