Skip to main content
  1. Posts/

Environment Variable Hilang Saat Menggunakan sudo

·1 min·
linux linux
Table of Contents

Ketika menjalankan aplikasi atau mengeksekusi perintah di Linux, terkadang aplikasi tersebut memerlukan environment variable milik user agar dapat berjalan dengan normal.

Namun, masalah sering muncul ketika perintah tersebut dijalankan menggunakan sudo. Secara default, sudo akan menggunakan environment yang berbeda sehingga beberapa environment variable milik user tidak ikut terbawa. Hal ini dapat menyebabkan aplikasi mengalami error.

Pada tutorial ini akan dijelaskan cara mempertahankan environment variable milik user agar tetap tersedia saat menggunakan sudo.

Cara 1: Menggunakan -E atau --preserve-env
#

Opsi -E pada sudo digunakan untuk mempertahankan environment variable yang ada pada user saat ini.

export HTTP_PROXY=foof
sudo -E bash -c 'echo $HTTP_PROXY'

Output yang dihasilkan:

foof

Artinya, nilai HTTP_PROXY dari user tetap terbawa saat menjalankan perintah dengan sudo.

Cara 2: Menambahkan Environment Variable ke sudoers
#

Cara lain adalah dengan menambahkan environment variable yang ingin dipertahankan ke dalam konfigurasi sudoers.

Edit konfigurasi menggunakan perintah:

sudo visudo

Kemudian tambahkan baris berikut:

Defaults  env_keep += "http_proxy"
Defaults  env_keep += "https_proxy"
Defaults  env_keep += "HTTP_PROXY"
Defaults  env_keep += "HTTPS_PROXY"

Dengan konfigurasi ini, environment variable tersebut akan tetap tersedia ketika menjalankan perintah menggunakan sudo.

Related

Modifying Resource Limits for Active Processes in Linux
·3 mins
linux linux
StorCLI Command Cheat Sheet
·3 mins
linux linux
Error libcrypto Saat SSH
·2 mins
linux linux
Cara Menampilkan Timestamp di History Linux
·1 min
linux linux
Mengubah Tanggal Modifikasi File di Linux
·1 min
linux linux
Create Simple Systemd Service in Linux
·2 mins
linux linux