std124_lf Asked: 2023-11-07 10:38:26 +0800 CST2023-11-07 10:38:26 +0800 CST 2023-11-07 10:38:26 +0800 CST 文件和目录上的粘滞位 772 我一直听说粘性位只能与目录一起使用,我理解这一点,但是如果将其应用于文件,则意味着什么。如果我将粘性位设置为文件并执行操作,ls -la我会看到大写 T,但我不知道这是否会影响文件的行为。 permissions 2 个回答 Voted Best Answer waltinator 2023-11-07T10:53:25+08:002023-11-07T10:53:25+08:00 这是RTFM的一个案例 来自man 1 chmod: 限制删除标志或粘性位 限制删除标志或粘性位是单个位,其解释取决于文件类型。对于目录,它可以防止非特权用户删除或重命名目录中的文件,除非他们拥有该文件或目录;这称为目录的限制删除标志,通常在全局可写目录(例如 /tmp. 对于某些旧系统上的常规文件,该位将程序的文本图像保存在交换设备上,以便运行时加载速度更快;这称为粘性位。 Jörg W Mittag 2023-11-07T10:52:36+08:002023-11-07T10:52:36+08:00 对于可执行文件,这是驻留位。管理员可以设置它来告诉操作系统将程序代码保留在交换空间中,即使该程序当前没有运行。 现代操作系统具有复杂的内存管理算法,通常在管理内存方面比人类做得更好,因此这一点被忽略了,并且已经存在了几十年。对于任何甚至可以被称为现代的操作系统来说,它都是过时的并且本质上毫无意义。 除非您热衷于逆向计算,否则您永远不会遇到解释它的操作系统。例如,Linux 从未实现过它。Solaris 于 2005 年删除了它。 对于不可执行的文件,Solaris 上使用粘滞位来告诉操作系统不应缓存该文件。它通常设置在交换文件上。
这是RTFM的一个案例
来自
man 1 chmod
:对于可执行文件,这是驻留位。管理员可以设置它来告诉操作系统将程序代码保留在交换空间中,即使该程序当前没有运行。
现代操作系统具有复杂的内存管理算法,通常在管理内存方面比人类做得更好,因此这一点被忽略了,并且已经存在了几十年。对于任何甚至可以被称为现代的操作系统来说,它都是过时的并且本质上毫无意义。
除非您热衷于逆向计算,否则您永远不会遇到解释它的操作系统。例如,Linux 从未实现过它。Solaris 于 2005 年删除了它。
对于不可执行的文件,Solaris 上使用粘滞位来告诉操作系统不应缓存该文件。它通常设置在交换文件上。