Rhel
如何在 Amazon Linux 2 中永久設置環境變數
我嘗試了許多方法來設置執行 Amazon Linux 2 的永久環境變數 EC2 實例,但沒有一種方法在使用者和登錄會話之間是持久的。
什麼特定的語法和過程將成功設置環境變數,以便所有使用者和每個會話期間都可以使用變數的值?
到目前為止,我嘗試過的方法包括在 USERDATA 的實例啟動腳本期間分別在以下三個文件中的每個文件中設置值:
/etc/csh.cshrc /etc/environment /etc/profile
我一次嘗試每個文件,而不是同時嘗試所有三個。
我也嘗試過使用 Python
os.environ
,但這也不起作用。使用者建議
根據@NasirRiley 的建議,當我創建一個
setVars.sh
文件並將其放入/etc/profile.d
實例的USERDATA
啟動序列時,它現在可以工作:#!/bin/bash export SOME_VAR_NAME=some-var-value
最好通過在
/etc/profile.d
.您想使用您的 shell 名稱的副檔名來創建它。例如,如果它是
bash
,它將被呼叫script.sh
。/etc/profile.d/script.sh
裡面的語法是:
export SOME_VAR_NAME=some-var-value
您將需要啟動一個新的 shell 會話以將變數添加到您的環境中,您可以通過註銷並重新登錄來執行此操作。當其他使用者執行相同操作或下次登錄時,它將為其他使用者的環境添加,如果他們目前未登錄。
請注意:您實際上並不需要 shebang 行,因為它是根據您的 shell 提供的。我有時把它放在自己身上,因為它只是一種習慣的力量,但它不會傷害或影響任何事情。如果你願意,你可以把它排除在外。