AIX系統使用者環境變數在CDE介面失效

尛樣兒發表於2012-05-14
       
        如果使用者在配置檔案中設定了LIBPATH環境變數(將export LIBPATH=xxx加入~/.profile,然後在~/.dtprofile中設定DTSOURCEPROFILE=true)並使用CDE環境和AIX Term,就會發現在開啟的AIX Term中LIBPATH變數被清除了。

        這是因為出於安全性的考慮,AIX會在執行SUID的程式之前清除LIBPATH變數(防止惡意使用者透過設定LIBPATH使SUID程式呼叫破壞性的程式碼)。aixterm就是這樣的SUID程式。

        要想在AIX Term中預設LIBPATH環境變數,您需要建立~/.kshrc檔案。這個檔案應該包括以下內容:
export LIBPATH=/usr/lib,/lib,

        同時,為了使命令列登入也有同樣的效果,您需要修改~/.profile,使其包括以下內容:
export ENV=$HOME/.kshrc

這樣啟動AIX Term後,LIBPATH環境變數就可以正常使用了。

參考文章:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23135684/viewspace-723533/,如需轉載,請註明出處,否則將追究法律責任。

相關文章