Answers:
我已经umask 777在here字符串之前添加了。删除umask后,错误消失了。因此,我们汲取了教训:为此处的字符串(<<<)创建了一个临时文件,该文件与此处的文档(<<)有关,并且必须设置适当的umask才能使它们起作用。
就我而言,我更改了/tmp目录默认权限(我认为我误将其更改为0777)。
解决方案是将其还原为默认/tmp权限,即八进制的1777(1 =粘性位,7 = R + W + X)。
因此,简而言之sudo chmod -R 1777 /tmp应该解决该问题。
-R标志。没有理由将下面每个人的文件都更改为所有人都/tmp可以读写执行。其中一些文件对用户的安全敏感。
我对这个问题的个人经验是umask二进制表示法,就像@ eliptical-view一样。我以为是这样写的:
umask 0644
会给我对我创建的文件的读写权限,这是怎么回事
在我更改umask为
umask 0022
错误消失了。
实际上,二进制符号应理解为二进制补码。
因此,在umask下面的掩码中,当某人0为文件所有者写信时,该用户将完全有权访问他或她创建的文件。该值2表示第二位被屏蔽,这意味着在这种情况下,默认情况下,将不允许其他用户写入文件所有者创建的文件。
umask,因为Posix文件权限中恰好涉及到三位-对于所有者,他或她的一个组以及其他所有人。
ima_policy=appraise_tcb内核参数),但组合为/tmpnottmpfs。但这不是一个普通的情况:)。