回答:
umask 777
here文字列の前に追加しました。umaskを削除した後、エラーはなくなりました。教訓:ヒア文字列(<<<
)用に作成された一時ファイルがあり、これはヒアドキュメント(<<
)に関連しており、これらが機能するには適切なumaskセットが必要です。
私の場合、/tmp
ディレクトリのデフォルトのアクセス許可を変更しました(誤って0777に変更したと思います)。
解決策は/tmp
、それをデフォルトの許可に戻すことでした。これは、8進数の1777(1 =スティッキービット、7 = R + W + X)です。
つまり、一言で言えばsudo chmod -R 1777 /tmp
問題を解決する必要があります。
-R
フラグはおそらく必要ありません。以下の全員のファイルを変更して、全員/tmp
が読み取り/書き込み実行可能にする理由はありません。これらのファイルの一部は、ユーザーのセキュリティに敏感です。
この問題に関する私の個人的な経験は、umask
@ eliptical-viewと同様に、バイナリ表記でした。私はそれを書いているはずです:
umask 0644
私が作成したファイルへの読み取りおよび書き込みアクセス権を私に与えます、何が問題なのですか
私が変更された後umask
であることを
umask 0022
エラーは消えた。
実際には、バイナリ表記はバイナリ補数として理解されるべきです。
したがって、umask
以下ののマスク0
で、ファイルの所有者に書き込みを行うと、このユーザーは自分が作成したファイルに完全にアクセスできます。この値2
は、2番目のビットがマスクされていることを意味します。この場合、デフォルトでは、他のユーザーはファイル所有者が作成したファイルへの書き込みを許可されません。
umask
です。Posixファイルのアクセス権には、所有者、グループの1つ、およびその他すべての人が正確に3ビット含まれているためです。
ima_policy=appraise_tcb
カーネルパラメータ)が有効になりました。しかし、これは本当に一般的なケースではありません:)。/tmp
tmpfs