Variabel saya adalah
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Bagaimana cara menyimpan variabel-variabel ini secara permanen?
Variabel saya adalah
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Bagaimana cara menyimpan variabel-variabel ini secara permanen?
Jawaban:
Anda dapat menambahkannya ke file .profileatau file profil shell login Anda (terletak di direktori home Anda).
Untuk mengubah variabel lingkungan "secara permanen" Anda harus mempertimbangkan setidaknya situasi ini:
/etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profiledalam urutan~/.bashrc$BASH_ENV$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.zprofile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
export LD_LIBRARY_PATH ORACLE_HOME
$EDITOR ~/.login
#add lines at the bottom of the file:
setenv LD_LIBRARY_PATH /usr/lib/oracle/11.2/client64/lib
setenv ORACLE_HOME /usr/lib/oracle/11.2/client64
Jika Anda ingin menjadikannya permanen untuk semua pengguna, Anda dapat mengedit file yang sesuai di bawah /etc/, yaitu /etc/profileuntuk shell mirip Bourne, /etc/csh.loginuntuk (t) csh, dan /etc/zsh/zprofiledan /etc/zsh/zshrcuntuk zsh.
Pilihan lain adalah menggunakan /etc/environment, yang pada sistem Linux dibaca oleh modul PAM pam_envdan hanya mendukung penugasan sederhana, bukan ekspansi shell-style. (Lihat panduan Debian tentang ini.)
File-file ini kemungkinan sudah mengandung beberapa tugas, jadi ikuti sintaksis yang Anda lihat sudah ada dalam file Anda.
Pastikan untuk memulai kembali shell dan masuk kembali ke pengguna, untuk menerapkan perubahan.
Jika Anda perlu menambahkan variabel lingkungan sistem lebar, sekarang ada /etc/profile.dfolder yang berisi skrip sh untuk menginisialisasi variabel.
Anda dapat menempatkan skrip sh Anda dengan semua variabel yang diekspor di sini.
Hati-hati meskipun ini tidak boleh digunakan sebagai cara standar untuk menambahkan variabel ke env di Debian.
.profiledi /etc/tapi saya tidak bagaimana mengatur variabel dalam .profilejelaskan
.profileada di direktori home Anda bukan/etc/
[Admin@localhost etc]$ cat ~/.profile cat: /home/Admin/.profile: No such file or directory [Admin@localhost etc]$
:wqadalah perintah untuk menulis file dan keluar di vi jangan lupa untuk mengetik escsebelumnya
crontabskrip. Tidak satu pun dari lokasi ini akan terlihat ketika crontabskrip sedang berjalan
Untuk melakukannya jika untuk semua pengguna / shell, tergantung pada distro Anda dapat menggunakan /etc/environmentatau /etc/profile. Membuat file baru di /etc/profile.dmungkin lebih disukai jika ada, karena akan lebih kecil kemungkinannya bertentangan dengan pembaruan yang dibuat oleh sistem pengemasan.
Di /etc/environment, variabel biasanya diatur dengan name=value, misalnya:
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Di /etc/profile, Anda harus menggunakan exportkarena ini skrip, misalnya:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
Hal yang sama berlaku untuk file di bawah /etc/profile.d, mungkin juga ada batasan penamaan yang harus dipenuhi agar file berfungsi. Pada Debian, file tersebut harus memiliki ekstensi .sh(walaupun tidak memerlukan bang line atau izin yang dapat dieksekusi karena bersumber). periksa dokumentasi distro Anda atau lihat /etc/profileskrip untuk melihat bagaimana file-file ini dimuat.
Perhatikan juga bahwa pengaturan LD_LIBRARY_PATHsecara permanen berpotensi bermasalah , termasuk menjadi risiko keamanan. Sebagai alternatif, saya akan menyarankan menemukan beberapa cara untuk menambahkan LD_LIBRARY_PATHawal baris perintah untuk setiap program yang membutuhkannya sebelum berjalan. Misalnya:
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib myprog
Salah satu cara untuk melakukannya adalah dengan menggunakan skrip wrapper untuk menjalankan program. Anda bisa memberikan ini nama yang sama dengan program Anda dan memasukkannya ke /usr/local/binatau di mana saja yang muncul sebelum lokasi program Anda PATH. Berikut ini contoh skrip (jangan lupa chmod +xskrip):
#!/bin/sh
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib /real/location/of/myprog "$@"
environmentfile saya , apa yang menyebabkan mereka memuat? Misalnya, setelah keluar dari vi editor (perubahan berhasil ditulis), saya berharap untuk menulis echo $MY_NEW_VARIABLEdan melihatnya mencetak - EDIT: Saya melihat mereka ada di sana jika saya meluncurkan shell perintah baru
/etc/environment, bahkan jika saya me- restart terminal bash atau mengetik source /etc/environment. Jadi, jika Anda mengalami masalah ketika variabel lingkungan tidak bertahan, coba reboot.
/etc/environmentbukan skrip, jadi tidak dapat diperoleh dari sumber. Itu dimuat pada waktu login (dan beberapa peristiwa sistem lainnya) oleh PAM, sehingga Anda dapat logout / login atau menjalankan sesi login baru di terminal dengan $ su <your username here>mengambil nilai-nilai baru dalam sesi yang terisolasi itu. Nilai-nilai akan hilang begitu Anda keluar, jadi mungkin lebih mudah untuk keluar / masuk sepenuhnya.
ketika Anda menginstal oracle, oracle meminta Anda menjalankan beberapa skrip sebelum mengklik ok. Script itu meletakkan pengaturan dummy di .bash_profiledirektori home pengguna oracle. Untuk melihat file, ls -alakan menampilkan semua file yang tersembunyi.
ketik nano bash_profileuntuk membuka file. Buat perubahan pada file untuk mencerminkan nama host Anda, dan nama samping yang sesuai. periksa pengaturan lain yang perlu modifikasi. tekan control x untuk menyimpan dan ketik y ketika ditanya apakah Anda ingin menyimpan. Tekan tombol kembali untuk menyimpan. Nyalakan ulang komputernya. Masuk sebagai pengguna oracle. mulai database dengan mengetik
sqlplus / as sysdba
startup
/usr/lib/oracle/11.2/client64/libfile baru di bawah/etc/ld.so.conf.d/path. Maka Anda tidak perlu mengatur LD_LIBRARY_PATH, lihat juga di sini .