前言
本章給大家講解linux兩個用戶配置文件:.bashrc和.bash_logout,每個用戶的用戶目錄下,都會有這兩個文件。我們來學習下兩個文件的作用:
圖1 .bashrc .bash_logout
.bashrc:這個文件主要保存個人的一些個性化設置,如命令別名、路徑等。是該用戶登錄后的個性化設置。簡單的說,如果我們希望該用戶在登錄時執行某些操作,就把腳本命令寫在該文件中,注意,普通用戶的權限問題,不是所有的腳本程序都能順利執行的,一會做個操作實驗,給大家演示。
.bash_logout:根據名字可以知道,這是用戶登出行為,當執行登出命令時(logout),會讀取該文件,如果希望用戶登出時執行某些操作,腳本命令可以寫在該文件中。
我們來模擬一個實驗,實現.bashrc和.bash_logout的應用:擬定于在系統中創建一個用戶element,在該用戶登錄時,自動掛載共享目錄,給該用戶使用;當該用戶登出系統時,自動卸載該目錄。有點類似于windows中的“映射網絡驅動器”的概念。
模擬實驗
實驗環境:
- Windows Server 2008:192.168.0.88 共享一個目錄,供element使用。
- centos7:192.168.0.1 演示element用戶的登錄、登出效果。
Windows設置:
圖2 Windows 2008主機IP地址
圖3 創建share目錄并共享
圖4 在share目錄下共享若干文件
Windows中主要設置共享目錄,圖2設置主機IP地址,圖3創建目錄share并共享目錄,圖4在目錄下建立測試文件。
Linux設置:
圖5 創建用戶
圖5中,我們建立測試用戶:element。
圖6 查看.bashrc和.bash_logout
圖6中,我們訪問element的用戶目錄/home/element,可以看到.bashrc和.bash_logout兩個文件,注意兩個文件是隱藏文件,要用ls -a指令才能看到。
圖7 寫入腳本信息
圖7中,我們分別向.bashrc中寫入掛載命令,向.bash_logout中寫入卸載命令,這里注意,element是普通用戶,權限不高,掛載指令mount只有根用戶可做,普通用戶沒有權限,所以要在正常指令前加“sudo”指令。
圖8 /etc/sudoers
圖8中,sudo不是所有用戶都可以調用的,修改/etc/sudoers文件,將elment用戶添加進去,表示該用戶可以執行sudo指令,也就是說可以調用根用戶權限,有點類似于Windows系統中的“以管理員身份運行”。
到這里,所有的工作都已經準備就緒,我們看一下實驗效果:
圖9 實驗效果
圖9中,我們用element登錄,注意登錄后沒有報錯,進一步驗證,可以看到共享目錄掛載成功了,我們順便訪問一下掛載目錄,可以看到Windows主機共享的四個文本文件。登出時會自動卸載該目錄(這一步演示效果不明顯,只要登出時不出現錯誤提示即代表成功)。
后序
.bashrc和.bash_logout兩個文件是重要的用戶腳本文件,用在用戶登錄和登出中,該文件方便了用戶對系統的個性化設置,能夠完成特殊的系統優化功能,比如登出是自動清空瀏覽器緩存文件,登錄時發送友好提示信息等操作。但是也容易被黑客利用,比如自動執行“后門”程序、“木馬”等操作。對這兩個文件的理解,有助于提高對系統安全防護的認識,這里我只舉了一個例子,還有很多使用技巧,基本上都大同小異,只要你會Linux shell腳本,了解權限的問題,就能夠實現系統個性化設置。好了,不早了,今天就講到這里,大家再見!