NỘI DUNG

30/04/2024
Lượt xem

Cách đặt các biến môi trường (Environment Variable) trong Linux

30/04/2024
[vnx_reading_time rule="220"]phút đọc[/vnx_reading_time]
Lượt xem
Ngày đăng:30/04/2024
Cập nhật cuối:21/08/2024
Lượt xem

Đánh giá

5/5 - (115 bình chọn)

Biến môi trường (environment variable Linux) thường được dùng trong shell Bash để cấu hình các dịch vụ và ứng dụng web. Bài viết này Vietnix sẽ hướng dẫn cách đặt các biến môi trường trong Linux đơn giản nhất.

Environment variable trong Linux là gì?

Biến môi trường trong Linux được hiểu là các cặp giá trị được sử dụng với mục đích lưu trữ thông tin cấu hình và cài đặt hệ thống có thể giúp người dùng và chương trình dễ dàng truy cập và sử dụng thông tin.

Biến môi trường trong Linux
Biến môi trường trong Linux

Environment varible được quản lý bởi hệ điều hành Linux, được truy cập và sửa đổi thông tin qua các dòng lệnh hoặc tập tin cấu hình.

Bạn đọc có thể tham khảo qua một số bài viết liên quan về chủ đề Linux mà Vietnix đã tổng hợp:

Cách đặt environment variable Linux

Để đặt một biến môi trường, bạn có thể dùng lệnh export trong Linux kèm theo tên biến để truy cập trong script và cấu hình của shell, đồng thời gán giá trị cho biến đó. Cú pháp sẽ có dạng như sau:

export NAME=VALUE

Ví dụ bạn cần đặt biến môi trường cho home directory của bản cài đặt OpenJDK11 thì có thể dùng lệnh sau:

export JAVA_HOME=/opt/openjdk11

Để xuất giá trị của biến môi trường từ shell, bạn dùng lệnh echo thêm dấu $ vào trước tên biến.

echo $JAVA_HOME

Nếu biến không có giá trị nào thì màn hình sẽ hiển thị một dòng trống.

Bạn đọc có tham qua bài viết Linux Shell và Shell Script để tìm hiểu rõ hơn bạn nhé.

Cách hủy đặt biến môi trường trong Linux

Cách hủy biến môi trường rất đơn giản, chỉ cần dùng lệnh unset kèm theo tên biến cần hủy:

unset VARIABLE_NAME

Giả sử cần hủy đặt biến JAVA_HOME vừa tạo ở trên:

unset JAVA_HOME

Cách hiển thị danh sách tất cả environment variable Linux

Để liệt kê danh sách tất cả biến môi trường hiện có, bạn dùng lệnh set mà không thèm theo tham số nào:

set

Output sẽ có dạng như sau:

