Мои переменные
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Как сохранить эти переменные навсегда?
Мои переменные
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64
Как сохранить эти переменные навсегда?
Ответы:
Вы можете добавить его в файл .profileили файл профиля вашей оболочки входа (расположенный в вашем домашнем каталоге).
Чтобы изменить переменную среды «навсегда», вам необходимо рассмотреть как минимум следующие ситуации:
/etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profileв порядке~/.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
Если вы хотите сделать его постоянным для всех пользователей, вы можете отредактировать соответствующие файлы /etc/, например, /etc/profileдля Bourne-подобных оболочек, /etc/csh.loginдля (t) csh и /etc/zsh/zprofileи /etc/zsh/zshrcдля zsh.
Другим вариантом является использование /etc/environment, которое в системах Linux читается модулем PAM pam_envи поддерживает только простые назначения, а не расширения в стиле оболочки. (См . Руководство Debian по этому вопросу.)
Эти файлы, вероятно, уже содержат некоторые назначения, поэтому следуйте синтаксису, который вы уже видите в вашем файле.
Обязательно перезапустите оболочку и перезапустите пользователя, чтобы применить изменения.
Если вам нужно добавить общесистемную переменную среды, теперь есть /etc/profile.dпапка, содержащая скрипт sh для инициализации переменной.
Вы можете разместить свой скрипт sh со всеми экспортируемыми вами переменными здесь.
Будьте осторожны, хотя это не должно использоваться в качестве стандартного способа добавления переменной в env в Debian.
.profileв /etc/но я не как установить переменные в этом .profileскажите , пожалуйста
.profileнаходится в вашем домашнем каталоге нет/etc/
[Admin@localhost etc]$ cat ~/.profile cat: /home/Admin/.profile: No such file or directory [Admin@localhost etc]$
:wqэто команда для записи файла и выхода из vi, не забудьте набрать escраньше
crontabскриптах. Ни одно из этих мест не будет найдено при crontabзапуске скрипта.
Делать, если для всех пользователей / оболочек, в зависимости от дистрибутива вы можете использовать /etc/environmentили /etc/profile. Создание нового файла в /etc/profile.dможет быть предпочтительнее, если он существует, так как с меньшей вероятностью будет конфликтовать с обновлениями, сделанными системой упаковки.
В /etc/environmentпеременные обычно устанавливаются с помощью name=value, например:
ORACLE_HOME=/usr/lib/oracle/11.2/client64
В /etc/profile, вы должны использовать, exportтак как это скрипт, например:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
То же самое относится и к файлу /etc/profile.d, но также могут быть ограничения именования, которые должны быть соблюдены, чтобы файл работал. В Debian файл должен иметь расширение .sh(хотя он не нуждается в строчке bang или правах на исполняемый файл, поскольку он получен). проверьте документацию к дистрибутиву или посмотрите /etc/profileскрипт, чтобы увидеть, как эти файлы загружаются.
Обратите внимание также на то, что установка на LD_LIBRARY_PATHпостоянной основе потенциально проблематична , включая угрозу безопасности. В качестве альтернативы, я бы предложил найти какой-нибудь способ добавить LD_LIBRARY_PATHк началу командной строки перед каждой программой, которая в ней нуждается, перед запуском. Например:
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib myprog
Один из способов сделать это - использовать скрипт-обертку для запуска программы. Вы можете присвоить это имя тому же имени, что и ваша программа, и вставить его в /usr/local/binлюбое место, где оно находится перед местоположением вашей программы PATH. Вот пример сценария (не забудьте chmod +xсценарий):
#!/bin/sh
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib /real/location/of/myprog "$@"
environmentфайл, что заставляет их загружаться? Например, после выхода из редактора vi (изменения записаны успешно), я ожидаю написать echo $MY_NEW_VARIABLEи посмотреть, как он распечатывается - РЕДАКТИРОВАТЬ: я вижу, что они там, если я запустил новую командную оболочку
/etc/environment, даже если я перезапустил терминал Bash или набрал source /etc/environment. Поэтому, если у вас возникают проблемы, когда переменная окружения не сохраняется, попробуйте перезагрузить компьютер.
/etc/environmentэто не сценарий, поэтому его нельзя получить. Он загружается во время входа (и нескольких других системных событий) PAM, поэтому вы можете либо выйти из системы, либо войти в систему, либо запустить новый сеанс входа в систему в терминале, $ su <your username here>чтобы получить новые значения в этом изолированном сеансе. Значения исчезнут после вашего выхода, так что, вероятно, менее подвержен ошибкам просто полный выход из системы / вход в систему.
когда вы устанавливаете oracle, oracle попросил вас запустить несколько скриптов, прежде чем нажимать ok. Этот скрипт поместил фиктивную настройку в .bash_profileдомашнюю директорию пользователя oracle. Чтобы увидеть файл, ls -alпокажет все скрытые файлы.
введите, nano bash_profileчтобы открыть файл. Внесите изменения в файл, чтобы отразить ваше имя хоста и соответствующее имя sid. проверьте любые другие настройки, которые необходимо изменить. нажмите control x для сохранения и введите y, когда вас спросят, хотите ли вы сохранить. Нажмите клавишу возврата, чтобы сохранить. Перезагрузите компьютер. Регистрация как пользователь оракула. запустить базу данных, набрав
sqlplus / as sysdba
startup
/usr/lib/oracle/11.2/client64/libновый файл под/etc/ld.so.conf.d/путем. Тогда вам не нужно устанавливать LD_LIBRARY_PATH, см. Также здесь .