
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
コマンドを確認してください。