Bagaimana cara mengatur variabel lingkungan?

90

Saya mencoba mengatur Apache Tomcat di pc saya, dan ia ingin saya mengatur variabel lingkungan untuk CATALINA_HOME. Adakah yang tahu bagaimana melakukan ini?

jumpnett
sumber

Jawaban:

100

Di bash, Anda dapat mengatur variabel seperti ini:

export CATALINA_HOME=/opt/catalina

kebanyakan cangkang lain mengikuti konvensi ini, tetapi tidak semua. Anda dapat mengaturnya secara permanen ~/.profileuntuk bash (dan seperti sebelumnya, shell lain memiliki lokasi lain)

Ressu
sumber
6
untuk variabel sesi-lebar, help.ubuntu.com merekomendasikan ~/.profilesebagai mungkin file terbaik untuk menempatkan penugasan variabel lingkungan, karena dijalankan secara otomatis oleh DisplayManager selama sesi desktop proses startup serta oleh shell login ketika satu login. dari konsol tekstual.
McDowell
Diperbarui jawabannya. Alasan mengapa saya menggunakan .bashrc bukan karena pada titik tertentu. Profil tidak bersumber secara otomatis. Tetapi jika itu bekerja sekarang, lebih baik menggunakannya.
Ressu
6
Pengaturan itu ~/.profiletidak berhasil untuk saya. Ini bekerja dengan baik ~/.bashrc.
jumpnett
Pengaturannya juga ~/.bash_profileberfungsi.
jumpnett
Ada juga file sistem di / etc. Ini berfungsi tetapi per pengguna.
Diingatdibuat dari
26

Variabel lingkungan seharusnya sudah berfungsi

Jika Anda menggunakan paket tomcat6 dari repositori Ubuntu, maka CATALINA_HOME dan variabel lingkungan lainnya sudah ditetapkan, dalam /etc/init.d/tomcat6skrip startup.

Jika Anda menginstal kucing jantan di luar pengelola paket (mudah-mudahan di / opt atau di tempat lain di luar sistem file yang dikelola), maka menjalankan tomcat TOMCAT/bin/startup.shharus menggunakan lokasi relatif untuk menentukan CATALINA_HOME.

Mengatur variabel Lingkungan

Jika karena alasan tertentu Anda masih perlu mengatur variabel lingkungan, Anda dapat membuka jendela terminal dan mengetik perintah:

export CATALINA_HOME=/path/to/the/root/folder/of/tomcat

Variabel lingkungan ini sekarang akan berfungsi dalam jendela terminal itu, tetapi jika Anda membuka jendela lain atau logout / login Anda kehilangan pengaturan itu.

Jadikan variabel lingkungan permanen

Untuk membuat pengaturan variabel lingkungan permanen, ada beberapa tempat Anda dapat menentukan pengaturan.

Untuk benar-benar yakin bahwa pengaturan sedang diambil, tambahkan pengaturan di atas ke salah satu skrip startup untuk kucing jantan:

yourtomcatfolder/bin/startup.sh

yourtomcatfolder/bin/catalina.sh

Catatan: startup.sh memanggil catalina.sh. Anda harus menambahkan pengaturan di awal salah satu file ini (setelah ada komentar awal)

Cara standar untuk variabel lingkungan global adalah dengan menambahkan entri /etc/environment(Anda tidak menggunakan perintah ekspor dalam file ini karena ini bukan skrip bash normal)

CATALINA_HOME=/path/to/the/root/folder/of/tomcat

Tidak direkomendasikan

Anda dapat mengatur variabel lingkungan di file konfigurasi bash (command line shell), tetapi ini tidak dianjurkan karena mereka tidak selalu diambil (mis. Jika Anda menjalankan server yang tidak Anda masuki untuk menjalankan kucing jantan): ~ / .bashrc | ~ / .profile | /etc.bash.bashrc | / etc / profile

jr0cket
sumber
5
Seharusnya bukan skrip startupatau catalinaskrip, melainkan skrip, setenv.shatau setenv.batskrip, yang membuatnya jika diperlukan: "Terlepas dari CATALINA_HOME dan CATALINA_BASE, semua variabel lingkungan dapat ditentukan dalam skrip" setenv ". Skrip ditempatkan baik ke dalam CATALINA_BASE / bin atau ke CATALINA_HOME direktori / bin dan dinamai setenv.bat (di Windows) atau setenv.sh (on * nix). File tersebut harus dapat dibaca. " ( Menjalankan Apache Tomcat 7.0 Servlet / JSP Container , Bagian 3.4)
Olathe
23

Untuk mengatur variabel lingkungan permanen di versi Ubuntu terbaru (dari 14,04 ke atas) tambahkan variabel ke /etc/environment. Untuk itu ikuti petunjuk di bawah ini,

Buka terminal dan jalankan

sudo -H gedit /etc/environment

berikan kata sandi Anda, kemudian pada file teks yang diminta

kemudian tambahkan variabel like

ANT_HOME="/opt/ANT/"

Contoh /etc/environmentdiberikan di bawah ini

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-oracle/"
AXIS2_HOME="/opt/axis2-1.7.4/"
ANT_HOME="/opt/apache-ant-1.9.7/"

jangan lupa untuk keluar dan masuk lagi untuk mengaktifkan variabel lingkungan.

Kasun Siyambalapitiya
sumber
6

Tempat terbaik untuk ini tergantung pada bagaimana dan di mana Anda telah menginstal Tomcat, aplikasi apa yang ingin Anda ambil pengaturan ini dan seberapa global Anda ingin ruang lingkup menjadi.

The dokumentasi Ubuntu pada Variabel Lingkungan membahas pro dan kontra dari berbagai pilihan.

McDowell
sumber
Apa yang Anda maksud ketika Anda mengatakan, "tempat terbaik untuk ini"?
jumpnett
@jumpnett - Maksud saya di mana membuat pengaturan tetap ada sehingga selalu tersedia untuk aplikasi tergantung padanya. Kecuali Anda senang mengetik pengaturan di setiap waktu atau ingin menulis skrip Anda sendiri.
McDowell
3
nano ~/.bashrc

Ini kemungkinan besar akan berisi cukup banyak data. Sebagian besar definisi di sini adalah untuk mengatur opsi bash, yang tidak terkait dengan variabel lingkungan. Anda dapat mengatur variabel lingkungan seperti yang Anda lakukan dari baris perintah:

export VARNAME=value

TAUTAN

Saya mengujinya di Ubuntu 16.04. Bagus sekali.

Sunny127
sumber
1

Setelah melalui Ubuntu Documentation on Environment Variables, saya menemukan solusi berikut:

##Save & run the following in a shell script,

export ENVIRON_VAR_NAME = Value
# any other initializations like
export PATH=$PWD:$PATH
bash

Baris terakhir membuat shell anak, yang mewarisi nilai-nilai Environment Variable dari shell induk (yang baru saja ditetapkan).

Ashish Sadhwani
sumber