Questions tagged «environment-variables»

一组动态变量,可以影响正在运行的进程的行为和对资源的访问。

4
使用ZSH时,如何在/etc/profile.d中设置PATH?
我正在zsh用作外壳程序,并且正在尝试配置我的环境。 我通常$JAVA_HOME通过创建一个文件来定义变量: /etc/profile.d/java.sh 具有以下内容 export JAVA_HOME=/path/to/jdk export PATH=$JAVA_HOME/bin:$PATH 然后我注销并重新登录,一切正常,但是由于某种原因PATH未设置变量。它可以识别JAVA_HOME,但不能识别新的PATH终端,请参见以下终端片段: ~ echo $JAVA_HOME /usr/lib/jvm/jdk1.8.0_05 ~ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 我通过尝试从jvm运行命令来确认 ~ java -version zsh: command not found: java 在PATH不包括$JAVA_HOME因为它应该。还有什么我应该检查的吗? 我检查了是否可以跑步: source /etc/profile.d/java.sh 都可以正确运行,并且可以按照我的变量进行设置,但是脚本不应该/etc/profile.d自动运行吗?

1
DEBIAN_FRONTEND环境变量
我潜在的托管服务提供商建议在终端中运行命令,以使基于KVM的服务器的OS映像最小化。由于它们不需要KVM模板,因此我想可以使用相同的命令删除不需要的软件包。 该命令以开头DEBIAN_FRONTEND=noninteractive,然后apt-get remove按以下方式调用: DEBIAN_FRONTEND=noninteractive apt-get remove --purge -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" package-1 package-2 ... package-n; apt-get -y autoremove; apt-get clean all 这是我第一次遇到DEBIAN_FRONTEND环境变量,到目前为止,我找不到有用的信息。因此,我想知道将其设置为noninteractive做什么,以及是否建议这样做,因为我认为值(noninteractive)会持续存在。

1
bash脚本中无法访问环境变量
我遇到一个奇怪的问题。我放入了一些env变量.bashrc,它可以正常工作: echo $HADOOP_HOME /home/me/dist/hadoop 但是执行bash脚本时无法访问env变量。假设我/tmp/sample.sh使用以下内容创建: #! /bin/bash echo $HADOOP_HOME 当我在脚本上运行时,回显一个空行: /tmp/sample.sh ‌

1
如何指定包含=的Environment systemd指令?
我想指定一个Environment systemd包含的指令=,例如 Environment=CATALINA_OPTS=-Dappserver.home=/var/lib/archiva/apache-tomcat-current -Dappserver.base=/var/lib/archiva/apache-tomcat-current 并得到错误 [/lib/systemd/system/archiva.service:10] Invalid environment assignment, ignoring: CATALINA_OPTS=-Dappserver.home\=/var/lib/archiva/apache 在journalctl -xe。我试图用报价"和'和逃跑=用\都没有成功。这似乎没有记录。

6
为root设置TeX Live路径
这个问题是从TeX-LaTeX Stack Exchange 迁移而来的,因为可以在Ask Ubuntu上回答。 迁移 8年前。 我已经安装了TeX Live 2011 Vanilla,但在设置root的TeX Live路径时遇到麻烦(在Ubuntu 11.10中)。 问题是当我跑步时sudo tlmgr我得到: sudo: tlmgr: command not found 要修复非root用户的路径,只需添加 PATH=/usr/local/texlive/2011/bin/x86_64-linux:$PATH 到/etc/profile。 我尝试将同一行添加到/root/.bashrc,也尝试将其添加为/etc/profile.d/zzz-texlive.sh类似于Herbert建议的/tex/26624/tlmgr-inaccessible/26626#26626, 但这无济于事。


3
PYTHONPATH环境变量
我在我的~/.profile: export PYTHONPATH=/home/dev/python-files 在python-files目录中,我从git-hub克隆了一些项目(烧瓶,curveship和py-vgdl)。 每当我尝试启动这些项目中的任何示例时,都会收到类似于以下内容的错误: $ python ~/python-files/py-vgdl/examples/gridphysics/frogs.py Traceback (most recent call last): File "/home/dev/python-files/py-vgdl/examples/gridphysics/frogs.py", line 67, in <module> from vgdl.core import VGDLParser ImportError: No module named vgdl.core 在我看来,我不应该收到此错误,因为我已经PYTHONPATH设置了环境变量? 运行python交互式解释器: >>> import os >>> os.environ["PYTHONPATH"] '/home/dev/python-files'

2
在/ etc / environment中引用环境变量?
我最近发现/etc/environment,这似乎是比脚本更简单的设置简单环境变量的方法,但是我想知道是否有一种方法可以在/ etc / environment文件中向后引用环境变量。 也就是说,我有这个: JAVA_HOME="/tools/java" GRAILS_HOME="/tools/grails" GROOVY_HOME="/tools/groovy" GRADLE_HOME="/tools/gradle" PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" $JAVA_HOME/bin但是,如果尝试添加到PATH定义中,则会得到$ JAVA_HOME / bin,而不是插值变量。为了解决这个问题,我在profile.d中创建environment.sh以将/bin条目添加到路径中,但这似乎草率且杂乱无章。 有没有办法在/ etc / environment中反向引用环境变量?

4
为什么对路径中的目录使用'-execdir'操作不安全?
为什么不使用-execdirfind动作组合-exec却不安全呢? 当我运行以下命令时,我收到以下提示消息: /path/to/currentDir/$ find . -type f -name 'partOfFileNames*' -execdir rm -- {} + find: The current directory is included in the PATH environment variable, which is insecure in combination with the -execdir action of find. Please remove the current directory from your $PATH (that is, remove "." or leading …


3
从命令行配置Firefox使用代理
我正在寻找一种告诉Firefox在Ubuntu Ludid(10.04.1 LTS)中使用代理的方法。 我正在几台相同的机器上半自动安装Ubuntu。为此,我使用了一个脚本,该脚本除其他外还设置系统范围的代理设置: echo "export http_proxy=http://myproxy:3128/" > /etc/profile.d/proxy.sh echo "export HTTP_PROXY=http://myproxy:3128/" >> /etc/profile.d/proxy.sh chmod a+x /etc/profile.d/proxy.sh 我可以确认在检入shell时正确设置了变量。大多数程序都遵守此设置并使用我的代理。但是,Firefox没有。但是,当我打开其网络连接设置对话框时,它已预设为对代理使用“使用系统设置”。 Firefox在这里有什么期望?变量名不同吗?我可以在FF的prefs.js中设置一些内容吗?

2
apache2为什么不尊重我的envvars文件?
我的envvar文件中包含以下几行: export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data 我的apache2.conf中包含以下几行: # These need to be set in /etc/apache2/envvars User ${APACHE_RUN_USER} Group ${APACHE_RUN_GROUP} 但是当我跑步时apache2 -M我得到了: apache2: bad user name ${APACHE_RUN_USER} 临时解决方法是将www-dataapache2.conf文件硬编码到其中。有一些猜测在这里,这是因为一些配置脚本并没有取代ENV在我的apache2.conf文件正确瓦尔。无论如何获取apache2来查询我的envvars文件? 作为另一个数据点,该站点似乎表明envvar是在构建时生成的,但是在运行时由apache2ctl读取,这表明该文件不仅仅是构建过程中遗留的便便。

4
为每个人设置全局环境变量
如果我在中设置变量/etc/environment,则该变量似乎仅适用于中的管理员sudo su。 如何获得适用于所有人的变量?特别是当他们在航站楼时?中的设置/etc/enviroment不适用于bash吗?



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.