デフォルトでは、ファイル所有者を実行可能にすることはできますか?

デフォルトでは、ファイル所有者を実行可能にすることはできますか?

umaskのファイルデフォルト権限は666ですが、ファイルを作成するときにファイルに750権限を持たせることができますか?

答え1

一般的に言えばそうではありません。ほとんどすべてのプログラムは呼び出しopen()(またはcreat()その問題)にmodeを使用するため、何を適用しても0666決してumask取得できません0750。実行可能ファイルを生成するリンカーも、出力ファイルを開く0666前にmodeを使用して開きます。chmod

strace -f -e file gcc bla.c 2>&1 | fgrep a.out 
...
[pid 14096] open("a.out", O_RDWR|O_CREAT|O_TRUNC, 0666) = 3
...
[pid 14096] chmod("a.out", 0755)        = 0

他の動作が必要な場合は、必要なスキーマ変更を実行するために独自のツールを作成するか、既存のツールを囲む必要があります。

関連情報