У меня есть сервер Debian Lenny, и я бы хотел www-data
пользователь иметь /usr/local/zend/bin
в своем PATH, поэтому он может выполнять скрипт в cron как www-data
.
Как мне добавить /usr/local/zend/bin
в PATH, поэтому www-data
может исполнять файлы в /usr/local/zend/bin
?
Первое место, где установлен PATH, это /etc/login.defs
. Есть настройка для root и настройка для всех остальных.
Еще одно место, где вы можете определить переменные среды, - это /etc/environment
. Эти настройки будут применяться ко всем (там нельзя писать произвольный шелл-код).
Третье место, где вы можете определить переменные среды, - это /etc/profile
. Там вы можете написать произвольный шелл-код. Если вам нужна настройка для конкретного пользователя, существует соответствующий файл для каждого пользователя. ~www-data/.profile
. Но это применимо только к интерактивному входу в консоль; в частности, это не будет применяться к заданиям cron, если они явно не исходят /etc/profile
.
Если тебе нужно только это PATH
настройки в пользовательском crontab, вы можете записать его в начале crontab. Обратите внимание, что вам нужен полный список (PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/zend/bin
), вы не можете использовать подстановку переменных (PATH=$PATH:/usr/local/zend/bin
там работать не будет).
Чтобы установить путь для всех пользователей, кроме root, отредактируйте /etc/profile
или /etc/enviroment
. Для root или отдельного пользователя отредактируйте свои .bashrc
или .bash_profile
в своих домашних каталогах соответственно. Добавить PATH=$PATH:/new/location/
.
Чтобы просто установить var для всех пользователей, не перегружая profile
, вы можете добавить свой небольшой скрипт в /etc/profile.d
такой каталог:
echo 'PATH="/usr/local/zend/bin:$PATH"' > /etc/profile.d/zend_path.sh
Затем снова войдите.
нано / и т.д. / профиль
Добавьте эти строки в конец файла:
экспорт JAVA_HOME = / opt / jdk-12.0.1
экспорт MAVEN_HOME = / opt / apache-maven-3.6.1
экспорт M2_HOME = / opt / apache-maven-3.6.1
экспорт M2 = / opt / apache-maven-3.6.1 / bin
экспорт PATH = $ JAVA_HOME / bin: $ M2: $ PATH
Сохраните файл. Перезагрузите или используйте следующую команду:
источник / etc / profile
Проверьте свои настройки:
эхо $ JAVA_HOME
javac --version