BASH=/bin/bash
BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extglob:extquote:force_fignore:globasciiranges:histappend:interactive_comments:login_shell:progcomp:promptvars:sourcepath
 BASH_ALIASES=()
 BASH_ARGC=([0]="0")
 BASH_ARGV=()
 BASH_CMDS=()
 BASH_COMPLETION_VERSINFO=([0]="2" [1]="8")
 BASH_LINENO=()
 BASH_SOURCE=()
 BASH_VERSINFO=([0]="5" [1]="0" [2]="3" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
 BASH_VERSION='5.0.3(1)-release'
 COLUMNS=208
 DIRSTACK=()
 EUID=1000
 GROUPS=()
 HISTCONTROL=ignoreboth
 HISTFILE=/home/ubuntu/.bash_history
 HISTFILESIZE=2000
 HISTSIZE=1000
 HOME=/home/ubuntu
 HOSTNAME=ubuntu1904
 HOSTTYPE=x86_64
 IFS=$' \t\n'
 LANG=en_US.UTF-8
 LESSCLOSE='/usr/bin/lesspipe %s %s'
 LESSOPEN='| /usr/bin/lesspipe %s'
 LINES=54

Cách đặt biến môi trường cố định cho một user

Khi các biến môi trường được đặt từ shell bằng lệnh export, các biến này sẽ mất khi phiên kết thúc. Vậy nếu bạn cần đặt biến này cố định cho một môi trường của user nhất định thì cần phải làm như thế nào? Trong trường hợp này bạn chỉ cần export biến này từ script của profile người dùng theo các bước dưới đây:

1. Trước tiên, mở profile của user trong một trình soạn thảo bất kỳ:

vi ~/.bash_profile

2. Thêm lệnh export cho mọi biến môi trường cần đặt cố định:

export JAVA_HOME=/opt/openjdk11

3. Cuối cùng là lưu lại các thay đổi để hoàn tất.

Tuy nhiên, việc thêm biến môi trường vào bash profile của một user sẽ chưa export biến này. Các biến môi trường có thể được tự động export trong lần đăng nhập tới, còn nếu muốn export ngay lập tức thì bạn có thể dùng lệnh source như sau:

source ~/.bash_profile

Cách xuất biến môi trường trong Linux

Export là một lệnh shell có sẵn cho Bash, dùng để xuất một biến môi trường để các tiến trình con có thể kế thừa. Để export một biến môi trường, bạn có thể dùng lệnh export khi đặt biến như sau:

export MYVAR="my variable value"

Bên cạnh đó, bạn cũng có thể xem danh sách các biến môi trường đã được export bằng lệnh export:

export

# output
SHELL=/bin/zsh
SHLVL=1
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.1pB5Pry8Id/Listeners
TERM=xterm-256color
TERM_PROGRAM=vscode
TERM_PROGRAM_VERSION=1.48.2

Để xem các biến đã được export trong shell hiện tại, bạn thêm flag -p vào lệnh:

export -p

Đặt biến môi trường toàn cục cho mọi user

Một biến vĩnh viễn là biến vẫn tồn tại sau khi reboot hệ thống, có thể được tạo bằng cách thêm vào profile mặc định. Profile này được load bởi mọi user trên hệ thống, trong đó có cả các tài khoản dịch vụ.

Mọi cài đặt profile toàn cục đều được lưu trong thư mục /etc/profile. File này có thể được chỉnh sửa nhưng bạn nên lưu trữ các biến môi trường toàn cục trong thư mục /etc/profile.d – nơi chứa danh sách các file dùng để đặt biến môi trường cho toàn bộ hệ thống.

1. Tạo một file mới trong /etc/profile.d để lưu trữ các biến môi trường toàn cục, giả sử bạn cần tạo một biến cho HTTP_PROXY:

sudo touch /etc/profile.d/http_proxy.sh

2. Tiếp theo, mở profile mặc định trong một trình soạn thảo bất kỳ:

sudo vi /etc/profile.d/http_proxy.sh

3. Bây giờ tên các dòng mới để export biến môi trường trong Linux:

export HTTP_PROXY=http://my.proxy:8080
export HTTPS_PROXY=https://my.proxy:8080
export NO_PROXY=localhost,::1,.example.com

Sau đó lưu lại thay đổi rồi thoát khỏi trình soạn thảo.

Lời kết

Bài viết này đã giới thiệu cách đặt và hướng dẫn một số thao tác cơ bản với environment variable Linux (biến môi trường trong Linux). Các lệnh trong bài viết có thể được áp dụng cho mọi bản phân phối Linux. Nếu có bất kỳ thắc mắc nào thì hãy để lại ở phần comment bên dưới để được hỗ trợ nhanh nhất nhé!

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận
khuyến mãi tháng 4
Khi mua Hosting/VPS
16/04/2025 - 16/05/2025

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

PHẦN CỨNG MẠNH MẼ

HỖ TRỢ 24/7

ĐĂNG KÝ NGAY

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Black Friday Hosting & VPS

Chương trình bắt đầu sau

Giảm giá 40% hosting VPS

50 coupon mỗi ngày

Gia hạn giá không đổi

NHẬN DEAL NGAY

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích