Tôi đang chạy RHEL6 và tôi đã xuất một biến môi trường như thế này:
export DISPLAY=:0
Biến đó bị mất khi đóng thiết bị đầu cuối. Làm cách nào để thêm vĩnh viễn giá trị này để giá trị biến này luôn tồn tại với một người dùng cụ thể?
Tôi đang chạy RHEL6 và tôi đã xuất một biến môi trường như thế này:
export DISPLAY=:0
Biến đó bị mất khi đóng thiết bị đầu cuối. Làm cách nào để thêm vĩnh viễn giá trị này để giá trị biến này luôn tồn tại với một người dùng cụ thể?
Câu trả lời:
Bạn có thể thêm nó vào tệp cấu hình shell của mình, ví dụ $HOME/.bashrc
hoặc nhiều hơn trên toàn cầu /etc/environment
. Sau khi thêm các dòng này, các thay đổi sẽ không phản ánh ngay lập tức trong hệ thống dựa trên GUI, bạn phải thoát khỏi thiết bị đầu cuối hoặc tạo một thiết bị mới và trong máy chủ đăng xuất phiên và đăng nhập để phản ánh những thay đổi này.
source
ví dụ - > source ~/.bashrc
.
export
, nhưng hãy thử với trình gỡ lỗi
Bạn phải chỉnh sửa ba tệp để đặt biến môi trường vĩnh viễn như sau:
Thông thường bạn phải khởi động lại máy tính của mình để áp dụng những thay đổi này. Nhưng bạn có thể áp dụng các thay đổi trong bashrc và hồ sơ bằng các lệnh sau:
$ source ~/.bashrc
$ source ~/.profile
Nhưng đối với / etc / môi trường, bạn không có lựa chọn nào khác ngoài khởi động lại (theo như tôi biết)
#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
y) sudo shutdown -r 0;;
n) echo "don't forget to restart your computer manually";;
esac
exit
Lưu các dòng này trong một shfile sau đó làm cho nó thực thi và chỉ cần chạy nó!
chmod -x insert_var.sh
, sau đó bash insert_var.sh
. Cảm ơn.
Trên các hệ thống Ubuntu, sử dụng các vị trí sau:
Các biến liên tục trên toàn hệ thống trong định dạng của JAVA_PATH=/usr/local/java
cửa hàng tại
/etc/environment
Các biến liên tục trên toàn hệ thống tham chiếu các biến như
export PATH="$JAVA_PATH:$PATH"
lưu trữ trong
/etc/.bashrc
Biến liên tục cụ thể của người dùng trong định dạng của PATH DEFAULT=/usr/bin:usr/local/bin
cửa hàng trong
~/.pam_environment
Để biết thêm chi tiết về # 2, hãy xem câu hỏi Hỏi Ubuntu này . LƯU Ý: # 3 là đề xuất Ubuntu nhưng có thể có mối lo ngại về bảo mật trong thế giới thực.
Một ví dụ cụ thể: Tôi đã cài đặt Java 7 và Java 6, tôi cần chạy một số bản dựng với 6, một số khác với 7. Vì vậy, tôi cần thay đổi linh hoạt JAVA_HOME
để maven chọn ra những gì tôi muốn cho mỗi bản dựng. Tôi đã làm như sau:
j6.sh
tập lệnh đã tạo chỉ đơn giản là xuất JAVA_HOME=...
đường dẫn đến cài đặt j6 ...j6.sh
trong thiết bị đầu cuối lệnh tương ứng đó. Theo mặc định, của tôi JAVA_HOME
được đặt thành J7.Hi vọng điêu nay co ich.
Nếu nó phù hợp với bất kỳ ai, đây là một số hướng dẫn ngắn gọn để thêm các biến môi trường vĩnh viễn.
vi ~/.bash_profile
Thêm các biến vào tệp:
export DISPLAY=:0
export JAVA_HOME=~/opt/openjdk11
Áp dụng ngay lập tức tất cả các thay đổi:
source ~/.bash_profile
Nguồn: https://www.serverlab.ca/tutorials/linux/ad dùng-linux / how-to-set-en môi-biến-in-linux /