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

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

umask のファイルベースの権限は 666 なので、ファイルの作成時に権限を 750 にすることは可能ですか?

答え1

一般的には、いいえです。事実上すべてのプログラムはmode で を呼び出すopen()(または呼び出す)ため、何を適用しても が得られることはありません。実行可能ファイルを作成するリンカーでさえ、出力ファイルを mode で開き、後で開きます。creat()0666umask07500666chmod

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

異なる動作が必要な場合は、意図したモード変更を実行する独自のツールまたは既存のツールのラッパーを作成する必要があります。

関連情報