回答:
umask 777here文字列の前に追加しました。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カーネルパラメータ)が有効になりました。しかし、これは本当に一般的なケースではありません:)。/tmptmpfs