リモートコマンドのumaskが異なります

リモートコマンドのumaskが異なります

ssh user@host "umask"0174を与える

ssh user@hostサーバーシェルからのumaskは0002になります

どうしてそうなるのか説明していただけますか?

UPD: 実際は、/etc/passwd が umask を上書きしていました。

答え1

bash のマニュアルページから:

ログイン シェルではない対話型シェルが起動されると、~/.bashrcそのファイルが存在する場合、bash は からコマンドを読み取って実行します。(...) 対話型ログイン シェルとして、または オプションを指定した非対話型シェルとして呼び出されると、最初にと からコマンドをこの順序で--login読み取って実行しようとします。/etc/profile~/.profile

最初のコマンド ( ssh user@host "umask") はログイン シェルではありませんが、2 番目のコマンドはログイン シェルです。したがって、~/.bashrcファイルでumask 0002コマンドを確認してください。

関連情報