Redhat Linux /etc/profile 與 /etc/bashrc 的區別


最近學習RHCE,在umask這里,書里說要修改/etc/profile和/etc/bashrc兩個文件,卻沒有說明這兩個區別。於是在上網查看之后倒是明白了各是怎么用的。/etc/profile是對應登錄的,/etc/bashrc是對應打開shell的。但是實際使用區別在哪,如果說bashrc是對應shell的,那么改這一個文件不就行了?最后自己實踐一下,發現還是不同的,特此分享一下,也做個記錄。

實驗准備:將/etc/profile文件中的umask改為007,將/etc/bashrc中的umask改為077。

實驗步驟:

  1.以root身份登錄並打開shell,umask值 077

  2.su test, umask值 077

  3.su - test,umask值 007

實驗結果:如果只是切換用戶,不重新登錄,那么profile的腳本將不會執行,從而bashrc中的腳本發生作用。

總結一下就是,打開一個shell的話,會執行shell相關的bashrc的腳本,用su -命令執行時會重新loggin,因此會再調用一次profile里的腳本。

所以,如果不想搞出歧義為自己的管理添麻煩的話,還是老老實實的改兩個文件吧。由於還沒時間寫程序,不過如果沒猜錯的話,程序應該用的是bashrc里的值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM