Categories: UbuntuUbuntu Feed

Setting Up Environment Variables on Ubuntu

An environment variable contains a value, that is used to change the behaviors of the processes at run time. Similar to the other operating systems, we can also set the environment variables on a Ubuntu system.

You can set the environment variables in 3 ways:

  1. Using the export command
  2. Using /etc/environment file
  3. Adding shell script under /etc/profile.d/ directory

Now we will discuss the above methods to set environment variables on Ubuntu systems one by one.

1. Using the export command

You can use the export command on the terminal to set the environment variables temporarily. That variable will be accessible on the same terminal only. Once you close the terminal the variable will be destroyed.

Sponsored

To set the environment variable, run:

export MY_ENV=value 

To print the MY_ENV environment variable, type:

echo $MY_ENV

2. Using /etc/enviroment file

The /etc/environment is a system-wide configuration file used for setting the environment variables. It is not a shell script, it consists of the assignment expressions, that set the environment variables one per line.

sudo vim /etc/environment
/etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 MY_HOME="/home/tecadmin"

You can set multiple environment variables in this file. Each environment variable must be in a separate line.

During the system reboot, the environment variable written in this file will automatically be assigned and accessible system-wide.

Sponsored

3. Using /etc/profile.d/*.sh files

You can also create a shell script under the /etc/profile.d directory. During the user login /etc/profile script is executed. Tha also executed all the shell scripts (files with .sh extension) under /etc/profile.d directory.

Let’s create a shell script /etc/profile.d/custom-env.sh and set the environment variables using export command.

sudo vim /etc/profile.d/custom-env.sh 

Set the environment variables like:

/etc/profile.d/custom-env.sh
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 export JRE_HOME=/usr/lib/jvm/java-17-openjdk-amd64 export MY_ENV="value1"

The next time the user logged in will automatically set the environment variables. You can print the value of the environment variable using the echo command.

echo $MY_ENV 

value1
Print environment variable value

Conclusion

This tutorial provides you with the details of setting up the environment variables on the Ubuntu system. These environment variables are very helpful to change the run time behaviors of processes.

I hope this tutorial helped you with the basic understanding of creating environment variables on Ubuntu and Debian systems. Please provide your valuable suggestions in the comments and do share this article with the social platform.

The post Setting Up Environment Variables on Ubuntu appeared first on TecAdmin.

Ubuntu Server Admin

Recent Posts

CRA compliance: Things IoT manufacturers can no longer do under the CRA (and what to do instead)

I’ve written about the EU Cyber Resilience Act (CRA) on our Canonical blog a few…

6 hours ago

IBM LinuxONE 5 and Ubuntu Server, a great combination from day one

Today, IBM announced the launch of their latest server: the new IBM LinuxONE Emperor 5.…

1 day ago

Ubuntu Weekly Newsletter Issue 890

Welcome to the Ubuntu Weekly Newsletter, Issue 890 for the week of April 27 –…

2 days ago

Ubuntu IoT Day in Singapore – Unlock compliant and scalable innovation in edge AI

Singapore | May 27, 2025 | Full-day event How do you build robust, performant edge…

2 days ago

Kolla Ansible OpenStack Installation (Ubuntu 24.04)

Kolla Ansible provides production-ready containers (here, Docker) and deployment tools for operating OpenStack clouds. This…

5 days ago

Canonical announces first Ubuntu Desktop image for Qualcomm Dragonwing™ Platform with Ubuntu 24.04

This public beta enables the full Ubuntu Desktop experience on the Qualcomm Dragonwing™ QCS6490 and…

6 days ago