最近學習RHCE,在umask這裏,書裏說要修改/etc/profile和/etc/bashrc兩個文件,卻沒有說明這兩個區別。因而在上網查看以後卻是明白了各是怎麼用的。/etc/profile是對應登陸的,/etc/bashrc是對應打開shell的。可是實際使用區別在哪,若是說bashrc是對應shell的,那麼改這一個文件不就好了?最後本身實踐一下,發現仍是不一樣的,特此分享一下,也作個記錄。shell
實驗準備:將/etc/profile文件中的umask改成007,將/etc/bashrc中的umask改成077。bash
實驗步驟:學習
1.以root身份登陸並打開shell,umask值 077test
2.su test, umask值 077登錄
3.su - test,umask值 007file
實驗結果:若是隻是切換用戶,不從新登陸,那麼profile的腳本將不會執行,從而bashrc中的腳本發生做用。程序
總結一下就是,打開一個shell的話,會執行shell相關的bashrc的腳本,用su -命令執行時會從新loggin,所以會再調用一次profile裏的腳本。總結
因此,若是不想搞出歧義爲本身的管理添麻煩的話,仍是老老實實的改兩個文件吧。因爲還沒時間寫程序,不過若是沒猜錯的話,程序應該用的是bashrc裏的值。腳本